Jump to content

Photo

DOSVEC of SpartaDOS X cartridge


1 reply to this topic

#1 Stefan Haubenthal OFFLINE  

Stefan Haubenthal

    Combat Commando

  • 1 posts
  • Location:Gelsenkirchen, Germany

Posted Sat Feb 11, 2012 11:33 AM

Hi!
Does any DOS have a DOSVEC>$E000?
How do you distinguish between a DOS and a CAS boot?

Thanks in advance,
Stefan

#2 Rybags OFFLINE  

Rybags

    Quadrunner

  • 12,163 posts
  • Location:Australia

Posted Sat Feb 11, 2012 11:53 AM

The Boot? flag is location 9. Bit 0 = disk, bit 1 = tape. It's valid for both to be set. Bit 0 set means a disk has (probably) booted, but not necessarily that a Dos has loaded.
There's no way really to know for sure a Dos is resident, although scanning the handler table at $31A and finding a "D" device handler would normally mean a Dos is present.

Casini vector is (2,3) Diskini vector is ($c,$d). Purpose of these is just initialization when the user hits reset and when the boot process finishes.

Dosvec default value on XL just goes to Self-Test. There's no valid reason with a Dos loaded for it to have a value >= $C000 unless you have some sort of custom OS with inbuild Dos functions.

For a cart based DOS e.g. SDX - it should point to somewhere in low RAM area. DOS cartridge is normally swapped out and needs some code resident in RAM to perform such functions as switching the cartridge back on.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users