RESIDOS Command & Function Reference

The command/function handlers provided by ResiDOS are as follows:


HANDLERID_CAT ($0003)

      Available from: v2.19

      Commands:       CAT[+] [#stream;][filespec$]
                      CAT !

      Parameters:     0-3=filespec$
                      4=stream

      Flags:          bit 0: set to operate on RAMdisk (CAT !)
                      bit 7: set for + (expanded catalog)

      FP stack:       --

Note: filespec$ and stream must always be specified, although filespec$ may be a zero-length string.

Note: It's also possible to use the +3DOS call DOS_CATALOG.


HANDLERID_LOAD ($0004)

      Available from: v2.19

      Commands:       LOAD name$
                      LOAD name$ CODE [start[,len]]
                      LOAD name$ SCREEN$
                      LOAD ! name$
                      LOAD ! name$ CODE [start[,len]]
                      LOAD ! name$ SCREEN$

      Parameters:     0-3=name$
                      4-5=start
                      6-7=len

      Flags:          bit 0: set for CODE
                      bit 1: set for SCREEN$
                      bit 5: set if start specified
                      bit 6: set if len specified
                      bit 7: set to operate on RAMdisk (LOAD !)

      FP stack:       --

HANDLERID_SAVE ($0005)

      Available from: v2.19

      Commands:       SAVE name$
                      SAVE name$ LINE line
                      SAVE name$ CODE start,len
                      SAVE name$ SCREEN$
                      SAVE ! name$
                      SAVE ! name$ LINE line
                      SAVE ! name$ CODE start,len
                      SAVE ! name$ SCREEN$

      Parameters:     0-3=name$
                      4-5=start
                      6-7=len
                      8-9=line

      Flags:          bit 0: set for CODE
                      bit 1: set for SCREEN$
                      bit 2: set for LINE
                      bit 7: set to operate on RAMdisk (LOAD !)

      FP stack:       --

HANDLERID_SNAPLOAD ($0006)

      Available from: v2.19

      Commands:       %SNAPLOAD[+][-] name$

      Parameters:     0-3=name$

      Flags:          bit 0: set for routine in screen (+)
                      bit 1: set to disable ResiDOS (-)

      FP stack:       --

Note: It's also possible to use the IDEDOS call, IDE_SNAPLOAD.


HANDLERID_CHANGE ($0007)

      Available from: v2.19

      Commands:       %CD[+] location$

      Parameters:     0-3=location$

      Flags:          bit 4: set for permanence (+)

      FP stack:       --

Note: It's also possible to use the IDEDOS call, IDE_PATH and the +3DOS calls DOS_SET_DRIVE and DOS_SET_USER.


HANDLERID_MKDIR ($0008)

      Available from: v2.19

      Commands:       %MKDIR path$

      Parameters:     0-3=path$

      Flags:          --

      FP stack:       --

Note: It's also possible to use the IDEDOS call, IDE_PATH.


HANDLERID_RMDIR ($0009)

      Available from: v2.19

      Commands:       %RMDIR path$

      Parameters:     0-3=path$

      Flags:          --

      FP stack:       --

Note: It's also possible to use the IDEDOS call, IDE_PATH.


HANDLERID_PWD ($000a)

      Available from: v2.19

      Commands:       %PWD [#stream]

      Parameters:     0=stream

      Flags:          --

      FP stack:       --

Note: stream must always be specified.

Note: It's also possible to use the IDEDOS call, IDE_PATH and the +3DOS calls DOS_SET_DRIVE and DOS_SET_USER.


HANDLERID_REN ($000b)

      Available from: v2.19

      Commands:       %REN name1$,name2$
                      %REN part1$,name2$

      Parameters:     0-3=name1$ or part1$
                      4-7=name2$

      Flags:          --

      FP stack:       --

Note: Can be used to rename partitions or files.

Note: It's also possible to use the IDEDOS call, IDE_PARTITION_RENAME and the +3DOS call DOS_RENAME.


HANDLERID_ATTRIB ($000c)

      Available from: v2.19

      Commands:       %ATTRIB name$,attrib$

      Parameters:     0-3=name$
                      4-7=attrib$

      Flags:          --

      FP stack:       --

Note: It's also possible to use the +3DOS call DOS_SET_ATTRIBUTES.


HANDLERID_CP ($000d)

      Available from: v2.19

      Commands:       %CP name1$,name2$
                      %CP filespec$,location$

      Parameters:     0-3=name1$ or filespec$
                      4-7=name2$ or location$

      Flags:          --

      FP stack:       --

Note: May be used to copy a single file or multiple files.


HANDLERID_ERASE ($000e)

      Available from: v2.19

      Commands:       %ERA [!] name$
                      %ERA [!] filespec$
                      %ERA partition$

      Parameters:     0-3=name$, filespec$ or partition$

      Flags:          bit 7: set to operate on RAMdisk (%ERA !)

      FP stack:       --

Note: It's also possible to use the IDEDOS call, IDE_PARTITION_ERASE and the +3DOS call DOS_DELETE.


HANDLERID_AUTORUN ($000f)

      Available from: v2.19

      Commands:       %AUTORUN
                      %AUTORUN-
                      %AUTORUN[+] name$

      Parameters:     0-3=name$

      Flags:          bit 0: if set, indicates name$ is supplied
                      bit 7: set for "run on boot" (+)

      FP stack:       --

Note: %AUTORUN- is performed by setting bit 0 of flags to indicate name$ is present, but making this a zero-length string.


HANDLERID_LINE ($0010)

      Available from: v2.19

      Commands:       LINE name$,line

      Parameters:     0-3=name$
                      4-5=line

      Flags:          --

      FP stack:       --

HANDLERID_ATTR ($0011)

      Available from: v2.19

      Commands:       INK %i
                      PAPER %p
                      BRIGHT %b
                      FLASH %f
                      ATTR %a

      Parameters:     0=value to set
                      1=mask
                      2=shift in attribute byte

      Flags:          --

      FP stack:       --

The mask should be set to indicate which bits of the value are to be used. The shift should be set to (bit number + 1) of the position to store the masked value into the attribute. For example:


HANDLERID_ONERR ($0012)

      Available from: v2.19

      Commands:       %ONERR THEN GOTO line
                      %ONERR THEN GOSUB line
                      %ONERR OFF

      Parameters:     0-1=line

      Flags:          bit 0: set for GOTO line
                      bit 1: set for GOSUB line
                      bit 0 & 1: both reset for OFF

      FP stack:       --

HANDLERID_ONBREAK ($0013)

      Available from: v2.19

      Commands:       %ONBREAK THEN CONTINUE
                      %ONBREAK OFF

      Parameters:     --

      Flags:          bit 0: set for CONTINUE, reset for OFF

      FP stack:       --

HANDLERID_REPORT ($0014)

      Available from: v2.19

      Commands:       %REPORT

      Parameters:     --

      Flags:          --

      FP stack:       --

HANDLERID_SPECTRUM ($0015)

      Available from: v2.19

      Commands:       %SPECTRUM[+][-]

      Parameters:     --

      Flags:          bit 0: set for permanence (+)
                      bit 1: set to remove permanence (-)

      FP stack:       --

HANDLERID_SPEED ($0016)

      Available from: v2.19

      Commands:       %SPEED[+][-] n

      Parameters:     0: n

      Flags:          bit 0: set for permanence (+)
                      bit 1: set to remove permanence (-)

      FP stack:       --

HANDLERID_AUTOMAP ($0017)

      Available from: v2.19

      Commands:       %AUTOMAP[+][-]

      Parameters:     --

      Flags:          bit 0: set to disable automapping (-)

      FP stack:       --

HANDLERID_MAP ($0018)

      Available from: v2.19

      Commands:       %MAP [#stream]
                      %MAP[+] drive$,partition$

      Parameters:     0=stream

              OR:     0-3=drive$
                      4-7=partition$

      Flags:          bit 0: set to map a drive, reset to show mappings
                      bit 7: set for permanence (+)

      FP stack:       --

Note: stream must always be specified for show mappings variant.

Note: It's also possible to use the IDEDOS calls, IDE_DOS_MAP and IDE_DOS_MAPPING.


HANDLERID_UNMAP ($0019)

      Available from: v2.19

      Commands:       %UNMAP[+] drive$

      Parameters:     0-3=drive$

      Flags:          bit 7: set for permanence (+)

      FP stack:       --

Note: It's also possible to use the IDEDOS call, IDE_DOS_UNMAP.


HANDLERID_DRIVE ($001a)

      Available from: v2.19

      Commands:       %DRIVE unit
                      %DRIVE unit,cyls,hds,secs

      Parameters:     0-1=unit
                      2-3=cyls
                      4=hds
                      5=secs

      Flags:          bit 0: set if cyls,hds,secs supplied

      FP stack:       --

Note: Set cyls=0, hds=0, secs=0 to disable unit.


HANDLERID_DRIVES ($001b)

      Available from: v2.19

      Commands:       %DRIVES

      Parameters:     --

      Flags:          --

      FP stack:       --

HANDLERID_PARTITION ($001c)

      Available from: v2.19

      Commands:       %PARTITION name$,size[,type]

      Parameters:     0-3=name$
                      4-5=size
                      6=type

      Flags:          --

      FP stack:       --

Note: type must be set. The default partition type is ptype_p3dos.

Note: It's also possible to use the IDEDOS call, IDE_PARTITION_NEW.


HANDLERID_PARTITIONS ($001d)

      Available from: v2.19

      Commands:       %PARTITIONS[+] [#stream]

      Parameters:     0=stream

      Flags:          bit 7: set for expanded info (+)

      FP stack:       --

Note: stream must always be specified.

Note: It's also possible to use the IDEDOS call, IDE_PARTITION_READ.


HANDLERID_REFORMAT ($001e)

      Available from: v2.19

      Commands:       %REFORMAT unit,partitions[,cyllimit]

      Parameters:     0=unit
                      1-2=partitions
                      3-4=cyllimit

      Flags:          --

      FP stack:       --

Note: Set cyllimit to zero if no cylinder limit required.

Note: It's also possible to use the IDEDOS call, IDE_FORMAT.


HANDLERID_ROM ($001f)

      Available from: v2.19

      Commands:       %ROM name$
                      %ZX

      Parameters:     0-3=name$

      Flags:          --

      FP stack:       --

Note: For %ZX, use a zero-length name string.


HANDLERID_ROMS ($0020)

      Available from: v2.19

      Commands:       %ROMS[+] [#stream]

      Parameters:     0=stream

      Flags:          bit 7: set for expanded info (+)

      FP stack:       --

Note: stream must always be specified.


HANDLERID_INSTALL ($0021)

      Available from: v2.19

      Commands:       %INSTALL name$[@addr][,type]

      Parameters:     0-3=name$
                      4=type
                      5-6=addr

      Flags:          bit 7: set if addr is specified

      FP stack:       --

Note: Type must always be specified.


HANDLERID_UNINSTALL ($0022)

      Available from: v2.19

      Commands:       %UNINSTALL name$

      Parameters:     0-3=name$

      Flags:          --

      FP stack:       --

HANDLERID_FNERR ($0023)

      Available from: v2.19

      Function:       FN err()

      FP stack:       -- errorcode

HANDLERID_FNERL ($0024)

      Available from: v2.19

      Function:       FN erl()

      FP stack:       -- errorline

HANDLERID_FNERS ($0025)

      Available from: v2.19

      Function:       FN ers()

      FP stack:       -- errorstatement

HANDLERID_OPEN ($0026)

      Available from: v2.19

      Commands:       OPEN #stream,channel$

      Parameters:     0=stream
                      1-4=channel$

      Flags:          --

      FP stack:       --

Note: A more appropriate ResiDOS call exists: RESI_STREAM_OPEN.


HANDLERID_POINT ($0027)

      Available from: v2.19

      Commands:       POINT #stream,ptr

      Parameters:     0=stream
                      1-4=ptr

      Flags:          --

      FP stack:       --

Note: A more appropriate ResiDOS call exists: RESI_STREAM_PTR.


HANDLERID_FNPTR ($0028)

      Available from: v2.19

      Function:       FN ptr#(stream)

      FP stack:       stream -- ptr

Note: A more appropriate ResiDOS call exists: RESI_STREAM_PTR.


HANDLERID_FNEXT ($0029)

      Available from: v2.19

      Function:       FN ext#(stream)

      FP stack:       stream -- ext

Note: A more appropriate ResiDOS call exists: RESI_STREAM_PTR.


Main ResiDOS programming page

Back to the ResiDOS home page