Subject: Re: [TI994A] New version Dm2k, Du2k, Cf2k

From: [email-masked]
Date: Fri, 25 Dec 2009 05:35:01 -0600 (CST)

Merry Christmas indeed, thank you for your hard work, Fred.  :)

Dec 24, 2009 10:01:27 AM, [email-masked] wrote:

Hi all,

There are new version available of:

Dm2k V2.4 here http://members.ziggo.nl/fgkaal/Software/sw_dm2k.html#dm2k

Du2k V2.0 here http://members.ziggo.nl/fgkaal/Software/sw_du2k.html#du2k

Cf2k V2.0 here http://members.ziggo.nl/fgkaal/Software/sw_cf2k.html#cf2k

All three programs now first initialize the keyboard to mode 5. This
is specially don for the John Guidry 64/128K card project.

I have spent some time on the program loader in Dm2k. There was a part in upper and lower ram, so if one of these parts got overwritten the system crashed.

Now the loader first loads the first part of the program to execute in VDP ram in the normal way. This way the system's DSRLNK figured out what device to use in the case of executing a program from DSK1. WDS1.DSK1 or IDE1.DSK1. The CRU address of this device is left at >83D0. This CRU address is used to find the entry point of the device name in the DSR (DSK1..DSK3, WDS1.., SCS1.., IDE1..) so that this address can be used directly to load the rest of the program and bypassing the DSRLNK function.

Before the loaded part of the program is moved to CPU ram it is first checked if it does not overwrite the loader. If it does, this part is saved for last and all other parts are loaded first.

At the end of the load session, the overlapping part of the program is loaded again, a small piece of code is copied to scratch pad to copy this part from VDP to CPU and the program is executed.

So ... now Dm2k can load itself, and because it looks to work so well this code is also added to Cf2k so that Cf2k can also load itself and can also load Dm2k wich in his turn can load Cf2k so that ...

anyway ... enjoy

and have a Merry Christmas and a happy newyear!

Fred ;-)

------------------------------------

Yahoo! Groups Links