Kernel 0.9.1 : LIBGUI primitives, ASM Cleanup

This commit is contained in:
Rémy GIBERT 2018-01-10 16:34:57 +00:00
parent b7608760fd
commit b3acfa3030
41 changed files with 304 additions and 381 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,9 +1,6 @@
PR#3 NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
LOMEM $A00 AUTO 4,1
INC 1
AUTO 6
.LIST OFF
*--------------------------------------- *---------------------------------------
DIR.Init lda #$00 DIR.Init lda #$00
ldy #ASM.LI.CON ldy #ASM.LI.CON
@ -403,6 +400,6 @@ DIR.US clc
rts rts
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.S.DIR SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.DIR
LOAD /A2OSX.SRC/BIN/ASM.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3 NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
LOMEM $A00 AUTO 4,1
INC 1
AUTO 6
.LIST OFF
*--------------------------------------- *---------------------------------------
* U-Operators : * U-Operators :
* B-Operators : * B-Operators :
@ -274,6 +271,6 @@ EXP.OP.DIV
rts rts
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.S.EXP SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.EXP
LOAD /A2OSX.SRC/BIN/ASM.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.S
ASM ASM

View File

@ -1,80 +1,92 @@
PR#3 NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
LOMEM $A00 AUTO 4,1
INC 1
AUTO 6
.LIST OFF
*--------------------------------------- *---------------------------------------
FIO.Init ldy #S.PS.hARGS FIO.Init ldy #S.PS.hARGS
lda (pPS),y lda (pPS),y
>SYSCALL GetMemPtr.A >SYSCALL GetMemPtr.A
bcs .99
>STYA ZPPtr1 >STYA ZPPtr1
lda (ZPPtr1)
tay
adc #3 len of ".T."
sta ASM.T.FILENAMELEN
adc #4 len of "6502"
sta ASM.T.FILENAME
tax
.2 lda (ZPPtr1),y ldy #$ff
.2 iny
lda (ZPPtr1),y
sta ASM.T.FILENAME,y sta ASM.T.FILENAME,y
dey
bne .2 bne .2
ldy #6 ldx #0
.3 lda ASM.T.DEFAULT,y .3 lda ASM.T.DEFAULT,x
sta ASM.T.FILENAME,x sta ASM.T.FILENAME,y
dex beq FIO.LOAD.ASM.T
dey inx
bpl .3 iny
bra .3
jmp FIO.LOAD.ASM.T
.99 rts
*--------------------------------------- *---------------------------------------
FIO.OpenFileA sta FIO.hFileName FIO.LOAD.ASM.T ldy #ASM.T.hMem
>SYSCALL GetMemPtr.A lda (pData),y
>STYA ZPPtr1
stz FIO.hFullPath
ldy #1
lda (ZPPtr1),y
cmp #'/'
beq .1 beq .1
>SYSCALL FreeMem.A
>PUSHB FIO.hFileName ldy #ASM.T.hMem
ldy #S.PS.hPREFIX lda #0
lda (pPs),y sta (pData),y
>PUSHA
>SYSCALL StrCat
sta FIO.hFullPath
sta FIO.hFileName
>SYSCALL GetMemPtr.A .1 >PUSHW L.ASM.T.FILENAME
>LDYA L.MSG.T.FILE
>SYSCALL PrintF.YA
>PUSHWI 0 Aux type
>PUSHBI 6 S.FI.T.BIN
>PUSHBI SYS.FOpen.R
>PUSHW L.ASM.T.FILENAME
>SYSCALL LoadFile
bcs .9
txa
ldy #ASM.T.hMem
sta (pData),y
.9 rts
*---------------------------------------
FIO.OpenFileA >SYSCALL GetMemPtr.A
>STYA ZPPtr1 >STYA ZPPtr1
.1 >PUSHW ZPPtr1 >PUSHW ZPPtr1
>LDYA L.MSG.SRC.FILE >LDYA L.MSG.SRC.FILE
>SYSCALL PrintF.YA >SYSCALL PrintF.YA
ldy #SRC.COUNT ldy #SRC.COUNT
lda (pData),y lda (pData),y
cmp #SRC.IN.MAXDEPTH cmp #SRC.IN.MAXDEPTH
bne .10 bne .1
lda #ERR.SRC.TOO.MANY.IN lda #ERR.SRC.TOO.MANY.IN
sec sec
bra FIO.OpenFileA.Exit rts
.10 >PUSHWI 0 .1 >PUSHW L.FIO.Stat
>PUSHW ZPPtr1
>SYSCALL Stat
bcs .99
lda FIO.Stat+S.STAT.P.TYPE
cmp #$04 TXT ?
bne .2
>PUSHWI 0
>PUSHBI 4 >PUSHBI 4
>PUSHBI SYS.FOpen.R+SYS.FOpen.T >PUSHBI SYS.FOpen.R+SYS.FOpen.T
lda FIO.hFileName bra .3
>SYSCALL GetMemPtr.A
>PUSHYA .2 cmp #$FA S-C/BAS?
bne .98
>PUSHWI 0
>PUSHBI $FA
>PUSHBI SYS.FOpen.R
.3 >PUSHW ZPPtr1
>SYSCALL FOpen >SYSCALL FOpen
bcs .99 bcs .99
@ -87,40 +99,27 @@ FIO.OpenFileA sta FIO.hFileName
pla pla
sta (pData),y sta (pData),y
ldy #SRC.COUNT ldy #SRC.COUNT
lda (pData),y lda (pData),y
clc clc
adc #SRC.hFILETYPES adc #SRC.hFILETYPES
tay tay
txa lda FIO.Stat+S.STAT.P.TYPE
sta (pData),y sta (pData),y
* cmp #$FA S-C/BAS? ldy #SRC.COUNT
* beq .8
* cmp #$04 TXT ?
* bne .98
.8 ldy #SRC.COUNT
lda (pData),y lda (pData),y
inc inc
sta (pData),y sta (pData),y
clc clc
bra FIO.OpenFileA.Exit rts
.98 lda #ERR.SRC.INV.TYPE .98 lda #ERR.SRC.INV.TYPE
.99 sec sec
FIO.OpenFileA.Exit php .99 rts
pha
lda FIO.hFullPath
beq .1
>SYSCALL FreeMem.A
.1 pla
plp
rts
*--------------------------------------- *---------------------------------------
FIO.ReadLine stz SRC.BufPtr FIO.ReadLine stz SRC.BufPtr
@ -248,35 +247,10 @@ FIO.FileClose ldy #SRC.COUNT
.8 clc .8 clc
rts rts
*--------------------------------------- *---------------------------------------
FIO.LOAD.ASM.T ldy #ASM.T.hMem
lda (pData),y
beq .1
>SYSCALL FreeMem.A
ldy #ASM.T.hMem
lda #0
sta (pData),y
.1 >PUSHW L.ASM.T.FILENAME
>LDYA L.MSG.T.FILE
>SYSCALL PrintF.YA
>PUSHWI 0 Aux type
>PUSHBI 6 S.FI.T.BIN
>PUSHBI SYS.FOpen.R
>PUSHW L.ASM.T.FILENAME
>SYSCALL LoadFile
bcs .9
txa
ldy #ASM.T.hMem
sta (pData),y
.9 rts
*---------------------------------------
FIO.EmitByte clc FIO.EmitByte clc
rts rts
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.S.FIO SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.FIO
LOAD /A2OSX.SRC/BIN/ASM.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3 NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
LOMEM $A00 AUTO 4,1
INC 1
AUTO 6
.LIST OFF
*--------------------------------------- *---------------------------------------
SRC.PrintLine ldy #ASM.MACRO.ON SRC.PrintLine ldy #ASM.MACRO.ON
lda (pData),y lda (pData),y
@ -928,6 +925,6 @@ SRC.ACC10 lda SRC.ACC ACC*2-> ACC & ACCTMP
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.S.SRC SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.SRC
LOAD /A2OSX.SRC/BIN/ASM.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3 NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
LOMEM $A00 AUTO 4,1
INC 1
AUTO 6
.LIST OFF
*--------------------------------------- *---------------------------------------
* Global Symbol Record: (8+ bytes) * Global Symbol Record: (8+ bytes)
* 0 : Flags: * 0 : Flags:
@ -349,6 +346,6 @@ SYM.NewGBlock2 >LDYAI 256
rts rts
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.S.SYM SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.SYM
LOAD /A2OSX.SRC/BIN/ASM.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3 NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
LOMEM $A00 AUTO 4,1
INC 1
AUTO 6
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
.OR $2000 .OR $2000
@ -89,6 +87,7 @@ L.SRC.ELabel.Flags .DA SRC.ELabel.Flags
L.SRC.ELabel.Len .DA SRC.ELabel.Len L.SRC.ELabel.Len .DA SRC.ELabel.Len
L.SRC.BUFFER .DA SRC.BUFFER L.SRC.BUFFER .DA SRC.BUFFER
L.ASM.T.FILENAME .DA ASM.T.FILENAME L.ASM.T.FILENAME .DA ASM.T.FILENAME
L.FIO.Stat .DA FIO.Stat
L.T.DIRECTIVES .DA T.DIRECTIVES L.T.DIRECTIVES .DA T.DIRECTIVES
J.DIRECTIVES .DA DIR.AC J.DIRECTIVES .DA DIR.AC
.DA DIR.AS .DA DIR.AS
@ -216,6 +215,7 @@ CS.RUN >SYSCALL GetChar
bcs .99 bcs .99
.10 stz UsrBuf256 .10 stz UsrBuf256
>DEBUG
jsr FIO.ReadLine jsr FIO.ReadLine
bcc .2 bcc .2
cmp #$4C End Of File? cmp #$4C End Of File?
@ -287,11 +287,11 @@ CS.QUIT jsr FIO.FileClose
.8 clc .8 clc
rts rts
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.S.DIR .INB /A2OSX.BUILD/BIN/DEV/ASM.S.DIR
.INB /A2OSX.SRC/BIN/ASM.S.EXP .INB /A2OSX.BUILD/BIN/DEV/ASM.S.EXP
.INB /A2OSX.SRC/BIN/ASM.S.FIO .INB /A2OSX.BUILD/BIN/DEV/ASM.S.FIO
.INB /A2OSX.SRC/BIN/ASM.S.SRC .INB /A2OSX.BUILD/BIN/DEV/ASM.S.SRC
.INB /A2OSX.SRC/BIN/ASM.S.SYM .INB /A2OSX.BUILD/BIN/DEV/ASM.S.SYM
*--------------------------------------- *---------------------------------------
CS.END CS.END
SRC.DIR.MAXLEN .EQ 5 SRC.DIR.MAXLEN .EQ 5
@ -393,9 +393,9 @@ T.LI .HS 03
*--------------------------------------- *---------------------------------------
MSG.HELP >CSTR "A2osX-Macro Assembler (S-C MASM 3.0 Based)\r\nUsage : ASM <src file> [type TXT ($04) or S-C/BAS ($FA)]\r\n" MSG.HELP >CSTR "A2osX-Macro Assembler (S-C MASM 3.0 Based)\r\nUsage : ASM <src file> [type TXT ($04) or S-C/BAS ($FA)]\r\n"
MSG.PASS >CSTR "Pass:#%d\r\n" MSG.PASS >CSTR "Pass:#%d\r\n"
MSG.SRC.FILE >CSTR "Reading SRC File:%S\r\n" MSG.SRC.FILE >CSTR "Reading SRC File:%s\r\n"
MSG.OBJ.FILE >CSTR "Writing OBJ File:%S, Type=%02x\r\n" MSG.OBJ.FILE >CSTR "Writing OBJ File:%s, Type=%02x\r\n"
MSG.T.FILE >CSTR "Loading CPU File:%S\r\n" MSG.T.FILE >CSTR "Loading CPU File:%s\r\n"
MSG.SRCLINE >CSTR "%H: %05D-%s\r\n" MSG.SRCLINE >CSTR "%H: %05D-%s\r\n"
MSG.ERROR >CSTR "%05D-Error:$%h\r\n" MSG.ERROR >CSTR "%05D-Error:$%h\r\n"
MSG.SYMBOLS >CSTR "Symbol Table:\r\n" MSG.SYMBOLS >CSTR "Symbol Table:\r\n"
@ -405,12 +405,11 @@ MSG.SUMMARY >CSTR "\r\nEnd Of Assembly.\r\n"
SRC.AM.RESERVED >PSTR "[]()," SRC.AM.RESERVED >PSTR "[](),"
SRC.MOD.RESERVED >PSTR "#/<>" SRC.MOD.RESERVED >PSTR "#/<>"
SRC.EXP.RESERVED >PSTR "^!|&<=>+-*/" SRC.EXP.RESERVED >PSTR "^!|&<=>+-*/"
ASM.T.DEFAULT .AS ".T.6502" ASM.T.DEFAULT >CSTR ".T.6502"
ASM.T.FILENAMELEN .BS 1 ASM.T.FILENAMELEN .BS 1
ASM.T.FILENAME .BS 65 ASM.T.FILENAME .BS 65
FIO.hFileName .BS 1 FIO.Stat .BS S.STAT
FIO.hFullPath .BS 1
EXP.Operator .BS 1 EXP.Operator .BS 1
EXP.Modifier .BS 1 EXP.Modifier .BS 1
@ -514,5 +513,5 @@ DS.END .ED
.FIN .FIN
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "(a),Y" >ST "(a),Y"
@ -25,6 +22,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.6502.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.6502.A
LOAD /A2OSX.SRC/BIN/ASM.T.6502.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.6502.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADC .DA ADC.E+1 ADC .DA ADC.E+1
@ -384,6 +381,6 @@ TYA.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.6502.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.6502.O
LOAD /A2OSX.SRC/BIN/ASM.T.6502.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.6502.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.6502 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.6502
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.6502.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.6502.O
.INB /A2OSX.SRC/BIN/ASM.T.6502.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.6502.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.6502.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.6502.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "(a)" >ST "(a)"
@ -37,6 +34,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65816.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65816.A
LOAD /A2OSX.SRC/BIN/ASM.T.65816.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65816.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADC .DA ADC.E+1 ADC .DA ADC.E+1
@ -625,6 +622,6 @@ XCE.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65816.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65816.O
LOAD /A2OSX.SRC/BIN/ASM.T.65816.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65816.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.65816 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.65816
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.65816.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65816.O
.INB /A2OSX.SRC/BIN/ASM.T.65816.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65816.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65816.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65816.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "(a)" >ST "(a)"
@ -27,6 +24,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65C02.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.A
LOAD /A2OSX.SRC/BIN/ASM.T.65C02.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADC .DA ADC.E+1 ADC .DA ADC.E+1
@ -443,6 +440,6 @@ TYA.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65C02.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.O
LOAD /A2OSX.SRC/BIN/ASM.T.65C02.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.65C02 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.65C02
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.65C02.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.O
.INB /A2OSX.SRC/BIN/ASM.T.65C02.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65C02.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65C02.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "(a)" >ST "(a)"
@ -28,6 +25,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65R02.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.A
LOAD /A2OSX.SRC/BIN/ASM.T.65R02.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADC .DA ADC.E+1 ADC .DA ADC.E+1
@ -603,6 +600,6 @@ TYA.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65R02.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.O
LOAD /A2OSX.SRC/BIN/ASM.T.65R02.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.65R02 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.65R02
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.65R02.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.O
.INB /A2OSX.SRC/BIN/ASM.T.65R02.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65R02.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65R02.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "(a)" >ST "(a)"
@ -28,6 +25,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65W02.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.A
LOAD /A2OSX.SRC/BIN/ASM.T.65W02.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADC .DA ADC.E+1 ADC .DA ADC.E+1
@ -613,6 +610,6 @@ WAI.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65W02.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.O
LOAD /A2OSX.SRC/BIN/ASM.T.65W02.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.65W02 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.65W02
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.65W02.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.O
.INB /A2OSX.SRC/BIN/ASM.T.65W02.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.65W02.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.65W02.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "R0" >ST "R0"
@ -61,6 +58,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.SW16.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.A
LOAD /A2OSX.SRC/BIN/ASM.T.SW16.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADD .DA ADD.E+1 ADD .DA ADD.E+1
@ -366,6 +363,6 @@ SUB.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.SW16.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.O
LOAD /A2OSX.SRC/BIN/ASM.T.SW16.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.SW16 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.SW16
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.SW16.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.O
.INB /A2OSX.SRC/BIN/ASM.T.SW16.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.SW16.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.SW16.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.ADDR.MODES .EQ * T.ADDR.MODES .EQ *
>ST "A,(HL)" >ST "A,(HL)"
@ -214,6 +211,6 @@ T.REGISTERS .EQ *
.HS 00 .HS 00
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.Z80.A SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.A
LOAD /A2OSX.SRC/BIN/ASM.T.Z80.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.S
ASM ASM

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*--------------------------------------- *---------------------------------------
T.OPCODES .EQ * T.OPCODES .EQ *
ADC .DA ADC.E+1 ADC .DA ADC.E+1
@ -1205,6 +1202,6 @@ XOR.E .HS 00
.HS 0000 .HS 0000
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.Z80.O SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.O
LOAD /A2OSX.SRC/BIN/ASM.T.Z80.S LOAD /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OR $0 .OR $0
.TF /A2OSX.BUILD/BIN/DEV/ASM.T.Z80 .TF /A2OSX.BUILD/BIN/DEV/ASM.T.Z80
@ -17,9 +15,9 @@ AUTO 6
.DA T.REGISTERS .DA T.REGISTERS
.DA T.OPCODES .DA T.OPCODES
*--------------------------------------- *---------------------------------------
.INB /A2OSX.SRC/BIN/ASM.T.Z80.O .INB /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.O
.INB /A2OSX.SRC/BIN/ASM.T.Z80.A .INB /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.A
*--------------------------------------- *---------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/ASM.T.Z80.S SAVE /A2OSX.BUILD/BIN/DEV/ASM.T.Z80.S
ASM ASM

