psurge@cs.utexas.edu (Troy Carpenter) (01/07/91)
Ok, I have had many people tell me that the image of the Command arguments is in Basepage + 128. Could someone please tell me what address is the pointer to Basepage held in? I have TOS 1.0, and cannot find anything about Basepage in the ST Internals. Thanks a bunch. By the way, does anyone know of a good memory map of the ST? Something like "Mapping the Atari" for the 8 bits, which was a good memory map of those computers...anything like that for the ST? Thanks.. Troy Carpenter Department of Computer Sciences THE University of Texas, Austin psurge@cs.utexas.edu "You're so open minded that your brain leaked out" - Steve Taylor *>>>>>>>>>>>>>>>>>> The best thing in life costs exactly that <<<<<<<<<<<<<<<*
steve@thelake.mn.org (Steve Yelvington) (01/07/91)
[psurge@cs.utexas.edu writes ... ] > Ok, I have had many people tell me that the image of the Command arguments is > in Basepage + 128. Could someone please tell me what address is the pointer > to Basepage held in? I have TOS 1.0, and cannot find anything about Basepage in > the ST Internals. Thanks a bunch. > > By the way, does anyone know of a good memory map of the ST? Something like > "Mapping the Atari" for the 8 bits, which was a good memory map of those > computers...anything like that for the ST? What sort of compiler are you using? The basepage stuff and parsing the command line should be managed by the standard program startup code. If you want to see how it's done, the dLibs sources are free. If you're using Pascal and can't talk yourself into C and asm, try to track down the Tackle Box ST package. (I can't help you; I sold my copy many months ago.) As for mapping the ST's memory -- in general, it's bad magic to think 8-bit thoughts about the ST. There are good reasons for restricting user-mode access to system variables. Besides the fact that you may wound innocent bystanders, you may produce a program that breaks on later versions of TOS and newer members of the ST family. If you want to muck around in the system, use the documented system calls. For the few cases in which you need to examine or replace system variables, 0x400 through 0x4FE are documented in the Mark Williams C manual and in Bantam's ``Atari ST Applications Programming.'' I think ``Internals'' documents device addresses, although you should slap yourself for even thinking about it .... :-) ---- Steve Yelvington / P. O. Box 38 / Marine on St. Croix, MN 55047 USA INTERNET: steve@thelake.mn.org UUCP: plains!umn-cs!thelake!steve
psurge@cs.utexas.edu (Troy Carpenter) (01/07/91)
This is to all who have helped me about finding out about Basepage, but I have the solution already. I found in my Modula 2 Library a procedure that takes an Integer and returns the address of that argument in the command line. (minus one, since the first argument is #0). All I did is create a pointer to a string and then used the pointer as the address parameter in the call. For those curious persons, this is with ana-systems Modula 2 compiler, in the GEMDOS Module. Thanks for all the help! Troy Carpenter Department of Computer Sciences THE University of Texas, Austin psurge@cs.utexas.edu "You're so open minded that your brain leaked out" - Steve Taylor *>>>>>>>>>>>>>>>>>> The best thing in life costs exactly that <<<<<<<<<<<<<<<*