|62h||PK$SETP||set current pack|
|Input||A register - Non-zero if a pack change
is to be reported as an error.
B register - Controls which pack to select.
|Output||A register - Pack type.
X register - Pack size in 8k units or garbage for Pack A (the internal RAM).
Sets current pack as the contents of B register. Sets up the operating system to access the current pack.
This routine must be run before calling any further pack routines if the packs have been turned off or the slots modified in any way (ie. by a user machine code program).
This routine operates in two distinct ways:
If B register is 0 (for Pack A - internal RAM) then
If B register is between 1 and 3 (pack A - D) then
If any error occurs (except no pack) then the first byte of the current ID string in RAM is set to $FF.In the case of a no pack error this byte is set to zero. In either case all other bytes of the ID string are invalid.
To access slot 1
CLRA ; Pack changed error not required LDAB #PAKB ; Access slot 1 (upper side slot) OS PK$SETP BCS ERROR ; Report error
|Errors||246 - no pack in slot
245 - write pack error
242 - pack has changed
243 - selected an invalid pack
194 - battery too low
240 - unknown pack type
244 - attempt to write to read only pack
241 - pack not blank