View File

@ -313,5 +313,5 @@ DS.END
.ED .ED
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/MEMDUMP.S SAVE /A2OSX.BUILD/BIN/DEV/MEMDUMP.S
ASM ASM

View File

@ -278,5 +278,5 @@ DS.END
.ED .ED
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE /A2OSX.SRC/BIN/RPCDUMP.S SAVE /A2OSX.BUILD/BIN/DEV/RPCDUMP.S
ASM ASM

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
.OP 65C02 .OP 65C02
*-------------------------------------- *--------------------------------------
@ -63,6 +61,34 @@ S.RECT.Y2 .EQ 6
* *
S.RECT .EQ 8 S.RECT .EQ 8
*-------------------------------------- *--------------------------------------
S.WND.F .EQ 0
S.WND.F.RESIZE .EQ %00000001
S.WND.F.MOVE .EQ %00000010
S.WND.F.CLOSE .EQ %00000100
S.WND.F.MAX .EQ %00001000
S.WND.F.MIN .EQ %00010000
S.WND.F.SPARE .EQ %00100000
S.WND.F.MODAL .EQ %01000000
S.WND.F.SYSMODAL .EQ %10000000
S.WND.S .EQ 1
S.WND.hOWNER .EQ 2
S.WND.hPARENT .EQ 3
S.WND.hTITLE .EQ 4
S.WND.hMENU .EQ 5
S.WND.hBKCOLOR .EQ 6
S.WND.hBKBM .EQ 7
S.WND.hSTATUS .EQ 8
S.WND.hCUR .EQ 9
S.WND.hICON .EQ 10
S.WND.X .EQ 12
S.WND.Y .EQ 14
S.WND.W .EQ 16
S.WND.H .EQ 18
*
S.WND .EQ 32
*--------------------------------------
S.GUI.C.BK
*--------------------------------------
MAN MAN
SAVE /A2OSX.BUILD/INC/LIBGUI.I SAVE /A2OSX.BUILD/INC/LIBGUI.I
LOAD /A2OSX.SRC/LIB/LIBGUI.S LOAD /A2OSX.SRC/LIB/LIBGUI.S

