Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-08-23 21:46:37 +02:00
parent d20a93a581
commit 97ace2a662
28 changed files with 304 additions and 218 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -150,7 +150,6 @@ EXP.Eval.Next stz SRC.ACC
jsr SYM.LookupGlobal
.DO ASMDBG=1
bcs *
lda #"?"
jsr EXP.DBG
.FIN

View File

@ -4,7 +4,7 @@ NEW
SRC.ParseLine jsr OUT.PrintBufReset
>STZ.G OUT.bEquate
jsr SRC.GetChar
bcs .8
@ -18,18 +18,18 @@ SRC.ParseLine jsr OUT.PrintBufReset
bcs .7 TRUE
lda (ZPLinePtr)
.1 cmp #C.SPACE false....skip label processing
beq SRC.ParseLine.DirOp no label....
.2 jsr SRC.GetNextChar
bcs .8
cmp #C.SPACE
bne .2
bra SRC.ParseLine.DirOp
.7 >LDA.G ASM.MA.ON
bpl SRC.ParseLine.LABEL
@ -39,7 +39,7 @@ SRC.ParseLine jsr OUT.PrintBufReset
SRC.ParseLine.RTS
rts
*---------------------------------------
SRC.ParseLine.LABEL
SRC.ParseLine.LABEL
jsr SRC.GetChar
cmp #C.SPACE no label...go scan dir/opcode
beq SRC.ParseLine.DirOp
@ -51,7 +51,7 @@ SRC.ParseLine.LABEL
>LDA.G MAC.StkPtr
bne SRC.ParseLine.InvLbl illegal in MACRO
bra .2
.1 cpx #':' private symbol?
bne .8
@ -87,7 +87,7 @@ SRC.ParseLine.DirOp
jsr SRC.GetKeyword
bcs SRC.ParseLine.InvDir
jsr SRC.DoCheck
bcs .1 TRUE, always execute
@ -99,7 +99,7 @@ SRC.ParseLine.DirOp
cpx #30 .FIN?
bne SRC.ParseLine.Ok
.1 jmp (J.DIRECTIVES,x)
.5 pha
@ -147,7 +147,7 @@ SRC.ParseLine.OpCode
tax
ldy #0
.2 lda (ZPLinePtr),y
beq .7
@ -202,7 +202,7 @@ SRC.ParseLine.OpCode
>STA.G SRC.AMID
jsr SRC.ParseLine.AMCheck4OP
bcs .99
jmp SRC.ParseLine.Emit
.9 lda #E.INV.OPCODE
sec
@ -216,7 +216,7 @@ SRC.ParseLine.AM
jsr SRC.AddToBuf
bra .7
.2 jsr SRC.IsLetter Any register?
bcs .6 no, try something else
@ -250,9 +250,9 @@ SRC.ParseLine.AM
.75 ldx SRC.ACC.SIZE
beq * SHOULD NEVER APPEND
jsr SRC.GetACCSize
.72 lda #'a'
.71 jsr SRC.AddToBuf
@ -282,7 +282,7 @@ SRC.ParseLine.AM
.80 jsr SRC.ExpandAddress
cpx #5
bne .8
.9 lda #E.INV.AM
sec
.99 rts
@ -298,7 +298,7 @@ SRC.ParseLine.AMCheck
lda (ZPPtr1)
beq .9
cmp SRC.AM.StrBuf
cmp SRC.AM.StrBuf
bne .7
tay
@ -315,7 +315,7 @@ SRC.ParseLine.AMCheck
clc
rts
.6 lda (ZPPtr1)
.7 sec
adc ZPPtr1
@ -339,7 +339,7 @@ SRC.ParseLine.AMCheck4OP
ldy #2 LEN Byte
adc (ZPOpDefPtr),y
bcc .10
inx
inx
.10 sta ZPPtr1
@ -357,7 +357,7 @@ SRC.ParseLine.AMCheck4OP
.12 sec LEN byte...
ldy #1 String...
adc (ZPPtr1),y
adc (ZPPtr1),y
bcc .2
inx
@ -374,19 +374,19 @@ SRC.ParseLine.AMCheck4OP
>STYA ZPOpDefPtr
clc
rts
*---------------------------------------
*---------------------------------------
SRC.ParseLine.Emit
stz SRC.ACCTMP index in ACC
ldy #1
lda (ZPOpDefPtr),y
sta SRC.ACCTMP+1 Char Count in AM
iny
.4 lda (ZPOpDefPtr),y
.2 lda (ZPOpDefPtr),y
cmp #'a
bcs .5 lowercase, go compute address
bcs .4 lowercase, go compute address
jsr SRC.IsDigit16
asl
@ -400,34 +400,34 @@ SRC.ParseLine.Emit
jsr SRC.IsDigit16
ora SRC.ACCTMP+2
.50 jsr OUT.EmitByte
.3 jsr OUT.EmitByte
bcs .9
iny
dec SRC.ACCTMP+1
bne .4
bne .2
clc
* clc
rts
.5 bne .6 cmp #'a'....
.4 bne .5 cmp #'a'....
ldx SRC.ACCTMP
inc SRC.ACCTMP
lda SRC.ACC,x
bra .50
bra .3
.6 cmp #'r
.5 cmp #'r
bne .7
jsr SRC.ComputeRel8
bcs .61
bcs .6
lda SRC.ACC
bra .50
.61 >LDA.G ASM.PASS
beq .50 Emit 00 if pending symbol (pass #1)
bra .3
.6 >LDA.G ASM.PASS
beq .3 Emit 00 if pending symbol (pass #1)
bra .91
@ -435,25 +435,24 @@ SRC.ParseLine.Emit
bne .90
jsr SRC.ComputeRel16
bcs .71
bcs .8
lda SRC.ACC
jsr OUT.EmitByte
bcs .9
lda SRC.ACC+1
bra .50
.71 >LDA.G ASM.PASS
bra .3
.8 >LDA.G ASM.PASS
bne .91
lda #0
* lda #0
jsr OUT.EmitByte
bcs .9
lda #0
bra .50 Emit 00 00 if pending symbol (pass #1)
.8 clc
.9 rts
lda #0
bra .3 Emit 00 00 if pending symbol (pass #1)
.90 lda #E.INV.CPU.FILE
sec
@ -461,7 +460,7 @@ SRC.ParseLine.Emit
.91 lda #E.RANGE
sec
rts
.9 rts
*---------------------------------------
SRC.AddToBuf inc SRC.AM.StrBuf
ldy SRC.AM.StrBuf
@ -470,35 +469,43 @@ SRC.AddToBuf inc SRC.AM.StrBuf
*---------------------------------------
SRC.ExpandAddress
ldy SRC.AM.StrBuf
.1 lda SRC.AM.StrBuf,y
sta SRC.AM.StrBuf+1,y
dey
cmp #'a'
bne .1
ldx #2 "aa"
tya
beq .8
.2 lda SRC.AM.StrBuf,y
cmp #'a'
bne .8
inx "aaa"
.3 dey
bne .2
.8 inc SRC.AM.StrBuf
rts
*---------------------------------------
SRC.ComputeRel8 jsr SRC.ComputeRel
SRC.ComputeRel8 lda #1
jsr SRC.ComputeRel
bcc .1
* positive : check 0<r<0000007F
lda SRC.ACC+3
ora SRC.ACC+2
ora SRC.ACC+1
bne .9
lda SRC.ACC
bmi .9
clc
rts
@ -509,24 +516,30 @@ SRC.ComputeRel8 jsr SRC.ComputeRel
and SRC.ACC+1
inc
bne .9
lda SRC.ACC
bpl .9
clc
rts
.9 sec
rts
*---------------------------------------
SRC.ComputeRel16
lda #2
jsr SRC.ComputeRel
bcc .1
* positive : check 0<r<00007FFF
lda SRC.ACC+3
ora SRC.ACC+2
bne .9
lda SRC.ACC+1
bmi .9
clc
rts
@ -536,76 +549,101 @@ SRC.ComputeRel16
and SRC.ACC+2
inc
bne .9
lda SRC.ACC+1
bpl .9
clc
rts
.9 sec
rts
*---------------------------------------
SRC.ComputeRel phy
ldy #ASM.PC
clc
adc (pData),y
sta SRC.ARG
iny
lda #0
adc (pData),y
sta SRC.ARG+1
iny
lda #0
adc (pData),y
sta SRC.ARG+2
iny
lda #0
adc (pData),y
sta SRC.ARG+3
sec
lda SRC.ACC
sbc (pData),y
sbc SRC.ARG
sta SRC.ACC
iny
lda SRC.ACC+1
sbc (pData),y
sbc SRC.ARG+1
sta SRC.ACC+1
iny
lda SRC.ACC+2
sbc (pData),y
sbc SRC.ARG+2
sta SRC.ACC+2
iny
lda SRC.ACC+3
sbc (pData),y
sbc SRC.ARG+3
sta SRC.ACC+3
ply
rts
rts
*---------------------------------------
SRC.GetDecimal8 jsr SRC.GetDecimal
bcs .9
lda SRC.ACC+1
ora SRC.ACC+2
ora SRC.ACC+3
bne .99 Max .255
lda SRC.ACC
beq .99 .0 is not allowed
* clc
rts
.99 sec
.9 rts
*---------------------------------------
SRC.GetDecimal jsr SRC.GetChar
beq .99
stz SRC.ACC+1
stz SRC.ACC+2
stz SRC.ACC+3
jsr SRC.IsDigit10
bcs .99
and #$0F
sta SRC.ACC
.1 jsr SRC.GetNextChar
bcs .8
cmp #C.SPACE
beq .8
jsr SRC.IsEXPReserved
bcc .8
jsr SRC.IsAMReserved
bcc .8
jsr SRC.IsDigit10
bcs .9
and #$0F
pha
jsr SRC.ACC10
@ -615,13 +653,13 @@ SRC.GetDecimal jsr SRC.GetChar
adc SRC.ACC
sta SRC.ACC
bcc .1
inc SRC.ACC+1
bne .1
inc SRC.ACC+2
bne .1
inc SRC.ACC+3
bne .1
@ -754,42 +792,42 @@ SRC.GetBinary jsr SRC.GetNextChar skip '%'
cmp #'0'
bne .99
.10 and #$01
sta SRC.ACC
.1 jsr SRC.GetNextChar
bcs .8
cmp #'.' allow %111.00.1
beq .1
cmp #C.SPACE
beq .8
jsr SRC.IsEXPReserved
bcc .8
jsr SRC.IsAMReserved
bcc .8
cmp #'1'
beq .11
cmp #'0'
bne .8
.11 lsr
rol SRC.ACC
rol SRC.ACC+1
rol SRC.ACC+2
rol SRC.ACC+3
bcc .1
.9 lda #E.VAL.TOO.BIG
sec
rts
.99 lda #E.SYNTAX.ERROR
sec
rts
@ -897,9 +935,9 @@ SRC.IsKeywordLetterUC
eor #$20
rts CC if lowercase
.9 sec
.99 rts
.99 rts
*---------------------------------------
SRC.IsLetterOrDigit
SRC.IsLetterOrDigit
jsr SRC.IsDigit10
bcc SRC.IsLetterRTS
*---------------------------------------
@ -1002,14 +1040,18 @@ SRC.ACC10 lda SRC.ACC ACC*2-> ACC & ACCTMP
sta SRC.ACC+3
sta SRC.ACCTMP+3
bcs .9
ldx #2
.1 asl SRC.ACC ACC=ACC*4
rol SRC.ACC+1
rol SRC.ACC+2
rol SRC.ACC+3
bcs .9
dex
bne .1
lda SRC.ACC CC from ROL SRC.ACC+3
adc SRC.ACCTMP
sta SRC.ACC
@ -1031,17 +1073,17 @@ SRC.GetACCSize lda SRC.ACC.F
ldx #2
rts
.1 ldx SRC.ACC.SIZE
.2 lda SRC.ACC-1,x
bne .8
dex
bne .2
inx
.8 rts
*---------------------------------------
SRC.DoCheck sec
@ -1053,7 +1095,7 @@ SRC.DoCheck sec
tay
lda (pData),y
asl
.8 rts CS if TRUE
*---------------------------------------
MAN

View File

@ -347,6 +347,9 @@ CS.RUN.LOOP ldy #S.PS.hStdIn
.9 pha
jsr OUT.PrintLineErr
.DO ASMDBG=1
jsr SYM.Dump.1
.FIN
pla
sec
rts

View File

@ -41,44 +41,28 @@ CS.START cld
.DA CS.QUIT
L.MSG.NOATK .DA MSG.NOATK
L.MSG.ATKERR .DA MSG.ATKERR
L.MSG.NETNODE .DA MSG.NETNODE
L.MSG.GETINFO .DA MSG.GETINFO
L.MSG.MYZONE .DA MSG.MYZONE
L.SEARCH.STRING .DA SEARCH.STRING
L.MSG.DUMP0 .DA MSG.DUMP0
L.MSG.DUMP .DA MSG.DUMP
.DA 0
*--------------------------------------
CS.INIT clc
rts
CS.INIT.RTS rts
*--------------------------------------
CS.RUN lda #AT.GetInfo
>STA.G P.GetInfo+1
>LEA.G P.GetInfo
CS.RUN jsr CS.RUN.ATCHECK
bcs CS.INIT.RTS
jsr A2osX.ATKCALL
bcc CS.RUN.ATKOK
jsr CS.RUN.MyZone
bcs CS.INIT.RTS
pha
>LDYA L.MSG.NOATK
>SYSCALL PutS
pla
sec
rts
CS.RUN.ATKOK >PUSHW L.MSG.NETNODE
>PUSHW.G P.GetInfo+$8 NET
>PUSHB.G P.GetInfo+$E NODE
>PUSHBI 3
>SYSCALL PrintF
lda #AT.LookupName
>STA.G P.LookupName+1
>LDYA L.SEARCH.STRING
>STYA.G P.LookupName+$08 Entry Name Ptr
lda #4
>STA.G P.LookupName+$C RetInt
>STA.G P.LookupName+$D RetCnt
>STA.G P.LookupName+$0C RetInt
>STA.G P.LookupName+$0D RetCnt
>LDYAI 1024
>STYA.G P.LookupName+$10 BufLen
>LDYAI 1024
@ -94,6 +78,7 @@ CS.RUN.ATKOK >PUSHW L.MSG.NETNODE
>STA.G P.LookupName+$16 MaxMatch
>LEA.G P.LookupName
ldx #AT.LookupName
jsr CS.RUN.GOATLK
.99 bcs .9
@ -141,7 +126,56 @@ CS.RUN.ATKOK >PUSHW L.MSG.NETNODE
.8 sec
.9 rts
*--------------------------------------
CS.RUN.ATCHECK lda #AT.GetInfo
>STA.G P.GetInfo+1
>LEA.G P.GetInfo
jsr A2osX.ATKCALL
bcs .9
>PUSHW L.MSG.GETINFO
>PUSHW.G P.GetInfo+$08 THIS-NET
>PUSHB.G P.GetInfo+$0E NODE
>PUSHB.G P.GetInfo+$0A BRIDGE
>PUSHW.G P.GetInfo+$0A HARDWARE ID
>PUSHB.G P.GetInfo+$0A ROM VERSION
>PUSHBI 7
>SYSCALL PrintF
rts
.9 pha
>LDYA L.MSG.NOATK
>SYSCALL PutS
pla
sec
rts
*--------------------------------------
CS.RUN.MyZone >LEA.G ZoneBuf
>STYA.G P.GetMyZone+$08
lda #4
>STA.G P.GetMyZone+$0C RetInt
>STA.G P.GetMyZone+$0D RetCnt
>LEA.G P.GetMyZone
ldx #AT.GetMyZone
jsr CS.RUN.GOATLK
bcs .9
>PUSHW L.MSG.MYZONE
>PUSHEA.G ZoneBuf
>PUSHBI 2
>SYSCALL PrintF
.9 rts
*--------------------------------------
CS.RUN.GOATLK >STYA ZPAtlkParams
ldy #1
txa
sta (ZPAtlkParams),y
>LDYA ZPAtlkParams
jsr A2osX.ATKCALL
bcc .9
@ -161,7 +195,6 @@ CS.RUN.GOATLK >STYA ZPAtlkParams
pla
sec
.9 rts
*--------------------------------------
CS.DOEVENT sec
@ -177,8 +210,11 @@ CS.QUIT lda hBuf
CS.END
MSG.NOATK .AZ "AppleTalk Not Loaded."
MSG.ATKERR .AZ "AppleTalk ERR:%H\r\n"
MSG.NETNODE .AZ "Network/Node:$%H/$%h\r\n"
SEARCH.STRING >PSTR "*:=@="
MSG.GETINFO .AS "Network/Node:$%H/$%h\r\n"
.AS "Bridge : $%h\r\n"
.AZ "HWID/ROMVER :$%H/$%h\r\n"
MSG.MYZONE .AZ "Zone Name :%S\r\n"
SEARCH.STRING >PSTR "=:=@*"
MSG.DUMP0 .AZ "Net Nod SkT En# Name"
MSG.DUMP .AZ "%H $%h $%h $%h %S\r\n"
*--------------------------------------
@ -186,7 +222,9 @@ MSG.DUMP .AZ "%H $%h $%h $%h %S\r\n"
.OR 0
DS.START
P.GetInfo .BS $0F
P.GetMyZone .BS $0F
P.LookupName .BS $17
ZoneBuf .BS 33
DS.END .ED
*--------------------------------------
MAN

View File

@ -120,7 +120,8 @@ CS.RUN.ATCHECK lda #AT.GetInfo
>LDYA L.MSG.NOATK
>SYSCALL puts
pla
.9 sec
sec
.9 rts
*--------------------------------------
CS.RUN.GOATLK >STYA ZPAtlkParams
jsr A2osX.ATKCALL
@ -162,6 +163,7 @@ DS.START
P.GetInfo .BS $0F
P.LookupName .BS $17
P.FILogin .BS $19
ZoneBuf .BS 33
NameBuf .BS 64
ReplyBuf .BS 64
DS.END

View File

@ -3,7 +3,7 @@ NEW
.LIST OFF
.OP 65C02
.OR $2000
.TF BIN/CMP
.TF bin/cmp
*--------------------------------------
.INB inc/macros.i
.INB inc/a2osx.i

View File

@ -177,7 +177,7 @@ CS.RUN.LOGO.SHOW
>LDYA L.CB.LOGO
jsr GFX.Write.YA
bit xDIR
bit xDir
bmi .4
lda CB.LOGO+S.CB.DstX
@ -193,9 +193,9 @@ CS.RUN.LOGO.SHOW
pla
bcc .5
.3 lda xDIR
.3 lda xDir
eor #$ff
sta xDIR
sta xDir
bra .6
.4 lda CB.LOGO+S.CB.DstX
@ -211,16 +211,16 @@ CS.RUN.LOGO.SHOW
.6 lda CB.LOGO+S.CB.DstY
bit yDIR
bit yDir
bmi .8
inc
cmp #152
bne .7
.60 lda yDIR
.60 lda yDir
eor #$ff
sta yDIR
sta yDir
bra .1
.7 sta CB.LOGO+S.CB.DstY
@ -299,7 +299,7 @@ LoadResources >PUSHW L.FONTFILE
>PUSHWZ Aux type
>SYSCALL LoadStkObj
bcs .99
stx hFontb
stx hFontB
>PUSHW L.MARILYNFILE
>PUSHBI O.RDONLY

View File

@ -5,10 +5,10 @@ NEW
.OR $2000
.TF bin/unpak
*--------------------------------------
.INB INC/MACROS.I
.INB INC/A2OSX.I
.INB INC/MLI.E.I
.INB INC/PAK.I
.INB inc/macros.i
.INB inc/a2osx.i
.INB inc/mli.e.i
.INB inc/pak.i
*--------------------------------------
.DUMMY
.OR ZPBIN
@ -70,7 +70,7 @@ CS.RUN >LDYAI CHNK.SIZE
>STA.G hInBuf
lda #1
>SYSCALL Argv
>SYSCALL ArgV
bcs .99
jsr CS.RUN.OpenArc
@ -90,7 +90,7 @@ CS.RUN >LDYAI CHNK.SIZE
ldy #S.PS.hCWD
lda (pPS),y
>SYSCALL GetMemptr
>SYSCALL GetMemPtr
.1 jsr CS.RUN.SetupPath
@ -180,7 +180,7 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
bne .3 Could be a 0 byte file
.20 lda #'.'
>SYSCALL putchar
>SYSCALL PutChar
jsr CS.RUN.GetByte DataLen LO
bcs .99
@ -202,7 +202,7 @@ CS.RUN.LOOP jsr CS.RUN.GetByte
sta ZPOutBufLen+1
>LDA.G hOutBuf
>SYSCALL GetMemptr
>SYSCALL GetMemPtr
>STYA ZPOutBufPtr
jsr X.Unpak
@ -247,7 +247,7 @@ CS.RUN.OpenArc >PUSHYA
>PUSHWI 3
>PUSHW ZPInBufPtr
pla
>SYSCALL fread
>SYSCALL FRead
bcs .9
cpy #3
bne .99
@ -272,7 +272,7 @@ CS.RUN.GetFileType
>PUSHWI 3
>PUSHEA.G FileType
>LDA.G hArcFile
>SYSCALL fread
>SYSCALL FRead
rts
*--------------------------------------
CS.RUN.GetFileName
@ -284,7 +284,7 @@ CS.RUN.GetFileName
>PUSHYA
>PUSHW ZPRelPathPtr
>LDA.G hArcFile
>SYSCALL fread
>SYSCALL FRead
bcs .9
lda #0
@ -295,25 +295,25 @@ CS.RUN.GetFileName
*--------------------------------------
CS.RUN.ReadData >PUSHW ZPInBufLen
>LDA.G hInBuf
>SYSCALL GetMemptr
>SYSCALL GetMemPtr
>STYA ZPInBufPtr
>PUSHYA
>LDA.G hArcFile
>SYSCALL fread
>SYSCALL FRead
rts
*--------------------------------------
CS.RUN.GetByte >LDA.G hArcFile
>SYSCALL getc
>SYSCALL GetC
rts
*--------------------------------------
CS.RUN.CheckDir >PUSHW ZPFullPathPtr
>PUSHEA.G STAT
>SYSCALL stat
>SYSCALL Stat
bcc .1
>PUSHW ZPFullPathPtr
>PUSHWI S.STAT.MODE.FO+S.STAT.MODE.FG+S.STAT.MODE.FU
>SYSCALL mkdir
>SYSCALL MKDir
rts
@ -340,10 +340,10 @@ CS.RUN.OpenFile >PUSHW ZPFullPathPtr
CS.RUN.WriteFile
>PUSHW ZPOutBufLen
>LDA.G hOutBuf
>SYSCALL GetMemptr
>SYSCALL GetMemPtr
>PUSHYA
>LDA.G hFile
>SYSCALL fwrite
>SYSCALL FWrite
rts
*--------------------------------------
CS.DOEVENT sec
@ -398,5 +398,5 @@ DS.END
.ED
*--------------------------------------
MAN
SAVE USR/SRC/BIN/UNPAK.S
SAVE usr/src/bin/unpak.s
ASM

View File

@ -58,7 +58,7 @@ A2osX.SLEEP .EQ $BC10
*--------------------------------------
A2osX.SCRNDEVS .EQ $BED0 0=console, 1-8=VT100, 9=GFX
A2osX.ASCREEN .EQ $BEDA Active Screen
* free BEDB -> BEE5
A2osX.CPUTYPE .EQ $BEE6
A2osX.CPUSPEED .EQ $BEE7 WORD, (->255.99 Mhz)

View File

@ -6,6 +6,9 @@ AUTO 4,1
AT.GetInfo .EQ $02
AT.LookupName .EQ $10
AT.GetMyZone .EQ $1A
AT.GetZoneList .EQ $1B
AT.FILogin .EQ $2B
AT.FILoginCont .EQ $2C
AT.FILogout .EQ $2D
@ -16,3 +19,4 @@ AT.FIGetSVersion .EQ $3A
*--------------------------------------
MAN
SAVE inc/appletalk.i

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
* GFX Devices
*--------------------------------------
@ -95,4 +94,4 @@ S.CB.DstPtr .EQ 18 BITBLT
S.CB .EQ 20
*--------------------------------------
MAN
SAVE INC/GFX.I
SAVE inc/gfx.i

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
IO.D2.SeekTime .EQ 75
*--------------------------------------
@ -29,4 +28,4 @@ IO.D2.ReadMode .EQ $C08E R
IO.D2.WriteMode .EQ $C08F W
*--------------------------------------
MAN
SAVE INC/IO.D2.I
SAVE inc/io.d2.i

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
Mem.Table .EQ $0800
*--------------------------------------
@ -26,6 +25,6 @@ S.Table.hFile .EQ $1450 K.USR.MAX
A2osX.EndTables .EQ $1460
*--------------------------------------
MAN
SAVE INC/KERNEL.I
LOAD USR/SRC/SYS/KERNEL.S
SAVE inc/kernel.i
LOAD usr/src/sys/kernel.s
ASM

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
LIBBLKDEV.GetProDOSCatSize .EQ 4
LIBBLKDEV.BuildProDOSCat .EQ 6

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
.MA DEBUG
:1 bit $C000

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
dcmd .EQ $42 disk command (=1 for read)
unit .EQ $43 (16*slot)+(128*(drive-1))

View File

@ -1,6 +1,5 @@
NEW
AUTO 3,1
.LIST OFF
*/--------------------------------------
*\--------------------------------------
D2MotorControl >PULLB MotorOn
@ -124,8 +123,8 @@ D2MoveHead >PULLB MoveTo
.7 jsr D2.Wait25600usec
lda IO.D2.Ph0Off,x
lda IO.D2.Ph0Off,y
lda IO.D2.Ph0Off,x
clc
@ -192,7 +191,7 @@ D2TrkWrite16s >PULLW ZPPtr1
bcs .9
>LDYAI TRACK16.LEN+1
>SYSCALL2 getmem
>SYSCALL2 GetMem
bcs .9
>STYA ZPPtr2

View File

@ -188,7 +188,7 @@ BuildProDOSCat >PULLW ZPPtr1 DstBuf
txa
.30 sta VolDirHdr.next
.30 sta VolDirHdr.Next
* stz VolDirHdr.next+1
* stz VolDirHdr.VER
* stz VolDirHdr.MVER

View File

@ -1,7 +1,7 @@
NEW
AUTO 3,1
*--------------------------------------
XRW.DEBUG .EQ 0
XRWDBG .EQ 0
*--------------------------------------
XRW.START cld $D8 to flag language card bank 1 (main)
@ -193,7 +193,7 @@ regrwts ldy #1
dec XRW.RecalibrateCnt
sec
bmi .9
.DO XRW.DEBUG=1
.DO XRWDBG=1
jsr XRW.DEBUG
.FIN
ldy XRW.UnitIndex
@ -732,7 +732,7 @@ XRW.Seek ldx XRW.UnitIndex
jsr XRW.Trk2Qtrk
sta XRW.TargetQTrack
.DO XRW.DEBUG=1
.DO XRWDBG=1
jsr XRW.DEBUG3
.FIN
@ -741,7 +741,7 @@ XRW.Seek ldx XRW.UnitIndex
jsr XRW.Trk2Qtrk
sta XRW.CurrentQTrack
.DO XRW.DEBUG=1
.DO XRWDBG=1
jsr XRW.DEBUG2
.FIN
@ -900,7 +900,7 @@ XRW.ReadAddr ldy #$FC
rderr sec
rts
*--------------------------------------
.DO XRW.DEBUG=1
.DO XRWDBG=1
XRW.DEBUG phx
ldx #26

View File

@ -137,7 +137,7 @@ CS.RUN.CheckArgs
lda #1
>SYSCALL ArgV
>PUSHYA
>LIBCALL hLIBTCPIP,LIBTCPIP.HST.GETBYNAME
>LIBCALL hLIBTCPIP,LIBTCPIP.HST.GetByName
bcc .2
>SLEEP
@ -303,7 +303,7 @@ CS.RUN.SessSetup
>PUSHYA
>PUSHBI 2
>SYSCALL Printf
>SYSCALL PrintF
lda hResp
>SYSCALL FreeMem
@ -580,8 +580,8 @@ SMB.TreeConnReq.end .EQ *
SMB.FindFirstReq
.DA #0 DIRECT TCP TRANSPORT
.DA #0 24 BITS LENGTH
.DA /SMB.TreeConnReq.end-1-*
.DA #SMB.TreeConnReq.end-1-*
.DA /SMB.FindFirstReq.end-1-*
.DA #SMB.FindFirstReq.end-1-*
.DA #$FF
.AS "SMB"
.DA #S.SMB.H.CMD.TRANSACTION2
@ -627,7 +627,7 @@ SMB.FindFirstReq.UID
.DA 0 Flags
.DA $0104 InformationLevel
.HS 00000000 SearchStorageType
.DA "\*" FileName
.AS "\*" FileName
SMB.FindFirstReq.end
*--------------------------------------
.DUMMY

View File

@ -397,6 +397,35 @@ CORE.PSResume sei
inc IRQ.InKernel
rti
*--------------------------------------
GP.RomCall.JmpX jmp (.1-FPU.FADD,x)
*--------------------------------------
* http://www.txbobsc.com/scsc/scdocumentor/E7A0.html
*--------------------------------------
.1 .DA $E7C1 FADDT
.DA $E7AA FSUBT
.DA $E987 FMULTT.1
.DA $EA6B FDIVT+2
.DA $EE97 FPWRT
.DA $E941 LOG
.DA $EE8D SQR
.DA $EF09 EXP
.DA $EFEA COS
.DA $EFF1 SIN
.DA $F03A TAN
.DA $F09E ATN
*--------------------------------------
.DA $E9E3 LOAD.ARG.FROM.YA
.DA $EAF9 LOAD.FAC.FROM.YA
.DA $EB27 SETFOR (GETFAC)
.DA $EBB2 FCOMP (Y,A with FAC)
.DA $E82E NORMALIZE.FAC.2 (L->F)
.DA $EBF2 QINT (F->L)
.DA $EC4A FIN AToF
.DA $ED36 FOUT.1 PrintF
*--------------------------------------
CORE.VBLState .BS 1
CORE.IRQMode .BS 1
CORE.TickPerSec .BS 1
@ -410,6 +439,16 @@ CORE.FSID .BS 1
CORE.EvtIndex .BS 1
CORE.EvtCount .BS 1
*--------------------------------------
IRQ.InKernel .BS 1
IRQ.InLib .BS 1
IRQ.SkipA2osX .BS 1
IRQ.IntNum .BS 1
IRQ.VBL.n0 .BS 1
IRQ.VBL.0n .BS 1
IRQ.Mode .BS 1
IRQ.Tick .BS 1
*--------------------------------------
MAN
SAVE USR/SRC/SYS/KERNEL.S.CORE
LOAD USR/SRC/SYS/KERNEL.S

View File

@ -28,7 +28,7 @@ C9 .EQ DevMgr.FreeMem
* ERROR:AUX too big
.LIST OFF
.FIN
.DO A2osX.GP.SC>$2E0
.DO A2osX.GP.SC>$1D0
.LIST ON
* ERROR:GP too big
.LIST OFF
@ -45,6 +45,6 @@ C9 .EQ DevMgr.FreeMem
.FIN
*--------------------------------------
MAN
SAVE USR/SRC/SYS/KERNEL.S.CTRL
LOAD USR/SRC/SYS/KERNEL.S
SAVE usr/src/sys/kernel.s.ctrl
LOAD usr/src/sys/kernel.s
ASM

View File

@ -240,9 +240,13 @@ FS.Stat.203 >MLICALL MLIGETFILEINFO
FS.Stat.RTS rts
*--------------------------------------
FS.Stat.FX >MLICALL MLIGETFILEINFOEX
bcs FS.Stat.RTS
bcc .1
>LDYAI K.MLI.PARAMS+3
cmp #MLI.E.BADCALL
beq FS.Stat.203 Apple WS CARD
rts
.1 >LDYAI K.MLI.PARAMS+3
>STYA ZPPtr3
*--------------------------------------
FS.DirEnt2Stat jsr FS.ClrStat

View File

@ -272,6 +272,7 @@ GP.Float ldy #3
sta FAC+1,y Reverse Order
dey
bpl .1
dec pStack keep 5 bytes on stack
stz FAC.SIGN
lda #$80+32
@ -304,35 +305,6 @@ GP.lrintf jsr GP.SetFAC
rts
*--------------------------------------
GP.RomCall.JmpX jmp (.1-FPU.FADD,x)
*--------------------------------------
* http://www.txbobsc.com/scsc/scdocumentor/E7A0.html
*--------------------------------------
.1 .DA $E7C1 FADDT
.DA $E7AA FSUBT
.DA $E987 FMULTT.1
.DA $EA6B FDIVT+2
.DA $EE97 FPWRT
.DA $E941 LOG
.DA $EE8D SQR
.DA $EF09 EXP
.DA $EFEA COS
.DA $EFF1 SIN
.DA $F03A TAN
.DA $F09E ATN
*--------------------------------------
.DA $E9E3 LOAD.ARG.FROM.YA
.DA $EAF9 LOAD.FAC.FROM.YA
.DA $EB27 SETFOR (GETFAC)
.DA $EBB2 FCOMP (Y,A with FAC)
.DA $E82E NORMALIZE.FAC.2 (L->F)
.DA $EBF2 QINT (F->L)
.DA $EC4A FIN AToF
.DA $ED36 FOUT.1 PrintF
*--------------------------------------
* MLI : From Kernel Aux LC to Main LC
*--------------------------------------
GP.MLICall stx .1
@ -423,16 +395,6 @@ GP.IrqH.Exit stz IRQ.SkipA2osX reset flag
sec
rts
*--------------------------------------
IRQ.InKernel .BS 1
IRQ.InLib .BS 1
IRQ.SkipA2osX .BS 1
IRQ.IntNum .BS 1
IRQ.VBL.n0 .BS 1
IRQ.VBL.0n .BS 1
IRQ.Mode .BS 1
IRQ.Tick .BS 1
*--------------------------------------
*GO.Reset jsr GO.A2osX
* jmp CORE.Run
*--------------------------------------