This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches. git-svn-id: svn://svn.cc65.org/cc65/trunk@3 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
418
libsrc/geos/inc/const.inc
Normal file
418
libsrc/geos/inc/const.inc
Normal file
@@ -0,0 +1,418 @@
|
||||
|
||||
;GeosConst - various system constans sorted by function
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99, 18-3-99
|
||||
|
||||
NULL = 0
|
||||
FALSE = NULL
|
||||
TRUE = $ff
|
||||
|
||||
MOUSE_SPRNUM = 0
|
||||
|
||||
DISK_DRV_LGH = $0d80
|
||||
|
||||
;
|
||||
;filetypes
|
||||
; GEOS
|
||||
NOT_GEOS = 0
|
||||
BASIC = 1
|
||||
ASSEMBLY = 2
|
||||
DATA = 3
|
||||
SYSTEM = 4
|
||||
DESK_ACC = 5
|
||||
APPLICATION = 6
|
||||
APPL_DATA = 7
|
||||
FONT = 8
|
||||
PRINTER = 9
|
||||
INPUT_DEVICE = 10
|
||||
DISK_DEVICE = 11
|
||||
SYSTEM_BOOT = 12
|
||||
TEMPORARY = 13
|
||||
AUTO_EXEC = 14
|
||||
INPUT_128 = 15
|
||||
NUMFILETYPES = 16
|
||||
; structure
|
||||
SEQUENTIAL = 0
|
||||
VLIR = 1
|
||||
; DOS
|
||||
DEL = 0
|
||||
SEQ = 1
|
||||
PRG = 2
|
||||
USR = 3
|
||||
REL = 4
|
||||
CBM = 5
|
||||
|
||||
;drivetypes
|
||||
DRV_NULL = 0
|
||||
DRV_1541 = 1
|
||||
DRV_1571 = 2
|
||||
DRV_1581 = 3
|
||||
DRV_NETWORK = 15
|
||||
|
||||
;various disk
|
||||
REL_FILE_NUM = 9
|
||||
CMND_FILE_NUM = 15
|
||||
MAX_CMND_STR = 32
|
||||
DIR_1581_TRACK = 40
|
||||
DIR_ACC_CHAN = 13
|
||||
DIR_TRACK = 18
|
||||
N_TRACKS = 35
|
||||
DK_NM_ID_LEN = 18
|
||||
TRACK = 9
|
||||
SECTOR = 12
|
||||
TOTAL_BLOCKS = 664
|
||||
|
||||
;colours
|
||||
BLACK = 0
|
||||
WHITE = 1
|
||||
RED = 2
|
||||
CYAN = 3
|
||||
PURPLE = 4
|
||||
GREEN = 5
|
||||
BLUE = 6
|
||||
YELLOW = 7
|
||||
ORANGE = 8
|
||||
BROWN = 9
|
||||
LTRED = 10
|
||||
DKGREY = 11
|
||||
GREY = 12
|
||||
MEDGREY = 12
|
||||
LTGREEN = 13
|
||||
LTBLUE = 14
|
||||
LTGREY = 15
|
||||
|
||||
;vic memory banks
|
||||
GRBANK0 = %11
|
||||
GRBANK1 = %10
|
||||
GRBANK2 = %01
|
||||
GRBANK3 = %00
|
||||
|
||||
;screen
|
||||
VIC_X_POS_OFF = 24
|
||||
VIC_Y_POS_OFF = 50
|
||||
SC_BYTE_WIDTH = 40
|
||||
SC_PIX_HEIGHT = 200
|
||||
SC_PIX_WIDTH = 320
|
||||
SC_SIZE = 8000
|
||||
;128 screen size constants
|
||||
SCREENBYTEWIDTH = 80
|
||||
SCREENPIXELWIDTH = 640
|
||||
|
||||
|
||||
;control characters
|
||||
EOF = 0
|
||||
BACKSPACE = 8
|
||||
FORWARDSPACE = 9
|
||||
TAB = 9
|
||||
LF = 10
|
||||
HOME = 11
|
||||
PAGE_BREAK = 12
|
||||
UPLINE = 12
|
||||
CR = 13
|
||||
ULINEON = 14
|
||||
ULINEOFF = 15
|
||||
ESC_GRAPHICS = 16
|
||||
ESC_RULER = 17
|
||||
REV_ON = 18
|
||||
REV_OFF = 19
|
||||
GOTOX = 20
|
||||
GOTOY = 21
|
||||
GOTOXY = 22
|
||||
NEWCARDSET = 23
|
||||
BOLDON = 24
|
||||
ITALICON = 25
|
||||
OUTLINEON = 26
|
||||
PLAINTEXT = 27
|
||||
|
||||
;keyboard
|
||||
KEY_F1 = 1
|
||||
KEY_F2 = 2
|
||||
KEY_F3 = 3
|
||||
KEY_F4 = 4
|
||||
KEY_F5 = 5
|
||||
KEY_F6 = 6
|
||||
KEY_NOSCRL = 7
|
||||
KEY_ENTER = 11
|
||||
KEY_F7 = 14
|
||||
KEY_F8 = 15
|
||||
KEY_UP = 16
|
||||
KEY_DOWN = 17
|
||||
KEY_HOME = 18
|
||||
KEY_CLEAR = 19
|
||||
KEY_LARROW = 20
|
||||
KEY_UPARROR = 21
|
||||
KEY_STOP = 22
|
||||
KEY_RUN = 23
|
||||
KEY_BPS = 24
|
||||
KEY_HELP = 25
|
||||
KEY_ALT = 26
|
||||
KEY_ESC = 27
|
||||
KEY_INSERT = 28
|
||||
KEY_DELETE = 29
|
||||
KEY_RIGHT = 30
|
||||
KEY_INVALID = 31
|
||||
KEY_LEFT = BACKSPACE
|
||||
|
||||
;DialogBox
|
||||
; icons
|
||||
OK = 1
|
||||
CANCEL = 2
|
||||
YES = 3
|
||||
NO = 4
|
||||
OPEN = 5
|
||||
DISK = 6
|
||||
; commands
|
||||
DBTXTSTR = 11
|
||||
DBVARSTR = 12
|
||||
DBGETSTRING = 13
|
||||
DBSYSOPV = 14
|
||||
DBGRPHSTR = 15
|
||||
DBGETFILES = 16
|
||||
DBOPVEC = 17
|
||||
DBUSRICON = 18
|
||||
DB_USR_ROUT = 19
|
||||
; tabulation in standard window
|
||||
DBI_X_0 = 1
|
||||
DBI_X_1 = 9
|
||||
DBI_X_2 = 17
|
||||
DBI_Y_0 = 8
|
||||
DBI_Y_1 = 40
|
||||
DBI_Y_2 = 72
|
||||
; standard window
|
||||
SET_DB_POS = 0
|
||||
DEF_DB_POS = $80
|
||||
DEF_DB_TOP = 32
|
||||
DEF_DB_BOT = 127
|
||||
DEF_DB_LEFT = 64
|
||||
DEF_DB_RIGHT = 255
|
||||
; text tabulation
|
||||
TXT_LN_1_Y = 16
|
||||
TXT_LN_2_Y = 32
|
||||
TXT_LN_3_Y = 48
|
||||
TXT_LN_4_Y = 64
|
||||
TXT_LN_5_Y = 80
|
||||
TXT_LN_X = 16
|
||||
; ???
|
||||
SYSDBI_HEIGHT = 16
|
||||
SYSDBI_WIDTH = 6
|
||||
|
||||
;GraphicsString - commands
|
||||
MOVEPENTO = 1
|
||||
LINETO = 2
|
||||
RECTANGLETO = 3
|
||||
NEWPATTERN = 5
|
||||
ESC_PUTSTRING = 6
|
||||
FRAME_RECTO = 7
|
||||
PEN_X_DELTA = 8
|
||||
PEN_Y_DELTA = 9
|
||||
PEN_XY_DELTA = 10
|
||||
|
||||
|
||||
;DoMenu - menutypes
|
||||
MENU_ACTION = $00
|
||||
DYN_SUB_MENU = $40
|
||||
SUB_MENU = $80
|
||||
HORIZONTAL = %00000000
|
||||
VERTICAL = %10000000
|
||||
|
||||
;Errors
|
||||
ANY_FAULT = %11110000
|
||||
NO_BLOCKS = 1
|
||||
INV_TRACK = 2
|
||||
INSUFF_SPACE = 3
|
||||
FULL_DIRECTORY = 4
|
||||
FILE_NOT_FOUND = 5
|
||||
BAD_BAM = 6
|
||||
UNOPENED_VLIR = 7
|
||||
INV_RECORD = 8
|
||||
OUT_OF_RECORDS = 9
|
||||
STRUCT_MISMAT = 10
|
||||
BFR_OVERFLOW = 11
|
||||
CANCEL_ERR = 12
|
||||
DEV_NOT_FOUND = 13
|
||||
INCOMPATIBLE = 14
|
||||
HDR_NOT_THERE = $20
|
||||
NO_SYNC = $21
|
||||
DBLK_NOT_THERE = $22
|
||||
DAT_CHKSUM_ERR = $23
|
||||
WR_VER_ERR = $25
|
||||
WR_PR_ON = $26
|
||||
HDR_CHKSUM_ERR = $27
|
||||
DSK_ID_MISMAT = $29
|
||||
BYTE_DEC_ERR = $2e
|
||||
DOS_MISMATCH = $73
|
||||
|
||||
;Offsets
|
||||
; ???
|
||||
OFF_INDEX_PTR = 1
|
||||
; icons
|
||||
OFF_NM_ICNS = 0
|
||||
OFF_IC_XMOUSE = 1
|
||||
OFF_IC_YMOUSE = 3
|
||||
OFF_PIC_ICON = 0
|
||||
OFF_X_ICON_POS = 2
|
||||
OFF_Y_ICON_POS = 3
|
||||
OFF_WDTH_ICON = 4
|
||||
OFF_HEIGHT_ICON = 5
|
||||
OFF_SRV_RT_ICON = 6
|
||||
OFF_NX_ICON = 8
|
||||
; menu
|
||||
OFF_MY_TOP = 0
|
||||
OFF_MY_BOT = 1
|
||||
OFF_MX_LEFT = 2
|
||||
OFF_MX_RIGHT = 4
|
||||
OFF_NUM_M_ITEMS = 6
|
||||
OFF_1ST_M_ITEM = 7
|
||||
; dialog box
|
||||
OFF_DB_FORM = 0
|
||||
OFF_DB_TOP = 1
|
||||
OFF_DB_BOT = 2
|
||||
OFF_DB_LEFT = 3
|
||||
OFF_DB_RIGHT = 5
|
||||
OFF_DB_1STCMD = 7
|
||||
; directory
|
||||
; disk header
|
||||
OFF_TO_BAM = 4
|
||||
OFF_DISK_NAME = 144
|
||||
OFF_GS_DTYPE = 189
|
||||
OFF_OP_TR_SC = 171
|
||||
OFF_GS_ID = 173
|
||||
; dir entry
|
||||
FRST_FILE_ENTRY = 2
|
||||
OFF_CFILE_TYPE = 0
|
||||
OFF_DE_TR_SC = 1
|
||||
OFF_FNAME = 3
|
||||
OFF_GHDR_PTR = 19
|
||||
OFF_GSTRUC_TYPE = 21
|
||||
OFF_GFILE_TYPE = 22
|
||||
OFF_YEAR = 23
|
||||
OFF_SIZE = 28
|
||||
OFF_NXT_FILE = 32
|
||||
; file header
|
||||
O_GHIC_WIDTH = 2
|
||||
O_GHIC_HEIGHT = 3
|
||||
O_GHIC_PIC = 4
|
||||
O_GHCMDR_TYPE = 68
|
||||
O_GHGEOS_TYPE = 69
|
||||
O_GHSTR_TYPE = 70
|
||||
O_GHST_ADDR = 71
|
||||
O_GHEND_ADDR = 73
|
||||
O_GHST_VEC = 75
|
||||
O_GHFNAME = 77
|
||||
O_128_FLAGS = 96
|
||||
O_GH_AUTHOR = 97
|
||||
O_GHP_DISK = 97
|
||||
O_GHP_FNAME = 117
|
||||
O_GHINFO_TXT = $a0
|
||||
|
||||
;values for config - C128 mmu
|
||||
CIOIN = $7E ;60K RAM, 4K I/O space in
|
||||
CRAM64K = $7F ;64K RAM
|
||||
CKRNLBASIOIN = $40 ;kernal, I/O and basic ROM's mapped into memory
|
||||
CKRNLIOIN = $4E ;Kernal ROM and I/O space mapped in
|
||||
|
||||
;values of faultData - pointer position vs. mouseTop/Bottom/Left/Right
|
||||
; bit numbers
|
||||
OFFTOP_BIT = 7
|
||||
OFFBOTTOM_BIT = 6
|
||||
OFFLEFT_BIT = 5
|
||||
OFFRIGHT_BIT = 4
|
||||
OFFMENU_BIT = 3
|
||||
; masks
|
||||
SET_OFFTOP = %10000000
|
||||
SET_OFFBOTTOM = %01000000
|
||||
SET_OFFLEFT = %00100000
|
||||
SET_OFFRIGHT = %00010000
|
||||
SET_OFFMENU = %00001000
|
||||
|
||||
;values of currentMode
|
||||
; bit numbers
|
||||
UNDERLINE_BIT = 7
|
||||
BOLD_BIT = 6
|
||||
REVERSE_BIT = 5
|
||||
ITALIC_BIT = 4
|
||||
OUTLINE_BIT = 3
|
||||
SUPERSCRIPT_BIT = 2
|
||||
SUBSCRIPT_BIT = 1
|
||||
; masks
|
||||
SET_UNDERLINE = %10000000
|
||||
SET_BOLD = %01000000
|
||||
SET_REVERSE = %00100000
|
||||
SET_ITALIC = %00010000
|
||||
SET_OUTLINE = %00001000
|
||||
SET_SUPERSCRIPT = %00000100
|
||||
SET_SUBSCRIPT = %00000010
|
||||
SET_PLAINTEXT = %00000000
|
||||
|
||||
;Process control variable
|
||||
; bit numbers
|
||||
RUNABLE_BIT = 7
|
||||
BLOCKED_BIT = 6
|
||||
FROZEN_BIT = 5
|
||||
NOTIMER_BIT = 4
|
||||
; masks
|
||||
SET_RUNABLE = %10000000
|
||||
SET_BLOCKED = %01000000
|
||||
SET_FROZEN = %00100000
|
||||
SET_NOTIMER = %00010000
|
||||
|
||||
;mouseOn
|
||||
; bit numbers
|
||||
MOUSEON_BIT = 7
|
||||
MENUON_BIT = 6
|
||||
ICONSON_BIT = 5
|
||||
; masks
|
||||
SET_MSE_ON = %10000000
|
||||
SET_MENUON = %01000000
|
||||
SET_ICONSON = %00100000
|
||||
|
||||
;pressFlag
|
||||
; bit numbers
|
||||
KEYPRESS_BIT = 7
|
||||
INPUT_BIT = 6
|
||||
MOUSE_BIT = 5
|
||||
; masks
|
||||
SET_KEYPRESS = %10000000
|
||||
SET_INPUTCHG = %01000000
|
||||
SET_MOUSE = %00100000
|
||||
|
||||
;dispBufferOn
|
||||
ST_WRGS_FORE = $20
|
||||
ST_WR_BACK = $40
|
||||
ST_WR_FORE = $80
|
||||
|
||||
;alarmSetFlag
|
||||
ALARMMASK = %00000100
|
||||
|
||||
;PutDecimal
|
||||
;leading zeroes
|
||||
SET_NOSURPRESS = %00000000
|
||||
SET_SURPRESS = %01000000
|
||||
;justification
|
||||
SET_RIGHTJUST = %00000000
|
||||
SET_LEFTJUST = %10000000
|
||||
|
||||
;icons, menus status flags
|
||||
ST_FLASH = $80
|
||||
ST_INVERT = $40
|
||||
ST_LD_AT_ADDR = $01
|
||||
ST_LD_DATA = $80
|
||||
ST_PR_DATA = $40
|
||||
ST_WR_PR = $40
|
||||
|
||||
;???
|
||||
ADD1_W = $2000
|
||||
DOUBLE_B = $80
|
||||
DOUBLE_W = $8000
|
||||
|
||||
CLR_SAVE = %01000000
|
||||
CONSTRAINED = %01000000
|
||||
UN_CONSTRAINED = %00000000
|
||||
FG_SAVE = %10000000
|
||||
|
||||
FUTURE1 = 7
|
||||
FUTURE2 = 8
|
||||
FUTURE3 = 9
|
||||
FUTURE4 = 10
|
||||
USELAST = 127
|
||||
SHORTCUT = 128
|
||||
42
libsrc/geos/inc/diskdrv.inc
Normal file
42
libsrc/geos/inc/diskdrv.inc
Normal file
@@ -0,0 +1,42 @@
|
||||
|
||||
;GEOS Disk Driver JumpTab
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
;pointers
|
||||
_InitForIO = $9000
|
||||
_DoneWithIO = $9002
|
||||
_ExitTurbo = $9004
|
||||
_PurgeTurbo = $9006
|
||||
_EnterTurbo = $9008
|
||||
_ChangeDiskDevice = $900a
|
||||
_NewDisk = $900c
|
||||
_ReadBlock = $900e
|
||||
_WriteBlock = $9010
|
||||
_VerWriteBlock = $9012
|
||||
_OpenDisk = $9014
|
||||
_GetBlock = $9016
|
||||
_PutBlock = $9018
|
||||
_GetDirHead = $901a
|
||||
_PutDirHead = $901c
|
||||
_GetFreeDirBlk = $901e
|
||||
_CalcBlksFree = $9020
|
||||
_FreeBlock = $9022
|
||||
_SetNextFree = $9024
|
||||
_FindBAMBit = $9026
|
||||
_NxtBlkAlloc = $9028
|
||||
_BlkAlloc = $902a
|
||||
_ChkDkGEOS = $902c
|
||||
_SetGEOSDisk = $902e
|
||||
|
||||
;jump table
|
||||
Get1stDirEntry = $9030
|
||||
GetNxtDirEntry = $9033
|
||||
GetBorder = $9036
|
||||
AddDirBlock = $9039
|
||||
ReadBuff = $903c
|
||||
WriteBuff = $903f
|
||||
;??? = $9042
|
||||
;??? = $9045
|
||||
AllocateBlock = $9048
|
||||
ReadLink = $904b
|
||||
263
libsrc/geos/inc/geosmac.ca65.inc
Normal file
263
libsrc/geos/inc/geosmac.ca65.inc
Normal file
@@ -0,0 +1,263 @@
|
||||
|
||||
;GEOS macros
|
||||
;reassembled for 6502TASM/MMS by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
;28-6-99 - ca65 port
|
||||
;macro 'sub' renamed to 'ssub' due to 65816 mnemonics
|
||||
|
||||
|
||||
.macro LoadB dest, value
|
||||
lda #value
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro LoadW dest, value
|
||||
lda #>value
|
||||
sta dest+1
|
||||
.if (>value)<>(<value)
|
||||
lda #<value
|
||||
.endif
|
||||
sta dest+0
|
||||
.endmacro
|
||||
|
||||
.macro MoveB source, dest
|
||||
lda source
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro MoveW source, dest
|
||||
MoveB source+1, dest+1
|
||||
MoveB source+0, dest+0
|
||||
.endmacro
|
||||
|
||||
.macro add source
|
||||
clc
|
||||
adc source
|
||||
.endmacro
|
||||
|
||||
.macro AddB source, dest
|
||||
lda source
|
||||
add dest
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro AddW source, dest
|
||||
AddB source+0, dest+0
|
||||
lda source+1
|
||||
adc dest+1
|
||||
sta dest+1
|
||||
.endmacro
|
||||
|
||||
.macro AddVB value, dest
|
||||
lda dest
|
||||
clc
|
||||
adc #value
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro AddVW value, dest
|
||||
.local Skip
|
||||
clc
|
||||
lda #<value
|
||||
adc dest+0
|
||||
sta dest+0
|
||||
.if (>value)=0
|
||||
bcc Skip
|
||||
inc dest+1
|
||||
.else
|
||||
lda #>value
|
||||
adc dest+1
|
||||
sta dest+1
|
||||
.endif
|
||||
Skip:
|
||||
.endmacro
|
||||
|
||||
.macro ssub source
|
||||
sec
|
||||
sbc source
|
||||
.endmacro
|
||||
|
||||
.macro SubB source, dest
|
||||
lda dest
|
||||
ssub source
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro SubW source, dest
|
||||
SubB source+0, dest+0
|
||||
lda dest+1
|
||||
sbc source+1
|
||||
sta dest+1
|
||||
.endmacro
|
||||
|
||||
.macro SubVW value, dest
|
||||
sec
|
||||
lda dest+0
|
||||
sbc #<value
|
||||
sta dest+0
|
||||
lda dest+1
|
||||
sbc #>value
|
||||
sta dest+1
|
||||
.endmacro
|
||||
|
||||
.macro CmpB source, dest
|
||||
lda source
|
||||
cmp dest
|
||||
.endmacro
|
||||
|
||||
.macro CmpBI source, immed
|
||||
lda source
|
||||
cmp #immed
|
||||
.endmacro
|
||||
|
||||
.macro CmpW source, dest
|
||||
.local Skip
|
||||
CmpB source+1, dest+1
|
||||
bne Skip
|
||||
CmpB source+0, dest+0
|
||||
Skip:
|
||||
.endmacro
|
||||
|
||||
.macro CmpWI source, immed
|
||||
.local Skip
|
||||
CmpBI source+1, >immed
|
||||
bne Skip
|
||||
CmpBI source+0, <immed
|
||||
Skip:
|
||||
.endmacro
|
||||
|
||||
.macro PushB source
|
||||
lda source
|
||||
pha
|
||||
.endmacro
|
||||
|
||||
.macro PushW source
|
||||
PushB source+1
|
||||
PushB source+0
|
||||
.endmacro
|
||||
|
||||
.macro PopB dest
|
||||
pla
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro PopW dest
|
||||
PopB dest+0
|
||||
PopB dest+1
|
||||
.endmacro
|
||||
|
||||
.macro bra addr
|
||||
clv
|
||||
bvc addr
|
||||
.endmacro
|
||||
|
||||
.macro smb bitNumber, dest
|
||||
pha
|
||||
lda #(1 << bitNumber)
|
||||
ora dest
|
||||
sta dest
|
||||
pla
|
||||
.endmacro
|
||||
|
||||
.macro smbf bitNumber, dest
|
||||
lda #(1 << bitNumber)
|
||||
ora dest
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro rmb bitNumber, dest
|
||||
pha
|
||||
lda #(1 << bitNumber) ^ $ff
|
||||
ora dest
|
||||
sta dest
|
||||
pla
|
||||
.endmacro
|
||||
|
||||
.macro rmbf bitNumber, dest
|
||||
lda #(1 << bitNumber) ^ $ff
|
||||
ora dest
|
||||
sta dest
|
||||
.endmacro
|
||||
|
||||
.macro bbs bitNumber, source, addr
|
||||
.local Skip
|
||||
php
|
||||
pha
|
||||
lda source
|
||||
and #(1 << bitNumber)
|
||||
beq Skip
|
||||
pla
|
||||
plp
|
||||
bra addr
|
||||
Skip: pla
|
||||
plp
|
||||
.endmacro
|
||||
|
||||
.macro bbsf bitNumber, source, addr
|
||||
.if bitNumber=7
|
||||
bit source
|
||||
bmi addr
|
||||
.else
|
||||
.if bitNumber=6
|
||||
bit source
|
||||
bvs addr
|
||||
.else
|
||||
lda source
|
||||
and #(1 << bitNumber)
|
||||
bne addr
|
||||
.endif
|
||||
.endif
|
||||
.endmacro
|
||||
|
||||
.macro bbr bitNumber, source, addr
|
||||
.local Skip
|
||||
php
|
||||
pha
|
||||
lda source
|
||||
and #(1 << bitNumber)
|
||||
bne Skip
|
||||
pla
|
||||
plp
|
||||
bra addr
|
||||
Skip: pla
|
||||
plp
|
||||
.endmacro
|
||||
|
||||
.macro bbrf bitNumber, source, addr
|
||||
.if bitNumber=7
|
||||
bit source
|
||||
bpl addr
|
||||
.else
|
||||
.if bitNumber=6
|
||||
bit source
|
||||
bvc addr
|
||||
.else
|
||||
lda source
|
||||
and #(1 << bitNumber)
|
||||
beq addr
|
||||
.endif
|
||||
.endif
|
||||
.endmacro
|
||||
|
||||
;03.03.99 by Maciej Witkowiak
|
||||
|
||||
.macro addv value
|
||||
clc
|
||||
adc #value
|
||||
.endmacro
|
||||
|
||||
.macro subv value
|
||||
sec
|
||||
sbc #value
|
||||
.endmacro
|
||||
|
||||
.macro bnex addr
|
||||
txa
|
||||
bne addr
|
||||
.endmacro
|
||||
|
||||
.macro beqx addr
|
||||
txa
|
||||
beq addr
|
||||
.endmacro
|
||||
320
libsrc/geos/inc/geossym.inc
Normal file
320
libsrc/geos/inc/geossym.inc
Normal file
@@ -0,0 +1,320 @@
|
||||
|
||||
;GEOS variable memory locations sorted by address
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
zpage = $0000
|
||||
;
|
||||
|
||||
CPU_DDR = $00
|
||||
CPU_DATA = $01
|
||||
;
|
||||
r0 = $02
|
||||
r0L = $02
|
||||
r0H = $03
|
||||
r1 = $04
|
||||
r1L = $04
|
||||
r1H = $05
|
||||
r2 = $06
|
||||
r2L = $06
|
||||
r2H = $07
|
||||
r3 = $08
|
||||
r3L = $08
|
||||
r3H = $09
|
||||
r4 = $0a
|
||||
r4L = $0a
|
||||
r4H = $0b
|
||||
r5 = $0c
|
||||
r5L = $0c
|
||||
r5H = $0d
|
||||
r6 = $0e
|
||||
r6L = $0e
|
||||
r6H = $0f
|
||||
r7 = $10
|
||||
r7L = $10
|
||||
r7H = $11
|
||||
r8 = $12
|
||||
r8L = $12
|
||||
r8H = $13
|
||||
r9 = $14
|
||||
r9L = $14
|
||||
r9H = $15
|
||||
r10 = $16
|
||||
r10L = $16
|
||||
r10H = $17
|
||||
r11 = $18
|
||||
r11L = $18
|
||||
r11H = $19
|
||||
r12 = $1a
|
||||
r12L = $1a
|
||||
r12H = $1b
|
||||
r13 = $1c
|
||||
r13L = $1c
|
||||
r13H = $1d
|
||||
r14 = $1e
|
||||
r14L = $1e
|
||||
r14H = $1f
|
||||
r15 = $20
|
||||
r15L = $20
|
||||
r15H = $21
|
||||
;
|
||||
a0 = $fb
|
||||
a0L = $fb
|
||||
a0H = $fc
|
||||
a1 = $fd
|
||||
a1L = $fd
|
||||
a1H = $fe
|
||||
a2 = $70
|
||||
a2L = $70
|
||||
a2H = $71
|
||||
a3 = $72
|
||||
a3L = $72
|
||||
a3H = $73
|
||||
a4 = $74
|
||||
a4L = $74
|
||||
a4H = $75
|
||||
a5 = $76
|
||||
a5L = $76
|
||||
a5H = $77
|
||||
a6 = $78
|
||||
a6L = $78
|
||||
a6H = $79
|
||||
a7 = $7a
|
||||
a7L = $7a
|
||||
a7H = $7b
|
||||
a8 = $7c
|
||||
a8L = $7c
|
||||
a8H = $7d
|
||||
a9 = $7e
|
||||
a9L = $7e
|
||||
a9H = $7f
|
||||
|
||||
;
|
||||
|
||||
curPattern = $22
|
||||
string = $24
|
||||
baselineOffset = $26
|
||||
curSetWidth = $27
|
||||
curHeight = $29
|
||||
curIndexTable = $2a
|
||||
cardDataPntr = $2c
|
||||
currentMode = $2e
|
||||
dispBufferOn = $2f
|
||||
mouseOn = $30
|
||||
RAM_64K = $30
|
||||
msePicPtr = $31
|
||||
windowTop = $33
|
||||
windowBottom = $34
|
||||
leftMargin = $35
|
||||
IO_IN = $35
|
||||
KRNL_IO_IN = $36
|
||||
rightMargin = $37
|
||||
KRNL_BAS_IO_IN = $37
|
||||
pressFlag = $39
|
||||
mouseXPos = $3a
|
||||
mouseYPos = $3c
|
||||
returnAddress = $3d
|
||||
graphMode = $3f
|
||||
TURBO_DD00 = $8e ; from 1541 turbo
|
||||
TURBO_DD00_CPY = $8f ; from 1541 turbo
|
||||
STATUS = $90
|
||||
curDevice = $ba
|
||||
;
|
||||
errno = $91 ; custom error return code
|
||||
;
|
||||
irqvec = $0314
|
||||
bkvec = $0316
|
||||
nmivec = $0318
|
||||
;
|
||||
APP_RAM = $0400
|
||||
BACK_SCR_BASE = $6000
|
||||
PRINTBASE = $7900
|
||||
OS_VARS = $8000
|
||||
;
|
||||
diskBlkBuf = $8000
|
||||
fileHeader = $8100
|
||||
curDirHead = $8200
|
||||
fileTrScTab = $8300
|
||||
dirEntryBuf = $8400
|
||||
DrACurDkNm = $841e
|
||||
DrBCurDkNm = $8430
|
||||
dataFileName = $8442
|
||||
dataDiskName = $8453
|
||||
PrntFilename = $8465
|
||||
PrntDiskName = $8476
|
||||
curDrive = $8489
|
||||
diskOpenFlg = $848a
|
||||
isGEOS = $848b
|
||||
interleave = $848c
|
||||
NUMDRV = $848d
|
||||
driveType = $848e
|
||||
_driveType = driveType-8
|
||||
turboFlags = $8492
|
||||
_turboFlags = turboFlags-8
|
||||
curRecord = $8496
|
||||
usedRecords = $8497
|
||||
fileWritten = $8498
|
||||
fileSize = $8499
|
||||
appMain = $849b
|
||||
intTopVector = $849d
|
||||
intBotVector = $849f
|
||||
mouseVector = $84a1
|
||||
keyVector = $84a3
|
||||
inputVector = $84a5
|
||||
mouseFaultVec = $84a7
|
||||
otherPressVec = $84a9
|
||||
StringFaultVec = $84ab
|
||||
alarmTmtVector = $84ad
|
||||
BRKVector = $84af
|
||||
RecoverVector = $84b1
|
||||
selectionFlash = $84b3
|
||||
alphaFlag = $84b4
|
||||
iconSelFlg = $84b5
|
||||
faultData = $84b6
|
||||
menuNumber = $84b7
|
||||
mouseTop = $84b8
|
||||
mouseBottom = $84b9
|
||||
mouseLeft = $84ba
|
||||
mouseRight = $84bc
|
||||
stringX = $84be
|
||||
stringY = $84c0
|
||||
mousePicData = $84c1
|
||||
maxMouseSpeed = $8501
|
||||
minMouseSpeed = $8502
|
||||
mouseAccel = $8503
|
||||
keyData = $8504
|
||||
mouseData = $8505
|
||||
inputData = $8506
|
||||
mouseSpeed = $8507
|
||||
random = $850a
|
||||
saveFontTab = $850c
|
||||
dblClickCount = $8515
|
||||
year = $8516
|
||||
month = $8517
|
||||
day = $8518
|
||||
hour = $8519
|
||||
minutes = $851a
|
||||
seconds = $851b
|
||||
alarmSetFlag = $851c
|
||||
sysDBData = $851d
|
||||
screencolors = $851e
|
||||
dlgBoxRamBuf = $851f ; to $8697
|
||||
;
|
||||
;$8698 - $8877 - various system data (keyboard queue, VLIR t&s, DBox, Menu, timers)
|
||||
;
|
||||
savedmoby2 = $88bb
|
||||
scr80polar = $88bc
|
||||
scr80colors = $88bd
|
||||
vdcClrMode = $88be
|
||||
driveData = $88bf
|
||||
ramExpSize = $88c3
|
||||
sysRAMFlg = $88c4
|
||||
firstBoot = $88c5
|
||||
curType = $88c6
|
||||
ramBase = $88c7
|
||||
inputDevName = $88cb
|
||||
memBase = $88cf ;???
|
||||
DrCCurDkNm = $88dc
|
||||
DrDCurDkNm = $88ee
|
||||
dir2Head = $8900
|
||||
;
|
||||
SPRITE_PICS = $8a00
|
||||
spr0pic = $8a00
|
||||
spr1pic = $8a40
|
||||
spr2pic = $8a80
|
||||
spr3pic = $8ac0
|
||||
spr4pic = $8b00
|
||||
spr5pic = $8b40
|
||||
spr6pic = $8b80
|
||||
spr7pic = $8bc0
|
||||
COLOR_MATRIX = $8c00
|
||||
;
|
||||
obj0Pointer = $8ff8
|
||||
obj1Pointer = $8ff9
|
||||
obj2Pointer = $8ffa
|
||||
obj3Pointer = $8ffb
|
||||
obj4Pointer = $8ffc
|
||||
obj5Pointer = $8ffd
|
||||
obj6Pointer = $8ffe
|
||||
obj7Pointer = $8fff
|
||||
;
|
||||
DISK_BASE = $9000
|
||||
SCREEN_BASE = $a000
|
||||
OS_ROM = $c000
|
||||
OS_JUMPTAB = $c100
|
||||
RAMC_BASE = $de00
|
||||
RAMC_WINDOW = $df00
|
||||
EXP_BASE = $df00
|
||||
MOUSE_BASE_128 = $fd00
|
||||
MOUSE_JMP_128 = $fd00
|
||||
END_MOUSE_128 = $fe80
|
||||
MOUSE_BASE = $fe80
|
||||
MOUSE_JMP = $fe80
|
||||
config = $ff00
|
||||
END_MOUSE = $fffa
|
||||
NMI_VECTOR = $fffa
|
||||
RESET_VECTOR = $fffc
|
||||
IRQ_VECTOR = $fffe
|
||||
;
|
||||
vicbase = $d000
|
||||
sidbase = $d400
|
||||
mmu = $d500
|
||||
VDC = $d600
|
||||
ctab = $d800
|
||||
cia1base = $dc00
|
||||
cia2base = $dd00
|
||||
;
|
||||
mob0xpos = $d000
|
||||
mob0ypos = $d001
|
||||
mob1xpos = $d002
|
||||
mob1ypos = $d003
|
||||
mob2xpos = $d004
|
||||
mob2ypos = $d005
|
||||
mob3xpos = $d006
|
||||
mob3ypos = $d007
|
||||
mob4xpos = $d008
|
||||
mob4ypos = $d009
|
||||
mob5xpos = $d00a
|
||||
mob5ypos = $d00b
|
||||
mob6xpos = $d00c
|
||||
mob6ypos = $d00d
|
||||
mob7xpos = $d00e
|
||||
mob7ypos = $d00f
|
||||
msbxpos = $d010
|
||||
grcntrl1 = $d011
|
||||
rasreg = $d012
|
||||
lpxpos = $d013
|
||||
lpypos = $d014
|
||||
mobenble = $d015
|
||||
grcntrl2 = $d016
|
||||
grmemptr = $d018
|
||||
grirq = $d019
|
||||
grirqen = $d01a
|
||||
moby2 = $d017
|
||||
mobprior = $d01b
|
||||
mobmcm = $d01c
|
||||
mobx2 = $d01d
|
||||
mobmobcol = $d01e
|
||||
mobbakcol = $d01f
|
||||
extclr = $d020
|
||||
bakclr0 = $d021
|
||||
bakclr1 = $d022
|
||||
bakclr2 = $d023
|
||||
bakclr3 = $d024
|
||||
mcmclr0 = $d025
|
||||
mcmclr1 = $d026
|
||||
mob0clr = $d027
|
||||
mob1clr = $d028
|
||||
mob2clr = $d029
|
||||
mob3clr = $d02a
|
||||
mob4clr = $d02b
|
||||
mob5clr = $d02c
|
||||
mob6clr = $d02d
|
||||
mob7clr = $d02e
|
||||
keyreg = $d02f
|
||||
clkreg = $d030
|
||||
|
||||
;
|
||||
vdcreg = $d600
|
||||
vdcdata = $d601
|
||||
;
|
||||
11
libsrc/geos/inc/geossym2.inc
Normal file
11
libsrc/geos/inc/geossym2.inc
Normal file
@@ -0,0 +1,11 @@
|
||||
|
||||
;GEOS various variables in OS_ROM area
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
bootName = $c006
|
||||
version = $c00f
|
||||
nationality = $c010
|
||||
sysFlgCopy = $c012
|
||||
c128Flag = $c013
|
||||
dateCopy = $c018
|
||||
16
libsrc/geos/inc/inputdrv.inc
Normal file
16
libsrc/geos/inc/inputdrv.inc
Normal file
@@ -0,0 +1,16 @@
|
||||
|
||||
;GEOS Input Driver Jump Tab
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
;for C64
|
||||
;MOUSE_JMP = $fe80
|
||||
SlowMouse = $fe83
|
||||
UpdateMouse = $fe86
|
||||
SetMouse = $fe89
|
||||
|
||||
;for C128
|
||||
;MOUSE_JMP_128 = $fd00
|
||||
SlowMouse_128 = $fd03
|
||||
UpdateMouse_128 = $fd06
|
||||
SetMouse_128 = $fd09
|
||||
178
libsrc/geos/inc/jumptab.inc
Normal file
178
libsrc/geos/inc/jumptab.inc
Normal file
@@ -0,0 +1,178 @@
|
||||
|
||||
;GEOS System Jump Table
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
;jump table
|
||||
InterruptMain = $c100
|
||||
InitProcesses = $c103
|
||||
RestartProcess = $c106
|
||||
EnableProcess = $c109
|
||||
BlockProcess = $c10c
|
||||
UnBlockProcess = $c10f
|
||||
FreezeProcess = $c112
|
||||
UnFreezeProcess = $c115
|
||||
HorizontalLine = $c118
|
||||
InvertLine = $c11b
|
||||
RecoverLine = $c11e
|
||||
VerticalLine = $c121
|
||||
Rectangle = $c124
|
||||
FrameRectangle = $c127
|
||||
InvertRectangle = $c12a
|
||||
RecoverRectangle = $c12d
|
||||
DrawLine = $c130
|
||||
DrawPoint = $c133
|
||||
GraphicsString = $c136
|
||||
SetPattern = $c139
|
||||
GetScanLine = $c13c
|
||||
TestPoint = $c13f
|
||||
BitmapUp = $c142
|
||||
PutChar = $c145
|
||||
PutString = $c148
|
||||
UseSystemFont = $c14b
|
||||
StartMouseMode = $c14e
|
||||
DoMenu = $c151
|
||||
RecoverMenu = $c154
|
||||
RecoverAllMenus = $c157
|
||||
DoIcons = $c15a
|
||||
DShiftLeft = $c15d
|
||||
BBMult = $c160
|
||||
BMult = $c163
|
||||
DMult = $c166
|
||||
Ddiv = $c169
|
||||
DSdiv = $c16c
|
||||
Dabs = $c16f
|
||||
Dnegate = $c172
|
||||
Ddec = $c175
|
||||
ClearRam = $c178
|
||||
FillRam = $c17b
|
||||
MoveData = $c17e
|
||||
InitRam = $c181
|
||||
PutDecimal = $c184
|
||||
GetRandom = $c187
|
||||
MouseUp = $c18a
|
||||
MouseOff = $c18d
|
||||
DoPreviousMenu = $c190
|
||||
ReDoMenu = $c193
|
||||
GetSerialNumber = $c196
|
||||
Sleep = $c199
|
||||
ClearMouseMode = $c19c
|
||||
i_Rectangle = $c19f
|
||||
i_FrameRectangle = $c1a2
|
||||
i_RecoverRectangle = $c1a5
|
||||
i_GraphicsString = $c1a8
|
||||
i_BitmapUp = $c1ab
|
||||
i_PutString = $c1ae
|
||||
GetRealSize = $c1b1
|
||||
i_FillRam = $c1b4
|
||||
i_MoveData = $c1b7
|
||||
GetString = $c1ba
|
||||
GotoFirstMenu = $c1bd
|
||||
InitTextPrompt = $c1c0
|
||||
MainLoop = $c1c3
|
||||
DrawSprite = $c1c6
|
||||
GetCharWidth = $c1c9
|
||||
LoadCharSet = $c1cc
|
||||
PosSprite = $c1cf
|
||||
EnablSprite = $c1d2
|
||||
DisablSprite = $c1d5
|
||||
CallRoutine = $c1d8
|
||||
CalcBlksFree = $c1db
|
||||
ChkDkGEOS = $c1de
|
||||
NewDisk = $c1e1
|
||||
GetBlock = $c1e4
|
||||
PutBlock = $c1e7
|
||||
SetGEOSDisk = $c1ea
|
||||
SaveFile = $c1ed
|
||||
SetGDirEntry = $c1f0
|
||||
BldGDirEntry = $c1f3
|
||||
GetFreeDirBlk = $c1f6
|
||||
WriteFile = $c1f9
|
||||
BlkAlloc = $c1fc
|
||||
ReadFile = $c1ff
|
||||
SmallPutChar = $c202
|
||||
FollowChain = $c205
|
||||
GetFile = $c208
|
||||
FindFile = $c20b
|
||||
CRC = $c20e
|
||||
LdFile = $c211
|
||||
EnterTurbo = $c214
|
||||
LdDeskAcc = $c217
|
||||
ReadBlock = $c21a
|
||||
LdApplic = $c21d
|
||||
WriteBlock = $c220
|
||||
VerWriteBlock = $c223
|
||||
FreeFile = $c226
|
||||
GetFHdrInfo = $c229
|
||||
EnterDeskTop = $c22c
|
||||
StartAppl = $c22f
|
||||
ExitTurbo = $c232
|
||||
PurgeTurbo = $c235
|
||||
DeleteFile = $c238
|
||||
FindFTypes = $c23b
|
||||
RstrAppl = $c23e
|
||||
ToBASIC = $c241
|
||||
FastDelFile = $c244
|
||||
GetDirHead = $c247
|
||||
PutDirHead = $c24a
|
||||
NxtBlkAlloc = $c24d
|
||||
ImprintRectangle = $c250
|
||||
i_ImprintRectangle = $c253
|
||||
DoDlgBox = $c256
|
||||
RenameFile = $c259
|
||||
InitForIO = $c25c
|
||||
DoneWithIO = $c25f
|
||||
DShiftRight = $c262
|
||||
CopyString = $c265
|
||||
CopyFString = $c268
|
||||
CmpString = $c26b
|
||||
CmpFString = $c26e
|
||||
FirstInit = $c271
|
||||
OpenRecordFile = $c274
|
||||
CloseRecordFile = $c277
|
||||
NextRecord = $c27a
|
||||
PreviousRecord = $c27d
|
||||
PointRecord = $c280
|
||||
DeleteRecord = $c283
|
||||
InsertRecord = $c286
|
||||
AppendRecord = $c289
|
||||
ReadRecord = $c28c
|
||||
WriteRecord = $c28f
|
||||
SetNextFree = $c292
|
||||
UpdateRecordFile = $c295
|
||||
GetPtrCurDkNm = $c298
|
||||
PromptOn = $c29b
|
||||
PromptOff = $c29e
|
||||
OpenDisk = $c2a1
|
||||
DoInlineReturn = $c2a4
|
||||
GetNextChar = $c2a7
|
||||
BitmapClip = $c2aa
|
||||
FindBAMBit = $c2ad
|
||||
SetDevice = $c2b0
|
||||
IsMseInRegion = $c2b3
|
||||
ReadByte = $c2b6
|
||||
FreeBlock = $c2b9
|
||||
ChangeDiskDevice = $c2bc
|
||||
RstrFrmDialogue = $c2bf
|
||||
Panic = $c2c2
|
||||
BitOtherClip = $c2c5
|
||||
StashRAM = $c2c8
|
||||
FetchRAM = $c2cb
|
||||
SwapRAM = $c2ce
|
||||
VerifyRAM = $c2d1
|
||||
DoRAMOp = $c2d4
|
||||
|
||||
;only in GEOS 128
|
||||
TempHideMouse = $c2d7
|
||||
SetMousePicture = $c2da
|
||||
SetNewMode = $c2dd
|
||||
NormalizeX = $c2e0
|
||||
MoveBData = $c2e3
|
||||
SwapBData = $c2e6
|
||||
VerifyBData = $c2e9
|
||||
DoBOp = $c2ec
|
||||
AccessCache = $c2ef
|
||||
HideOnlyMouse = $c2f2
|
||||
SetColorMode = $c2f5
|
||||
ColorCard = $c2f8
|
||||
ColorRectangle = $c2fb
|
||||
14
libsrc/geos/inc/printdrv.inc
Normal file
14
libsrc/geos/inc/printdrv.inc
Normal file
@@ -0,0 +1,14 @@
|
||||
|
||||
;GEOS Printer Driver Jump Table
|
||||
;reassembled by Maciej 'YTM/Alliance' Witkowiak
|
||||
;4-2-99
|
||||
|
||||
;jump table
|
||||
InitForPrint = $7900
|
||||
StartPrint = $7903
|
||||
PrintBuffer = $7906
|
||||
StopPrint = $7909
|
||||
GetDimensions = $790c
|
||||
PrinsASCII = $790f
|
||||
StartASCII = $7912
|
||||
SetNLQ = $7915
|
||||
Reference in New Issue
Block a user