Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!mcsun!inria!mirsa!modja.inria.fr!colas From: colas@modja.inria.fr (Colas Nahaboo) Newsgroups: comp.sys.atari.st Subject: How to know we are in TOS 1.0? Message-ID: <452@mirsa.inria.fr> Date: 18 Dec 89 17:08:40 GMT Sender: news@mirsa.inria.fr Reply-To: colas@modja.inria.fr (Colas Nahaboo) Organization: INRIA Sophia Antipolis Lines: 25 My question is: what is the LEGAL way to know I am running on an ST with TOS 1.0 roms from a C program? The only legal way I knew of was Sversion, but it returns 0,19 on both TOS 1.0 & TOS 1.2 All I have seen is de-referencing the pointer unsigned char *ROMS_YEAR = 0x00fc0018L + 3L; which gives you the year of the TOS (on US and French tos it is 0x86), but this is undocumented, and will surely break on the STe, since the Roms are not in the same place! PS: I want to know this for formatting a disk: if it is TOS 1.0, use the TWISTER assembly code, if not, use the Flopfmt primitive with -1 interleave. PPS: this is for my PD copier, flip, which detects and kills viruses when copying disks, which is I found the best time to catch them!!! I never get infected anymore. (moreover it searches for calls to Flopwrt in the boot sector, catching virtually ANY new boot sector virus to come) PPPS: and do not tell me to pay to become a registred developper, all my atari programming is public domain! :-) Colas NAHABOO BULL Research FRANCE -- Koala Project (GWM X11 Window Manager) Internet: colas@mirsa.inria.fr