Trap #3 - Input/Output & Pointer Environment Traps

Trap #3 covers an awful lot of utilities. Almsot everything to do wiuth the screen, file output and input – as opposed to opening and closing files that is – and there has also been the addition of the PE traps to the mix.

You can skip to the PE traps if you wish.

D0 Key QDOS Mnemonic SMSQ/E Mnemonic Description
$00 IO_PEND IOB.TEST Test for pending input
$01 IO_FBYTE IOB.FBYT Fetch a byte
$02 IO_FLINE IOB.FLIN Fetch a line of bytes
$03 IO_FSTRG IOB.FMUL Fetch a string
$04 IO_EDLIN IOB.ELIN Edit a line
$05 IO_SBYTE IOB.SBYT Send one byte
$07 IO_SSTRG IOB.SMUL Send a string of bytes
$08 Not implemented
$09 SD_EXTOP IOW.XTOP Calls an external screen operation
$0A SD_PXENQ IOW.PIXQ Get window size/cursor position (pixels)
$0B SD_CHENQ IOW.CHRQ Get window size/cursor position (Characters)
$0C SD_BORDR IOW.DEFB Sets the border on a window
$0D SD_WDEF IOW.DEFW Re-defines a window
$0E SD_CURE IOW.ECUR Enable a cursor
$0F SD_CURS IOW.DCUR Disable a cursor
$10 SD_POS IOW.SCUR Set cursor position
$11 SD_TAB IOW.SCOL Set horizontal cursor position
$12 SD_NL IOW.NEWL Do a newline
$13 SD_PCOL IOW.PCOL Cursor to previous column
$14 SD_NCOL IOW.NCOL Cursor to next column
$15 SD_PROW IOW.PROW Cursor to previous row
$16 SD_NROW IOW.NROW Cursor to next row
$17 SD_PIXP IOW.SPIX Set cursor position by pixel
$18 SD_SCROL IOW.SCRA Scroll window
$19 SD_SCRTP IOW.SCRT Scroll top of window
$1A SD_SCRBT IOW.SCRB Scroll bottom of window
$1B SD_PAN IOW.PANA Pan window
$1C Not implemented
$1D Not implemented
$1E SD_PANLN IOW.PANL Pan cursor line
$1F SD_PANRT IOW.PANR Pan right side of cursor line
$20 SD_CLEAR IOW.CLRA Clears a window
$21 SD_CLRTP IOW.CLRT Clear the top of a window
$22 SD_CLRBT IOW.CLRB Clear the bottom of a window
$23 SD_CLRLN IOW.CLRL Clears the whole of the cursor line
$24 SD_CLRRT IOW.CLRR Clears the right side of the cursor line
$25 SD_FOUNT IOW.FONT Set the fonts for a window
$26 SD_RECOL IOW.RCLR Recolour a window
$27 SD_SETPA IOW.SPAP Set paper colour
$28 SD_SETST IOW.SSTR Set strip colour
$29 SD_SETIN IOW.SINK Set ink colour
$2A SD_SETFL IOW.SFLA Set flash mode
$2B SD_SETUL IOW.SULA Set underline mode
$2D SD_SETSZ IOW.SSIZ Set character size
$2E SD_FILL IOW.BLOK Fill a block
$2F SD_DONL IOW.DONL Do a pending new line
$30 SD_POINT IOG.DOT Plot a point
$31 SD_LINE IOG.LINE Draw a line
$32 SD_ARC IOG.ARC Draw an arc of a circle
$33 SD_ELIPS IOG.ELIP Draw an ellipse (or circle)
$34 SD_SCALE IOG.SCAL Set the scale in a window
$35 SD_FLOOD IOG.FILL Set fill mode
$36 SD_GCUR IOG.SGCR Set cursor position using graphics co-ordinates
$37-$3F Not implemented
$40 FS_CHECK IOF.CHEK Check pending operations on a file
$41 FS_FLUSH IOF.FLSH Flush a file’s buffers to the device
$42 FS_POSAB IOF.POSA Set file position by absolute address
$43 FS_POSRE IOF.POSR Set file position by relative address
$44 Not implemented. Originally reserved for rename
$45 FS_MDINF IOF.MINF Get medium information
$46 FS_HEADS IOF.SHDR Set a file header
$47 FS_HEADR IOF.RHDR Read a file header
$48 FS_LOAD IOF.LOAD Load a file
$49 FS_SAVE IOF.SAVE Save a file
$4A FS_RENAME IOF.RNAM Rename a file
$4B FS_TRUNCATE IOF.TRNC Truncate a file at its current position
$4C IOF.DATE Set or get a file’s date(s)
$4D IOF.MKDIR Create a new directory
$4E IOF.VERS Set or get a file’s version
$4F IOF.XINF Get extended information
$50 IOW.PAPP Palette colour paper
$51 IOW.STRP Palette colour strip
$52 IOW.INKP Palette colour ink
$53 IOW.BORP Palette colour border
$54 IOW.PAPT True colour paper
$55 IOW.STRT True colour strip
$56 IOW.INKT True colour ink
$57 IOW.BORT True colour border
$58 IOW.PAPN Native colour paper
$59 IOW.STRN Native colour strip
$5A IOW.INKN Native colour ink
$5B IOW.BORN Native colour border
$5C IOW.BLKP Palette colour block
$5D IOW.BLKT True colour block
$5E IOW.BLKN Native colour block
$5F Not implemented
$60 IOW.PALQ Define QL palette
$61 IOW.PAL8 Define 8 bit palette
$62-$6A Not implemented
$6B IOW.WPAP Define screen wallpaper

Trap #3 - Pointer Environment

D0 Key Mnemonic Description
$6C IOP.FLIM Find window limits
$6D IOP.SVPW Partial window save
$6E IOP.RSPW Partial window restore
$6F IOP.SLNK Set linkage block
$70 IOP.PINF Information enquiry
$71 IOP.RPTR Read pointer
$72 IOP.RPXL Read pixel at x,y
$73 IOP.WBLB Write blob at x,y
$74 IOP.LBLB Write line of blobs
$75 Not implemented
$76 IOP.WSPT Write sprite at x,y
$77 IOP.SPRY Spray pixels in blob
$78 Not implemented
$79 Not implemented
$7A IOP.OUTL Set window outline
$7B IOP.SPTR Set pointer position
$7C IOP.PICK Pick window
$7D IOP.SWDF Set sub-window definition pointer
$7E IOP.WSAV Save window area
$7F IOP.WRST Restore window area