mirror of
https://github.com/marketideas/qasm.git
synced 2026-10-27 12:07:30 +00:00
Move the assembler to src/qasm. qlink links OMF 1.0 and 2.0 from a script. makeBin flattens a load file, qomf dumps OMF, and qpro builds ProDOS volumes. APW and MPW assemble through the ORCA front end. Relocatable modules emit OMF objects. Listings stay off unless -l is set. make boot assembles the GS/OS 6.0.1 ProDOS 8 kernel and BASIC.SYSTEM into an 800K volume. BASIC.SYSTEM accepts ls and pfx, and its splash reports PRODOS BASIC 2.0, copyright 1983-2026. IIGS.601.SRC is the source and the BASIC.SYSTEM oracle that image is built from.
1 line
2.1 KiB
Plaintext
1 line
2.1 KiB
Plaintext
*
|
|
* GENERAL EQUATES
|
|
*
|
|
LASTLINE equ 23
|
|
BADCMD equ $01
|
|
LASTCMD equ $19
|
|
KEY equ $C000
|
|
CL_KEY equ $C010
|
|
|
|
************************************************************
|
|
*
|
|
* Zero Page Equates
|
|
*
|
|
************************************************************
|
|
LINEIDX equ $e0 ;internal console zero page usage
|
|
DATA_PTR equ $e2 ;internal console zero page usage
|
|
LISTPTR equ $e4
|
|
StrPtr equ $e6
|
|
StrPtr2 equ $e8
|
|
|
|
|
|
; CHARACTER EQUATES
|
|
;
|
|
|
|
ESCAPE equ $1B
|
|
Tab equ $09
|
|
RETURN equ $0D
|
|
SPACE equ $20
|
|
UPARROW equ $0B
|
|
DNARROW equ $0A
|
|
RTARROW equ $15
|
|
LTARROW equ $08
|
|
DelChar equ $7f
|
|
;
|
|
; CONSOLE DRIVER CONTROL CODES
|
|
;
|
|
NOP equ $00
|
|
CLRWB equ $01
|
|
SETWIND equ $02
|
|
RSTWIND equ $03
|
|
CLRWIND equ $04
|
|
CLREOW equ $05
|
|
CLRLN equ $06
|
|
BELL equ $07
|
|
CSRL equ $08
|
|
HTAB equ $09
|
|
CSRD equ $0A
|
|
CSRU equ $0B
|
|
CLEOL equ $0C
|
|
CR equ $0D
|
|
NORM equ $0E
|
|
INV equ $0F
|
|
MTON equ $10
|
|
VTAB equ $11
|
|
HomeCsr equ $12
|
|
MTOFF equ $13
|
|
CPOS equ $14
|
|
CSRR equ $15
|
|
SCRU equ $16
|
|
SCRD equ $17
|
|
SCRL equ $18
|
|
SCRR equ $19
|
|
SETCNTL equ $1A
|
|
CLLNB equ $1B
|
|
ReptChar equ $1c
|
|
WaitChar equ $1d
|
|
;
|
|
;
|
|
; CONSOLE DRIVER COMMANDS
|
|
;
|
|
CD_INIT equ $00
|
|
CD_WRITE equ $01
|
|
CD_GETCSR equ $02
|
|
CD_GETSTAT equ $03
|
|
CD_SAVEWIND equ $04
|
|
CD_RESTWIND equ $05
|
|
CD_GETKBD equ $06
|
|
CD_WRITEChar equ $07
|
|
CD_WrtCStg equ $08
|
|
CD_GotoXY equ $09
|
|
CD_Input equ $0a
|
|
CD_FrameRect equ $0b
|
|
CD_ListHandler equ $0c
|
|
CD_WrtPtr equ $0d
|
|
CD_DoViewPort equ $0e
|
|
CD_SetCursor equ $0f
|
|
CD_Message equ $10
|
|
CD_CenterStr equ $11
|
|
CD_PrintHex equ $12
|
|
CD_ParmText equ $13
|
|
CD_CompareStr equ $94
|
|
CD_MoveStr equ $95
|
|
CD_NextStr equ $96
|
|
CD_SortArray equ $97
|
|
CD_FindItem equ $98
|
|
|
|
;
|
|
;
|
|
; CONSTANT EQUATES
|
|
;
|
|
DFBLKRTE equ $7F
|
|
DFCNTL equ %10110011
|
|
ADV_BIT equ %10000000
|
|
ADVV_BIT equ %01000000
|
|
WRAP_BIT equ %00100000
|
|
SCROL_BIT equ %00010000
|
|
INV_BIT equ %00001000
|
|
MT_BIT equ %00000100
|
|
LF_BIT equ %00000010
|
|
ECHO_BIT equ %00000001
|
|
SPACE_HB equ $A0
|
|
StackSize equ $80
|
|
;
|
|
; ERROR CODE EQUATES
|
|
;
|
|
NOERR equ $00
|
|
BADPOS equ $02
|
|
|
|
; HARDWARE EQUATES
|
|
;
|
|
SPKR equ $C030
|
|
KEYBOARD equ $C000
|
|
KEYDOWN equ $C010
|
|
SWITCH0 equ $C061
|
|
SWITCH1 equ $C062
|
|
STORE80 equ $C001 ;WRITE
|
|
PAGE1 equ $C054 ;READ
|
|
PAGE2 equ $C055 ;READ
|
|
ALTCHAR equ $C00F ;WRITE
|
|
S_80COL equ $C00D ;WRITE
|
|
S_40COL equ $C00C ;WRITE
|
|
;WRITE
|