mirror of
https://github.com/erkyrath/infocom-zcode-terps.git
synced 2026-02-10 02:00:22 +00:00
280 lines
5.4 KiB
NASM
280 lines
5.4 KiB
NASM
TITLE "Apple ][ YZIP (c)Infocom","OPCODE DISPATCH TABLES"
|
|
|
|
|
|
; 0-OPS
|
|
|
|
OPT0H: DB HIGH ZRTRUE ;B0
|
|
DB HIGH ZRFALS ;B1
|
|
DB HIGH ZPRI ;B2
|
|
DB HIGH ZPRR ;B3
|
|
DB HIGH ZNOOP ;B4
|
|
DB HIGH OSAVE ;B5
|
|
DB HIGH OREST ;B6
|
|
DB HIGH ZSTART ;B7
|
|
DB HIGH ZRSTAK ;B8
|
|
DB HIGH ZCATCH ;B9
|
|
DB HIGH ZQUIT ;BA
|
|
DB HIGH ZZCRLF ;BB
|
|
DB HIGH ZUSL ;BC
|
|
DB HIGH ZVER ;BD
|
|
DB HIGH ZEXTOP ;BE
|
|
DB HIGH ZORIG ;BF
|
|
|
|
OPT0L: DB LOW ZRTRUE ;B0
|
|
DB LOW ZRFALS ;B1
|
|
DB LOW ZPRI ;B2
|
|
DB LOW ZPRR ;B3
|
|
DB LOW ZNOOP ;B4
|
|
DB LOW OSAVE ;B5
|
|
DB LOW OREST ;B6
|
|
DB LOW ZSTART ;B7
|
|
DB LOW ZRSTAK ;B8
|
|
DB LOW ZCATCH ;B9
|
|
DB LOW ZQUIT ;BA
|
|
DB LOW ZZCRLF ;BB
|
|
DB LOW ZUSL ;BC
|
|
DB LOW ZVER ;BD
|
|
DB LOW ZEXTOP ;BE
|
|
DB LOW ZORIG ;BF
|
|
|
|
; 1-OPS
|
|
|
|
OPT1H: DB HIGH ZZERO ;80,90,A0
|
|
DB HIGH ZNEXT ;81
|
|
DB HIGH ZFIRST ;82
|
|
DB HIGH ZLOC ;83
|
|
DB HIGH ZPTSIZ ;84
|
|
DB HIGH ZINC ;85
|
|
DB HIGH ZDEC ;86
|
|
DB HIGH ZPRB ;87
|
|
DB HIGH ZCALL1 ;88 (EZIP)
|
|
DB HIGH ZREMOV ;89
|
|
DB HIGH ZPRD ;8A
|
|
DB HIGH ZRET ;8B
|
|
DB HIGH ZJUMP ;8C
|
|
DB HIGH ZPRINT ;8D
|
|
DB HIGH ZVALUE ;8E
|
|
DB HIGH ZICLL1 ;8F
|
|
|
|
OPT1L: DB LOW ZZERO ;80
|
|
DB LOW ZNEXT ;81
|
|
DB LOW ZFIRST ;82
|
|
DB LOW ZLOC ;83
|
|
DB LOW ZPTSIZ ;84
|
|
DB LOW ZINC ;85
|
|
DB LOW ZDEC ;86
|
|
DB LOW ZPRB ;87
|
|
DB LOW ZCALL1 ;88 (EZIP)
|
|
DB LOW ZREMOV ;89
|
|
DB LOW ZPRD ;8A
|
|
DB LOW ZRET ;8B
|
|
DB LOW ZJUMP ;8C
|
|
DB LOW ZPRINT ;8D
|
|
DB LOW ZVALUE ;8E
|
|
DB LOW ZICLL1 ;8F
|
|
|
|
; 2-OPS
|
|
|
|
OPT2H: DB HIGH BADOP2 ;00 (UNDEFINED)
|
|
DB HIGH ZEQUAL ;01
|
|
DB HIGH ZLESS ;02
|
|
DB HIGH ZGRTR ;03
|
|
DB HIGH ZDLESS ;04
|
|
DB HIGH ZIGRTR ;05
|
|
DB HIGH ZIN ;06
|
|
DB HIGH ZBTST ;07
|
|
DB HIGH ZBOR ;08
|
|
DB HIGH ZBAND ;09
|
|
DB HIGH ZFSETP ;0A
|
|
DB HIGH ZFSET ;0B
|
|
DB HIGH ZFCLR ;0C
|
|
DB HIGH ZSET ;0D
|
|
DB HIGH ZMOVE ;0E
|
|
DB HIGH ZGET ;0F
|
|
DB HIGH ZGETB ;10
|
|
DB HIGH ZGETP ;11
|
|
DB HIGH ZGETPT ;12
|
|
DB HIGH ZNEXTP ;13
|
|
DB HIGH ZADD ;14
|
|
DB HIGH ZSUB ;15
|
|
DB HIGH ZMUL ;16
|
|
DB HIGH ZDIV ;17
|
|
DB HIGH ZMOD ;18
|
|
DB HIGH ZCALL2 ;19 (EZIP)
|
|
DB HIGH ZICLL2 ;1A
|
|
DB HIGH ZCOLOR ;1B
|
|
DB HIGH ZTHROW ;1C
|
|
DB HIGH BADOP2 ;1D
|
|
DB HIGH BADOP2 ;1E
|
|
DB HIGH BADOP2 ;1F
|
|
|
|
OPT2L: DB LOW BADOP2 ;00 (UNDEFINED)
|
|
DB LOW ZEQUAL ;01
|
|
DB LOW ZLESS ;02
|
|
DB LOW ZGRTR ;03
|
|
DB LOW ZDLESS ;04
|
|
DB LOW ZIGRTR ;05
|
|
DB LOW ZIN ;06
|
|
DB LOW ZBTST ;07
|
|
DB LOW ZBOR ;08
|
|
DB LOW ZBAND ;09
|
|
DB LOW ZFSETP ;0A
|
|
DB LOW ZFSET ;0B
|
|
DB LOW ZFCLR ;0C
|
|
DB LOW ZSET ;0D
|
|
DB LOW ZMOVE ;0E
|
|
DB LOW ZGET ;0F
|
|
DB LOW ZGETB ;10
|
|
DB LOW ZGETP ;11
|
|
DB LOW ZGETPT ;12
|
|
DB LOW ZNEXTP ;13
|
|
DB LOW ZADD ;14
|
|
DB LOW ZSUB ;15
|
|
DB LOW ZMUL ;16
|
|
DB LOW ZDIV ;17
|
|
DB LOW ZMOD ;18
|
|
DB LOW ZCALL2 ;19 (EZIP)
|
|
DB LOW ZICLL2 ;1A
|
|
DB LOW ZCOLOR ;1B
|
|
DB LOW ZTHROW ;1C
|
|
DB LOW BADOP2 ;1D
|
|
DB LOW BADOP2 ;1E
|
|
DB LOW BADOP2 ;1F
|
|
|
|
; X-OPS
|
|
|
|
OPTXH: DB HIGH ZCALL ;E0
|
|
DB HIGH ZPUT ;E1
|
|
DB HIGH ZPUTB ;E2
|
|
DB HIGH ZPUTP ;E3
|
|
DB HIGH ZREAD ;E4
|
|
DB HIGH ZPRC ;E5
|
|
DB HIGH ZPRN ;E6
|
|
DB HIGH ZRAND ;E7
|
|
DB HIGH ZPUSH ;E8
|
|
DB HIGH ZPOP ;E9
|
|
DB HIGH ZSPLIT ;EA
|
|
DB HIGH ZSCRN ;EB
|
|
|
|
; (EZIPS FROM HERE ON)
|
|
DB HIGH ZXCALL ;EC
|
|
DB HIGH ZCLR ;ED
|
|
DB HIGH ZERASE ;EE
|
|
DB HIGH ZCURST ;EF
|
|
DB HIGH ZCURGT ;F0
|
|
DB HIGH ZLIGHT ;F1
|
|
DB HIGH ZBUFOUT ;F2
|
|
DB HIGH ZDIRT ;F3
|
|
DB HIGH ZDIRIN ;F4 (NOT IMPLEMENTED)
|
|
DB HIGH ZSOUND ;F5
|
|
DB HIGH ZINPUT ;F6
|
|
DB HIGH ZINTBL ;F7
|
|
DB HIGH ZBCOM ;F8
|
|
DB HIGH ZICALL ;F9
|
|
DB HIGH ZIXCLL ;FA
|
|
DB HIGH ZLEX ;FB
|
|
DB HIGH ZWSTR ;FC
|
|
DB HIGH ZCOPYT ;FD
|
|
DB HIGH ZPRNTT ;FE
|
|
DB HIGH ZASSND ;FF
|
|
|
|
OPTXL: DB LOW ZCALL ;E0
|
|
DB LOW ZPUT ;E1
|
|
DB LOW ZPUTB ;E2
|
|
DB LOW ZPUTP ;E3
|
|
DB LOW ZREAD ;E4
|
|
DB LOW ZPRC ;E5
|
|
DB LOW ZPRN ;E6
|
|
DB LOW ZRAND ;E7
|
|
DB LOW ZPUSH ;E8
|
|
DB LOW ZPOP ;E9
|
|
DB LOW ZSPLIT ;EA
|
|
DB LOW ZSCRN ;EB
|
|
|
|
; (EZIPS FROM HERE ON)
|
|
DB LOW ZXCALL ;EC
|
|
DB LOW ZCLR ;ED
|
|
DB LOW ZERASE ;EE
|
|
DB LOW ZCURST ;EF
|
|
DB LOW ZCURGT ;F0
|
|
DB LOW ZLIGHT ;F1
|
|
DB LOW ZBUFOUT ;F2
|
|
DB LOW ZDIRT ;F3
|
|
DB LOW ZDIRIN ;F4 (NOT IMPLEMENTED)
|
|
DB LOW ZSOUND ;F5
|
|
DB LOW ZINPUT ;F6
|
|
DB LOW ZINTBL ;F7
|
|
DB LOW ZBCOM ;F8
|
|
DB LOW ZICALL ;F9
|
|
DB LOW ZIXCLL ;FA
|
|
DB LOW ZLEX ;FB
|
|
DB LOW ZWSTR ;FC
|
|
DB LOW ZCOPYT ;FD
|
|
DB LOW ZPRNTT ;FE
|
|
DB LOW ZASSND ;FF
|
|
|
|
|
|
EXTOPH: DB HIGH ZSAVE ;100
|
|
DB HIGH ZREST ;101
|
|
DB HIGH ZSHIFT ;102
|
|
DB HIGH ZASHFT ;103
|
|
DB HIGH ZFONT ;104
|
|
DB HIGH ZDISPL ;105
|
|
DB HIGH ZPICNF ;106
|
|
DB HIGH ZDCLR ;107
|
|
DB HIGH ZMARG ;108
|
|
DB HIGH ZISAVE ;109
|
|
DB HIGH ZIREST ;10A
|
|
DB HIGH BADEXT ;10B - NOT USED
|
|
DB HIGH BADEXT ;10C - NOT USED
|
|
DB HIGH BADEXT ;10D - NOT USED
|
|
DB HIGH BADEXT ;10E - NOT USED
|
|
DB HIGH BADEXT ;10F - NOT USED
|
|
DB HIGH ZWINPOS ;110
|
|
DB HIGH ZWINSIZE ;111
|
|
DB HIGH ZWINATTR ;112
|
|
DB HIGH ZWINGET ;113
|
|
DB HIGH ZSCROLL ;114
|
|
DB HIGH ZFSTACK ;115
|
|
DB HIGH ZMINFO ;116
|
|
DB HIGH ZMLIMIT ;117
|
|
DB HIGH ZXPUSH ;118
|
|
DB HIGH ZWINPUT ;119
|
|
DB HIGH ZPRINTF ;11A
|
|
DB HIGH ZMENU ;11B
|
|
DB HIGH ZPICSET ;11c
|
|
|
|
EXTLEN EQU $-EXTOPH
|
|
|
|
EXTOPL: DB LOW ZSAVE ;100
|
|
DB LOW ZREST ;101
|
|
DB LOW ZSHIFT ;102
|
|
DB LOW ZASHFT ;103
|
|
DB LOW ZFONT ;104
|
|
DB LOW ZDISPL ;105
|
|
DB LOW ZPICNF ;106
|
|
DB LOW ZDCLR ;107
|
|
DB LOW ZMARG ;108
|
|
DB LOW ZISAVE ;109
|
|
DB LOW ZIREST ;10A
|
|
DB LOW BADEXT ;10B - NOT USED
|
|
DB LOW BADEXT ;10C - NOT USED
|
|
DB LOW BADEXT ;10D - NOT USED
|
|
DB LOW BADEXT ;10E - NOT USED
|
|
DB LOW BADEXT ;10F - NOT USED
|
|
DB LOW ZWINPOS ;110
|
|
DB LOW ZWINSIZE ;111
|
|
DB LOW ZWINATTR ;112
|
|
DB LOW ZWINGET ;113
|
|
DB LOW ZSCROLL ;114
|
|
DB LOW ZFSTACK ;115
|
|
DB LOW ZMINFO ;116
|
|
DB LOW ZMLIMIT ;117
|
|
DB LOW ZXPUSH ;118
|
|
DB LOW ZWINPUT ;119
|
|
DB LOW ZPRINTF ;11A
|
|
DB LOW ZMENU ;11B
|
|
DB LOW ZPICSET ;11C
|
|
|
|
END
|