Newsgroups: comp.sys.apple2.programmer Path: news.weeg.uiowa.edu!news.uiowa.edu!hobbes.physics.uiowa.edu!math.ohio-state.edu!usc!elroy.jpl.nasa.gov!decwrl!waikato!comp.vuw.ac.nz!actrix.gen.nz!dempson From: dempson@swell.actrix.gen.nz (David Empson) Subject: Re: ProDOS Command Number Organization: Actrix Information Exchange Date: Tue, 30 Nov 1993 11:05:30 GMT Message-ID: References: <1993Nov29.234951.19845@vicstoy.UUCP> Sender: dempson@actrix.gen.nz (David Empson) Lines: 65 In article <1993Nov29.234951.19845@vicstoy.UUCP> aphelps@vicstoy.UUCP (Austin Phelps) writes: > Are there any more ProDOS commands beside listed in the ProDOS Reference > Manual (copyright 1985). > > It lists $40-$41, $80-$82, $C0-$D3 It also lists the QUIT call ($65), just not in the summary at the back or in the long description of the calls. Look on page 87. There is a variation of the QUIT call which is not documented in the ProDOS-8 manual, but it is only available on a IIgs, and then only if you have booted GS/OS. This is the "extended quit" call, which lets you launch another application as you quit. The extended quit call has the following parameter block: EXTQPB DFB $04 ; Parameter Count DFB $EE ; Extended call signature DA path ; Pointer to pathname DFB $00 DA $0000 path STR '/THE.DISK/THE.DIR/THE.PROGRAM' There is one other ProDOS-8 call which is only supported if you have the AppleTalk software installed (i.e. a IIe Workstation card, or IIgs booting GS/OS with AppleShare installed). This is the Network call ($42) which has a whole bunch of other parameters. It is documented in the "AppleTalk Programmer's Guide for the Apple II Family" which is available from Resource Central. > Also, I haven't found a tech not describing how Apple uses the Aux Language > Card area. You haven't looked hard enough. Check out ProDOS Technical Note #26 (Polite Use of Auxiliary Memory). This should explain everything you need to know. [Great technote, Matt!] Under ProDOS-8, the entire auxiliary memory area is used as a RAM disk (/RAM), with the exception of the 80-column text screen and a few other areas which contain code or are reserved for special purposes. If you want to use auxiliary memory for any purpose other than as a RAM disk, you have to disable the RAM disk first. This is described in chapter 5 of the ProDOS-8 Technical Reference manual (along with further information about using auxiliary memory). > Is this for drivers that wouldn't fit on a card firmware. > (don't flame me, I'm trying to find out the correct way to use this memory). No. If a card's firmware can't fit into the 2k available in the expansion area, the card will generally be designed to bank-switch between multiple 1k or 2k banks. This is how Apple's SCSI cards work, for example. According to the technote mentioned above (written in 1990), some of the auxiliary memory language card space can be used for RAM-based device drivers, but how to do this is to be described in a forthcoming technote, which we have yet to see. -- David Empson dempson@swell.actrix.gen.nz Snail mail: P.O. Box 27-103, Wellington, New Zealand Newsgroups: comp.sys.apple2.programmer Path: news.weeg.uiowa.edu!news.uiowa.edu!hobbes.physics.uiowa.edu!math.ohio-state.edu!news.cyberstore.ca!nntp.cs.ubc.ca!unixg.ubc.ca!acs.ucalgary.ca!sbdocker From: sbdocker@acs.ucalgary.ca (Sean Brendan Dockery) Subject: Re: ProDOS Command Number Message-ID: Date: Tue, 30 Nov 1993 13:31:31 GMT References: <1993Nov29.234951.19845@vicstoy.UUCP> Organization: Griffin Software Development Lines: 85 In article <1993Nov29.234951.19845@vicstoy.UUCP> aphelps@vicstoy.UUCP (Austin Phelps) writes: | Are there any more ProDOS commands beside listed in the ProDOS | Reference Manual (copyright 1985). | | It lists $40-$41, $80-$82, $C0-$D3 There used to be command code $42 for AppleTalk calls. I don't know if it has gone the way of the dinosaurs, though. Does anyone know if it has remained (clandestinely) and is still functional for AppleTalk connections on Apple IIGS machines? Other than that, if there are other command codes than the ones that you have listed, they haven't been published by Apple. | Also, I haven't found a tech not describing how Apple uses the Aux | Language Card area. Is this for drivers that wouldn't fit on a card | firmware. (don't flame me, I'm trying to find out the correct way | to use this memory). Just about all of the 64K auxilliary RAM is used by the /RAM driver; I'll give you a breakdown from what I have read. The following information has been excerpted from Beneath Apple ProDOS by Gary B. Little, Addison-Wesley Publishing, ISBN 0-201-15008-5. According to Gary's book, the PRODOS system file uses the following memory locations: o $BF00-$BFFF in main RAM o $D000-$DFFF in $Dx bank1 of main bank-switched RAM o $D100-$D3FF in $Dx bank2 of main bank-switched RAM o $E000-$FFFF in main bank switched RAM In addition, the following memory locations are reserved by ProDOS: o $03ED-$03FF in main RAM o $D000-$D0FF in $Dx bank2 of main bank-switched RAM o $D400-$DFFF in $Dx bank2 of main bank-switched RAM The ProDOS /RAM driver uses the following memory locations: o $003C-$0043 in auxilliary zero page o $0200-$03FF in auxilliary RAM o $0C00-$BFFF in auxilliary RAM o $D000-$FDFF in $Dx bank1 of auxilliary bank-switched RAM o $D000-$DFFF in $Dx bank2 of auxilliary bank-switched RAM The following locations are not used by /RAM, but are marked as used in its bitmap. o $0400-$07FF for video RAM (in 80-column mode) o $0800-$087F for serial buffer (existing in Apple IIc only) o $0880-$08FF for keyboard buffer (existing in Apple IIc only) o $0900-$0BFF is unused, but supposedly reserved o $FFFA-$FFFF for mirroring main bank-switched RAM vectors With the /RAM driver installed, the only free locations to work with are the following: o $0000-$003B in auxilliary zero page o $0044-$00FF in auxilliary zero page o $0900-$0BFF in auxilliary RAM o $FE00-$FFF9 in auxilliary bank-switched RAM Here is a quote that immediately follows the memory locations I just listed: "Despite the apparent availability of these areas, they should be considered reserved for future use by later versions of ProDOS 8 and must not be used by nonsystem software." This is basically stating, "I reserve the right for my book to be out of date," rather than fortelling the future (present.) Of course, you could just remove the /RAM disk and have a free-for- all in auxilliary memory; just be sure to restore it on exit. | \ Austin C. Phelps \ Internet:aphelps@vicstoy.oau.org -- Sean Dockery dockery@griffin.cuc.ab.ca sbdocker@acs.ucalgary.ca