View File

@ -1,7 +1,6 @@
NEW NEW
PREFIX /A2OSX.BUILD PREFIX /A2OSX.BUILD
AUTO 4,1 AUTO 4,1
.LIST OFF
*-------------------------------------- *--------------------------------------
CUR.T .BS 1 CUR.T .BS 1
CUR.bVisible .BS 1 CUR.bVisible .BS 1

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF .LIST OFF
*-------------------------------------- *--------------------------------------
* CLIPPING Functions: * CLIPPING Functions:

View File

@ -1,9 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
.LIST OFF
*-------------------------------------- *--------------------------------------
UpdateCursor lda CUR.T UpdateCursor lda CUR.T
cmp #CUR.T.WAIT cmp #CUR.T.WAIT

View File

@ -1,8 +1,6 @@
PR#3
PREFIX /A2OSX.BUILD
NEW NEW
INC 1 PREFIX /A2OSX.BUILD
AUTO 6 AUTO 4,1
*-------------------------------------- *--------------------------------------
Draw >PULLW ZPCBPtr Get CB Draw >PULLW ZPCBPtr Get CB

47
LIB/LIBGUI.S.PAT.txt Normal file
View File

@ -0,0 +1,47 @@
NEW
PREFIX /A2OSX.BUILD
AUTO 4,1
*--------------------------------------
GetMPattern
clc
rts
*--------------------------------------
GetCPattern tax
and #$f
sta D
asl
asl
asl
asl
ora D
tay
txa
and #$f0
sta D
lsr
lsr
lsr
lsr
ora D
ldx #7
.1 sta PAT.Buf+S.BM,x
dex
pha
tya
sta PAT.Buf+S.BM,x
pla
dex
bpl .1
lda #S.BM.F.BBP1
sta PAT.Buf+S.BM.F
clc
rts
*--------------------------------------
MAN
SAVE /A2OSX.SRC/LIB/LIBGUI.S.PAT
LOAD /A2OSX.SRC/LIB/LIBGUI.S
ASM

15
LIB/LIBGUI.S.WND.txt Normal file
View File

@ -0,0 +1,15 @@
NEW
PREFIX /A2OSX.BUILD
AUTO 4,1
*--------------------------------------
DrawWindow >STYA ZPPtr1
clc
rts
*--------------------------------------
*--------------------------------------
MAN
SAVE /A2OSX.SRC/LIB/LIBGUI.S.WND
LOAD /A2OSX.SRC/LIB/LIBGUI.S
ASM

View File

@ -259,6 +259,8 @@ GoDevMouse jmp $ffff
.INB /A2OSX.SRC/LIB/LIBGUI.S.DRAW .INB /A2OSX.SRC/LIB/LIBGUI.S.DRAW
.INB /A2OSX.SRC/LIB/LIBGUI.S.CLIP .INB /A2OSX.SRC/LIB/LIBGUI.S.CLIP
.INB /A2OSX.SRC/LIB/LIBGUI.S.CUR .INB /A2OSX.SRC/LIB/LIBGUI.S.CUR
.INB /A2OSX.SRC/LIB/LIBGUI.S.PAT
.INB /A2OSX.SRC/LIB/LIBGUI.S.WND
*-------------------------------------- *--------------------------------------
CS.END CS.END
*-------------------------------------- *--------------------------------------
@ -295,9 +297,17 @@ GC.Screen .BS S.GC
GC.Desktop .BS S.GC GC.Desktop .BS S.GC
GC.TaskBar .BS S.GC GC.TaskBar .BS S.GC
*-------------------------------------- *--------------------------------------
PAT.Buf .BS 1 S.BM.F
.DA #1 S.BM.RowBytes
.DA 8 S.BM.W
.DA 8 S.BM.H
.DA 0 S.BM.MASK.OFS
.BS 8 (data)
*--------------------------------------
GC.Cache .BS S.GC GC.Cache .BS S.GC
CB.Cache .BS S.CB CB.Cache .BS S.CB
BM.Cache .BS S.BM BM.Cache .BS S.BM
WND.Cache .BS S.WND
*-------------------------------------- *--------------------------------------
MAN MAN
SAVE /A2OSX.SRC/LIB/LIBGUI.S SAVE /A2OSX.SRC/LIB/LIBGUI.S

View File

@ -1,72 +0,0 @@
PR#3
PREFIX /A2OSX.BUILD
NEW
INC 1
AUTO 6
.LIST OFF
.OP 65C02
.OR $2000
.TF /A2OSX.BUILD/SBIN/GUI/GUIOSD
*--------------------------------------
.INB /A2OSX.BUILD/INC/MACROS.I
.INB /A2OSX.BUILD/INC/A2OSX.I
.INB /A2OSX.BUILD/INC/PRODOS.I
.INB /A2OSX.BUILD/INC/IO.I
.INB /A2OSX.BUILD/INC/LIBGUI.I
*--------------------------------------
A1L .EQ $3C
A2L .EQ $3E
A4L .EQ $42
TXTPTR .EQ $B8
MoveAux .EQ $C311
XFer .EQ $C314
*--------------------------------------
CS.START cld
jmp (.1,x)
.DA #$61 6502,Level 1 (65c02)
.DA #1 BIN Layout Version 1
.DA 0
.DA CS.END-CS.START CS
.DA DS.END-DS.START DS
.DA #64 SS
.DA #0 ZP
.DA 0
*--------------------------------------
* Relocation Table
*--------------------------------------
.1 .DA CS.INIT
.DA CS.RUN
.DA CS.DOEVENT
.DA CS.QUIT
.DA 0
*--------------------------------------
CS.INIT
lda #0
sec
rts
*--------------------------------------
CS.RUN clc
rts
*--------------------------------------
CS.DOEVENT sec
rts
*--------------------------------------
CS.QUIT clc
rts
*--------------------------------------
CS.END
*--------------------------------------
.PH $0C00
*--------------------------------------
.EP
GUIOSD.END .EQ *
*--------------------------------------
.DUMMY
.OR 0
DS.START
DS.END
.ED
*--------------------------------------
MAN
SAVE /A2OSX.SRC/SBIN/GUIOSD
ASM