mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-12 20:29:41 +00:00
Kernel 0.94
This commit is contained in:
parent
32afec7335
commit
719f016c18
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -3,7 +3,7 @@ NEW
|
|||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF BIN/ETCONFIG
|
||||
.TF bin/etconfig
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/A2OSX.I
|
||||
|
@ -24,9 +24,8 @@ ZS.START
|
|||
pETKCFG .BS 2
|
||||
ZPFrameBase .BS 2
|
||||
ZPFramePtr .BS 2
|
||||
ZPTmpPtr1 .BS 2
|
||||
ZPTmpPtr2 .BS 2
|
||||
ZPTmpPtr3 .BS 2
|
||||
BufPtr .BS 2
|
||||
|
||||
ZS.END .ED
|
||||
*--------------------------------------
|
||||
* File Header (16 Bytes)
|
||||
|
@ -106,11 +105,21 @@ CS.RUN >LIBCALL hLIBETALK,LIBETALK.GETCFG
|
|||
sec
|
||||
rts
|
||||
|
||||
CS.RUN.SETUP jsr CFG.EtcFiles
|
||||
CS.RUN.SETUP lda ETKCFG+S.NETCFG.STATUS
|
||||
bne .7
|
||||
|
||||
jsr CFG.EtcFiles
|
||||
|
||||
jsr CS.RUN.PROBE
|
||||
|
||||
jsr CS.RUN.DUMP
|
||||
jsr CS.RUN.GETNETINFO
|
||||
|
||||
lda #$80
|
||||
sta ETKCFG+S.NETCFG.STATUS
|
||||
>PUSHW L.ETKCFG
|
||||
>LIBCALL hLIBETALK,LIBETALK.SETCFG
|
||||
|
||||
.7 jsr CS.RUN.DUMP
|
||||
|
||||
.8 lda #0
|
||||
sec
|
||||
|
@ -261,34 +270,31 @@ CS.RUN.PROBE >LDYA L.MSG.PROBE
|
|||
sta AARP.PRB.SHA,x
|
||||
dex
|
||||
bpl .20
|
||||
lda #0
|
||||
* lda #$58
|
||||
sta AARP.PRB.SPA+2
|
||||
sta AARP.PRB.TPA+2
|
||||
sta ETKCFG+S.ETKCFG.NetID
|
||||
|
||||
* lda A2osX.RANDOM16+1
|
||||
* lda #$06
|
||||
sta AARP.PRB.SPA+1
|
||||
sta AARP.PRB.TPA+1
|
||||
sta ETKCFG+S.ETKCFG.NetID+1
|
||||
|
||||
lda A2osX.RANDOM16
|
||||
eor A2osX.RANDOM16+1
|
||||
* lda #$3A
|
||||
sta AARP.PRB.SPA+2
|
||||
sta AARP.PRB.TPA+2
|
||||
|
||||
lda A2osX.RANDOM16+1
|
||||
sta AARP.PRB.SPA+1
|
||||
sta AARP.PRB.TPA+1
|
||||
|
||||
lda A2osX.TIMER16
|
||||
eor A2osX.TIMER16+1
|
||||
bne .1
|
||||
|
||||
inc
|
||||
.1 cmp #$FE
|
||||
bcc .2
|
||||
|
||||
eor #$80
|
||||
bne .2
|
||||
inc
|
||||
|
||||
.2 sta AARP.PRB.SPA+3
|
||||
sta AARP.PRB.TPA+3
|
||||
sta ETKCFG+S.ETKCFG.NodID
|
||||
|
||||
lda #PROBE.MAX
|
||||
>STA.G PROBE.CNT
|
||||
|
||||
.3 >LDYA L.AARP.PRB
|
||||
>STYA IOCTL+S.IOCTL.BUFPTR
|
||||
>LDYAI AARP.PRB.LEN
|
||||
|
@ -302,6 +308,24 @@ CS.RUN.PROBE >LDYA L.MSG.PROBE
|
|||
>SLEEP
|
||||
>DEC.G PROBE.CNT
|
||||
bne .3
|
||||
|
||||
lda AARP.PRB.SPA+2
|
||||
sta ETKCFG+S.ETKCFG.NetID
|
||||
sta DDP.GetNetInfo+S.DDP2.SRC.NET
|
||||
|
||||
lda AARP.PRB.SPA+1
|
||||
sta ETKCFG+S.ETKCFG.NetID+1
|
||||
sta DDP.GetNetInfo+S.DDP2.SRC.NET+1
|
||||
|
||||
lda AARP.PRB.SPA+3
|
||||
sta ETKCFG+S.ETKCFG.NodID
|
||||
sta DDP.GetNetInfo+S.DDP2.SRC.NOD
|
||||
|
||||
* clc
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.GETNETINFO
|
||||
>LDYA L.DDP.GetNetInfo
|
||||
>STYA IOCTL+S.IOCTL.BUFPTR
|
||||
>LDYAI DDP.GetNetInfo.LEN
|
||||
|
@ -314,15 +338,14 @@ CS.RUN.PROBE >LDYA L.MSG.PROBE
|
|||
|
||||
>LDYA L.MSG.PROBE.OK
|
||||
>SYSCALL PutS
|
||||
* clc
|
||||
CS.RUN.PROBE.RTS
|
||||
CS.RUN.GETNETINFO.RTS
|
||||
rts
|
||||
*--------------------------------------
|
||||
CFG.EtcFiles >LDYAI 256
|
||||
>SYSCALL GetMem
|
||||
bcs CS.RUN.PROBE.RTS
|
||||
bcs CS.RUN.GETNETINFO.RTS
|
||||
|
||||
>STYA ZPTmpPtr1
|
||||
>STYA BufPtr
|
||||
stx CFG.hBuf1
|
||||
>LDYA L.HOSTNAME
|
||||
jsr CFG.Read.PrintF
|
||||
|
@ -331,21 +354,23 @@ CFG.EtcFiles >LDYAI 256
|
|||
lda ETKCFG+S.ETKCFG.OBJECT
|
||||
bne .4
|
||||
|
||||
>PUSHW L.ETKCFG.OBJECT
|
||||
>LDYA L.ETKCFG.OBJECT
|
||||
iny
|
||||
bne .1
|
||||
inc
|
||||
|
||||
.1 >PUSHYA
|
||||
>PUSHW L.CFG.DefaultHost
|
||||
>PUSHW A2osX.TIMER16
|
||||
>PUSHBI 2
|
||||
>SYSCALL sprintf
|
||||
|
||||
lda #11
|
||||
lda #10
|
||||
sta ETKCFG+S.ETKCFG.OBJECT
|
||||
|
||||
.4 >PUSHW L.ETKCFG
|
||||
>LIBCALL hLIBETALK,LIBETALK.SETCFG
|
||||
|
||||
lda CFG.hBuf1
|
||||
.4 lda CFG.hBuf1
|
||||
>SYSCALL FreeMem
|
||||
.9 rts
|
||||
rts
|
||||
*--------------------------------------
|
||||
CFG.Read.PrintF pha
|
||||
>PUSHW L.MSG.CFG
|
||||
|
@ -359,28 +384,30 @@ CFG.Read.HOSTNAME
|
|||
>LDYA L.HOSTNAME
|
||||
jsr CFG.Read.Open
|
||||
bcs .9
|
||||
|
||||
jsr CFG.Read.Result
|
||||
bcs .9
|
||||
|
||||
.1 jsr CFG.Read.GetS
|
||||
bcs .8
|
||||
|
||||
lda (ZPTmpPtr1)
|
||||
lda (BufPtr)
|
||||
beq .1 empty line...
|
||||
cmp #'#
|
||||
beq .1 comment...
|
||||
|
||||
ldy #0
|
||||
|
||||
.2 lda (ZPTmpPtr1),y
|
||||
.2 lda (BufPtr),y
|
||||
beq .8 end of name
|
||||
|
||||
sta ETKCFG+S.ETKCFG.OBJECT+1,y
|
||||
iny
|
||||
sta ETKCFG+S.ETKCFG.OBJECT,y
|
||||
cpy #32
|
||||
bne .2
|
||||
|
||||
.8 sty ETKCFG+S.ETKCFG.OBJECT
|
||||
|
||||
clc
|
||||
.HS B0 BCS
|
||||
.9 sec
|
||||
|
@ -423,7 +450,7 @@ CFG.Read.Close2 lda CFG.hCfgFile
|
|||
rts
|
||||
*--------------------------------------
|
||||
CFG.Read.GetS >PUSHWI 255
|
||||
>PUSHW ZPTmpPtr1
|
||||
>PUSHW BufPtr
|
||||
lda CFG.hCfgFile
|
||||
>SYSCALL fgets
|
||||
rts
|
||||
|
@ -515,24 +542,30 @@ AARP.PRB.LEN .EQ 60
|
|||
*--------------------------------------
|
||||
DDP.GetNetInfo .HS 090007FFFFFF S.ETH.DSTMAC
|
||||
.BS 6
|
||||
.DA #0,#36
|
||||
.DA #0,#DDP.GetNetInfo.DEND-DDP.GetNetInfo.LLC
|
||||
*--------------------------------------
|
||||
DDP.GetNetInfo.LLC
|
||||
.HS AA
|
||||
.HS AA
|
||||
.HS 03
|
||||
.HS 08.00.07.80.9B
|
||||
.DA #0,#6 S.DDP2.DATALEN
|
||||
*--------------------------------------
|
||||
DDP.GetNetInfo.DDP
|
||||
.DA #0,#DDP.GetNetInfo.DEND-DDP.GetNetInfo.DDP
|
||||
.DA 0 S.DDP2.CHECKSUM
|
||||
.DA $FF00
|
||||
.DA $1234
|
||||
.DA #$FF
|
||||
.DA #$FF
|
||||
.DA 0 S.DDP2.DST.NET
|
||||
.DA 0 S.DDP2.SRC.NET
|
||||
.DA #$FF S.DDP2.DST.NOD
|
||||
.DA #0 S.DDP2.SRC.NOD
|
||||
.DA #6 S.DDP2.DST.SKT
|
||||
.DA #0
|
||||
.DA #6 S.DDP2.SRC.SKT
|
||||
.DA #6 S.DDP2.TYPE
|
||||
*--------------------------------------
|
||||
.DA #5 ZIP.GetNetInfoReg
|
||||
.DA #5 ZIP.GetNetInfoReq
|
||||
.HS 00
|
||||
.HS 00.00.00.00
|
||||
.HS 00 Zone Len
|
||||
DDP.GetNetInfo.DEND .EQ *
|
||||
.BS DDP.GetNetInfo+60-*
|
||||
DDP.GetNetInfo.LEN .EQ 60
|
||||
*--------------------------------------
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
NEW
|
||||
PREFIX
|
||||
AUTO 4,1
|
||||
AUTO 3,1
|
||||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
|
@ -27,20 +26,23 @@ hTrackBuf .BS 1
|
|||
DSSS0000 .BS 1
|
||||
CurTrack .BS 1
|
||||
CurQTrack .BS 1
|
||||
Counter .BS 1
|
||||
|
||||
BlkCnt .BS 2
|
||||
TrkCnt .BS 1
|
||||
VolNum .BS 1
|
||||
Stepping .BS 1
|
||||
QTrkCnt .BS 1
|
||||
VolNum .BS 1
|
||||
|
||||
CatSize .BS 1
|
||||
CatBlkCnt .BS 1
|
||||
|
||||
CatOptions .BS 1
|
||||
|
||||
bLL .BS 1
|
||||
bCustomBlkSize .BS 1
|
||||
bHighDensity .BS 1
|
||||
|
||||
bExtraTrack .BS 1
|
||||
ZS.END
|
||||
.ED
|
||||
*--------------------------------------
|
||||
|
@ -273,18 +275,26 @@ CS.RUN.LL >LDA.G DIB+S.DIB.T
|
|||
CS.RUN.LL.RTS rts
|
||||
*--------------------------------------
|
||||
CS.RUN.LL.DISKII
|
||||
ldx #5
|
||||
ldy #0
|
||||
bit bHighDensity
|
||||
lda #0
|
||||
bit bExtraTrack
|
||||
bpl .10
|
||||
|
||||
ldy #5
|
||||
ora #8
|
||||
|
||||
.10 lda Disk2.Default,y
|
||||
sta BlkCnt,y
|
||||
.10 bit bHighDensity
|
||||
bpl .11
|
||||
|
||||
ora #16
|
||||
|
||||
.11 tay
|
||||
ldx #0
|
||||
|
||||
.12 lda Disk2.Default,y
|
||||
sta BlkCnt,x
|
||||
iny
|
||||
dex
|
||||
bne .10
|
||||
inx
|
||||
cpx #6
|
||||
bne .12
|
||||
|
||||
>LDYAI 4096
|
||||
>SYSCALL GetMem
|
||||
|
@ -294,7 +304,7 @@ CS.RUN.LL.DISKII
|
|||
>STYA ZPPtr1
|
||||
|
||||
jsr CS.RUN.MotorOn
|
||||
bcs .9
|
||||
bcs CS.RUN.LL.RTS
|
||||
|
||||
>SLEEP
|
||||
|
||||
|
@ -303,17 +313,23 @@ CS.RUN.LL.DISKII
|
|||
|
||||
stz CurTrack
|
||||
|
||||
lda #144 36*4....or 48*3
|
||||
lda #160
|
||||
sta CurQTrack
|
||||
|
||||
ldx #0
|
||||
jsr CS.RUN.SeekToX
|
||||
|
||||
lda TrkCnt
|
||||
sta Counter
|
||||
|
||||
.1 >SLEEP
|
||||
|
||||
>PUSHW L.MSG.LLDISK2
|
||||
>PUSHB CurTrack
|
||||
>PUSHBI 1
|
||||
inc
|
||||
>PUSHA
|
||||
>PUSHB TrkCnt
|
||||
>PUSHBI 3
|
||||
>SYSCALL PrintF
|
||||
bcs .9
|
||||
|
||||
|
@ -325,7 +341,7 @@ CS.RUN.LL.DISKII
|
|||
bcs .9
|
||||
|
||||
inc CurTrack
|
||||
dec TrkCnt
|
||||
dec Counter
|
||||
beq .8
|
||||
|
||||
lda CurQTrack
|
||||
|
@ -339,7 +355,10 @@ CS.RUN.LL.DISKII
|
|||
|
||||
.9 rts
|
||||
|
||||
.8 ldx #0
|
||||
.8 lda #160
|
||||
sta CurQTrack
|
||||
|
||||
ldx #0
|
||||
jsr CS.RUN.SeekToX
|
||||
|
||||
jsr CS.RUN.MotorOff
|
||||
|
@ -524,23 +543,41 @@ MSG.ERR .AS "[%h]"
|
|||
MSG.CRLF .AZ "\r\n"
|
||||
MSG.NOSIZE .AZ "Unable to get media size."
|
||||
MSG.INIT .AZ "Formatting %s (%D Blks), Volname:%s\r\n"
|
||||
MSG.LLDISK2 .AZ "\rWriting Track %02d..."
|
||||
MSG.LLDISK2 .AZ "\rWriting Track %02d (%02d/%02d)..."
|
||||
MSG.LL .AZ "\rLow Level Format..."
|
||||
MSG.WRITECAT .AZ "Writing Catalog..."
|
||||
FMT.BLANK .AZ "BLANK%H%H"
|
||||
*--------------------------------------
|
||||
OptionList .AS "LlBbHs"
|
||||
OptionVars .DA #bLL,#bLL,#bCustomBlkSize,#bCustomBlkSize,bHighDensity
|
||||
OptionList .AS "LlBbHhXx"
|
||||
OptionVars .DA #bLL,#bLL,#bCustomBlkSize,#bCustomBlkSize,bHighDensity,bHighDensity,bExtraTrack,bExtraTrack
|
||||
*--------------------------------------
|
||||
Disk2.Default .DA 280 BlkCnt
|
||||
.DA #35 TrkCnt
|
||||
.DA #254 VolNum
|
||||
.DA #4 Stepping
|
||||
.DA #140 QTrkCnt
|
||||
.DA #254 VolNum
|
||||
.BS 2
|
||||
*--------------------------------------
|
||||
Disk2.X .DA 320 BlkCnt
|
||||
.DA #40 TrkCnt
|
||||
.DA #4 Stepping
|
||||
.DA #160 QTrkCnt
|
||||
.DA #1 VolNum
|
||||
.BS 2
|
||||
*--------------------------------------
|
||||
Disk2.H .DA 384 BlkCnt
|
||||
.DA #48 TrkCnt
|
||||
.DA #126 VolNum
|
||||
.DA #3 Stepping
|
||||
.DA #192 QTrkCnt
|
||||
.DA #2 VolNum
|
||||
.BS 2
|
||||
*--------------------------------------
|
||||
Disk2.HX .DA 432 BlkCnt
|
||||
.DA #54 TrkCnt
|
||||
.DA #3 Stepping
|
||||
.DA #216 QTrkCnt
|
||||
.DA #3 VolNum
|
||||
.BS 2
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
|
|
|
@ -75,7 +75,9 @@ CS.INIT clc
|
|||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN >PUSHW L.MSG.TOPBAR
|
||||
>PUSHBI 0
|
||||
>PUSHB #K.VER
|
||||
>PUSHB /K.VER
|
||||
>PUSHBI 2
|
||||
>SYSCALL PrintF
|
||||
jsr CS.RUN.Load
|
||||
bcs .1
|
||||
|
@ -187,8 +189,8 @@ CS.RUN.ToggleAatY
|
|||
sta (ZPCfgPtr),y
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.Load >PUSHEA.G StatBuf
|
||||
>LDYA L.FILENAME
|
||||
CS.RUN.Load >PUSHW L.FILENAME
|
||||
>PUSHEA.G StatBuf
|
||||
>SYSCALL Stat
|
||||
bcs .99
|
||||
|
||||
|
@ -367,10 +369,10 @@ SLOTS .DA #0
|
|||
SLOTS.MAX .EQ *-SLOTS
|
||||
*--------------------------------------
|
||||
FILENAME .AZ "${ROOT}A2osX.kconfig"
|
||||
MSG.TOPBAR .AZ "\e[40;37m\e[7m\e[1;1HA2osX Kernel Config Utility : "
|
||||
MSG.TOPBAR .AZ "\e[40;37m\e[7m\e[1;1HA2osX %d.%d Kernel Config Utility : "
|
||||
MSG.TOPBAR.OK .AZ "KCONFIG File Successfully Loaded. \e[0m"
|
||||
MSG.TOPBAR.KO .AZ "Invalid/missing KCONFIG File. \e[0m"
|
||||
MSG.STATUSBAR .AZ "\e[40;37m\e[7m\e[24;1HSlot 1-7:En/Dis Ctrl:(Q)uit,(S)ave,(T)iming,(C)HRoot,(P)reemptive,TT(Y)s \e[0m"
|
||||
MSG.STATUSBAR .AZ "\e[40;37m\e[7m\e[24;1H(1-7):En/Dis Slot, Ctrl:(Q)uit,(S)ave,(T)iming,(C)HRoot,(P)reemptive,TT(Y)s \e[0m"
|
||||
MSG.KCONF .AZ "\e[93;44m\e[2;1H------ Actual Kernel Configuration ------\e[K\r\n"
|
||||
MSG.FCONF .AZ "\e[93;44m\e[13;1H------ KCONFIG File Configuration -------\e[K\r\n"
|
||||
MSG.HZ .AZ " Machine Timing : %d0 Hz\e[K\r\n"
|
||||
|
|
|
@ -3,7 +3,7 @@ NEW
|
|||
.LIST OFF
|
||||
.OP 65C02
|
||||
.OR $2000
|
||||
.TF BIN/TELNET
|
||||
.TF bin/telnet
|
||||
*--------------------------------------
|
||||
.INB INC/MACROS.I
|
||||
.INB INC/A2OSX.I
|
||||
|
@ -103,11 +103,11 @@ CS.RUN.IPOK ldy #S.PS.ARGC
|
|||
lda TimeOut
|
||||
bne .2
|
||||
|
||||
>PUSHW L.MSG.UNKNOWN
|
||||
lda #1
|
||||
>SYSCALL ArgV
|
||||
>PUSHYA
|
||||
>PUSHBI 2
|
||||
>LDYA L.MSG.UNKNOWN
|
||||
>SYSCALL PrintF
|
||||
bra .99
|
||||
|
||||
|
@ -124,19 +124,20 @@ CS.RUN.HOSTOK lda #2
|
|||
>SYSCALL atoi
|
||||
>STYA SA.REMOTE+S.SOCKADDR.PORT
|
||||
|
||||
CS.RUN.PORTOK lda #1
|
||||
>SYSCALL ArgV
|
||||
>PUSHYA
|
||||
>PUSHW SA.REMOTE+S.SOCKADDR.PORT
|
||||
|
||||
ldx #3
|
||||
CS.RUN.PORTOK >PUSHW L.MSG.HOSTOK
|
||||
ldx #0
|
||||
|
||||
.1 >PUSHB SA.REMOTE+S.SOCKADDR.ADDR,x
|
||||
dex
|
||||
bpl .1
|
||||
inx
|
||||
cpx #4
|
||||
bne .1
|
||||
|
||||
>PUSHW SA.REMOTE+S.SOCKADDR.PORT
|
||||
lda #1
|
||||
>SYSCALL ArgV
|
||||
>PUSHYA
|
||||
|
||||
>PUSHBI 8
|
||||
>LDYA L.MSG.HOSTOK
|
||||
>SYSCALL PrintF
|
||||
|
||||
CS.RUN.OPENSKT >PUSHBI 0 no protocol
|
||||
|
@ -177,9 +178,10 @@ CS.RUN.OPENSKT >PUSHBI 0 no protocol
|
|||
lda #ERR.SKT.NOCONN
|
||||
bra .9
|
||||
|
||||
.4 >PUSHBI 0
|
||||
>LDYA L.MSG.SKTOK
|
||||
.4 >PUSHW L.MSG.SKTOK
|
||||
>PUSHBI 0
|
||||
>SYSCALL PrintF
|
||||
|
||||
>LDYAI BUFSIZE
|
||||
>SYSCALL GetMem
|
||||
bcs .99
|
||||
|
@ -199,8 +201,8 @@ CS.RUN.LOOP >SLEEP
|
|||
>PUSHW ZPBufPtr
|
||||
lda hSocket
|
||||
>LIBCALL hLIBTCPIP,LIBTCPIP.Read
|
||||
|
||||
.99 bcs .9
|
||||
|
||||
>PUSHYA len
|
||||
>PUSHW ZPBufPtr
|
||||
ldy #S.PS.hStdOut
|
||||
|
@ -237,18 +239,22 @@ CS.RUN.LOOP >SLEEP
|
|||
jmp CS.RUN.LOOP
|
||||
*--------------------------------------
|
||||
CS.RUN.SKTERR pha
|
||||
>PUSHW L.MSG.SKTERR
|
||||
pla
|
||||
pha
|
||||
>PUSHA
|
||||
>PUSHBI 1
|
||||
>LDYA L.MSG.SKTERR
|
||||
>SYSCALL PrintF
|
||||
pla
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.IOERR pha
|
||||
>PUSHW L.MSG.IOERR
|
||||
pla
|
||||
pha
|
||||
>PUSHA
|
||||
>PUSHBI 1
|
||||
>LDYA L.MSG.IOERR
|
||||
>SYSCALL PrintF
|
||||
pla
|
||||
sec
|
||||
|
|
|
@ -357,7 +357,8 @@ D2MoveHead >PULLB MoveTo
|
|||
.4 jsr XRW.Wait100msA Trash X
|
||||
|
||||
jsr XRW.AllPhaseOff
|
||||
|
||||
lda #28
|
||||
jsr XRW.Wait100msA Trash X
|
||||
bra .1
|
||||
|
||||
.8 clc
|
||||
|
|
|
@ -3,7 +3,9 @@ NEW
|
|||
.LIST OFF
|
||||
*--------------------------------------
|
||||
CFG.SET >PULLW ZPTmpPtr1 ETKCFG
|
||||
|
||||
ldy #S.ETKCFG-1
|
||||
|
||||
.1 lda (ZPTmpPtr1),y
|
||||
sta ETKCFG,y
|
||||
dey
|
||||
|
@ -18,6 +20,7 @@ CFG.SET >PULLW ZPTmpPtr1 ETKCFG
|
|||
sta AARP.REP.SHA,x
|
||||
dex
|
||||
bpl .2
|
||||
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
|
|
@ -922,15 +922,17 @@ bufaddrh .HS 00
|
|||
delflag .HS 00 used by 'detree' to know if called from delete (destroy).
|
||||
|
||||
* variables used by SP remap & XRW Disk ][ to store last track used
|
||||
|
||||
XRW.D2Trk .EQ *
|
||||
XDOS.SPUnit .HS 00000000000000 14+1 for S0D2
|
||||
.HS 00
|
||||
.HS 00000000000000
|
||||
|
||||
XRW.D2TrkCnt .EQ *
|
||||
XDOS.SPVectLo .HS 00000000000000 storage for low byte of smartport entry.
|
||||
.HS 00
|
||||
.HS 00000000000000
|
||||
|
||||
XRW.D2Stepping .EQ *
|
||||
XDOS.SPVectHi .HS 00000000000000 storage for high byte of smartport entry.
|
||||
.HS 00
|
||||
.HS 00000000000000
|
||||
|
|
|
@ -53,13 +53,14 @@ L59BD jsr XRW.AllPhaseOff make sure all motor phases are off.
|
|||
lda bloknml
|
||||
ldx bloknml+1
|
||||
stx XRW.ReqTrack calculate block's track and sector.
|
||||
beq .10 branch if block # is in range,
|
||||
|
||||
dex else test further.
|
||||
bne .9 taken if bad range.
|
||||
* beq .10 branch if block # is in range,
|
||||
|
||||
cmp #$18 must be < $118
|
||||
bcs .9 branch if block # is out of range
|
||||
* dex else test further.
|
||||
* bne .9 taken if bad range.
|
||||
|
||||
* cmp #$18 must be < $118
|
||||
* bcs .9 branch if block # is out of range
|
||||
|
||||
.10 ldy #$05
|
||||
|
||||
|
@ -180,9 +181,9 @@ L53A4 dec XRW.RetryCnt one less chance.
|
|||
|
||||
lda XRW.CurrentTrack
|
||||
pha save track
|
||||
asl
|
||||
asl
|
||||
adc #32 pretend track is 8 > curtrk
|
||||
|
||||
clc
|
||||
adc #8 pretend track is 8 > curtrk
|
||||
|
||||
ldy #64
|
||||
sty XRW.RetryCnt reset retries to 64 max.
|
||||
|
@ -200,11 +201,9 @@ L53BE ldy XRW.AddrField.T
|
|||
lda XRW.CurrentTrack preserve destination track
|
||||
pha
|
||||
tya
|
||||
asl
|
||||
asl
|
||||
|
||||
L53CC ldy XRW.UnitIndex get index to drive #
|
||||
sta XDOS.SPUnit-1,y set the slot dependent track location
|
||||
sta XRW.D2Trk-1,y set the slot dependent track location
|
||||
|
||||
pla
|
||||
jsr XRW.Seek
|
||||
|
@ -799,13 +798,21 @@ L56E6 lda IO.D2.RData,x first bit-slip nibl
|
|||
cmp #$DE
|
||||
bne rderr
|
||||
|
||||
nop delay
|
||||
ldx XRW.AddrField.V
|
||||
|
||||
L56F0 lda IO.D2.RData,x second bit-slip nible
|
||||
bpl L56F0 *** no page cross ***
|
||||
cpx #254
|
||||
bne .8
|
||||
|
||||
cmp #$AA
|
||||
bne rderr
|
||||
inx
|
||||
inx
|
||||
|
||||
.8 ldy XRW.UnitIndex
|
||||
lda XRW.Vol2TrkCnt,x
|
||||
sta XRW.D2TrkCnt-1,y
|
||||
lda XRW.Vol2Stepping,x
|
||||
sta XRW.D2Stepping-1,y
|
||||
|
||||
ldx A2L restore X=0SSS0000
|
||||
|
||||
clc normal read ok
|
||||
rts
|
||||
|
@ -824,29 +831,31 @@ nbuf2 .BS $56 nibl buffer for read/write of low 2-bits of each byte.
|
|||
*--------------------------------------
|
||||
* fast seek subroutine
|
||||
* A = desired track
|
||||
* XRW.CurrentTrack = current 1/4 track
|
||||
* XRW.CurrentTrack = current rack
|
||||
*
|
||||
* montimel,h are incremented by the # of 100us quantums required by seek for motor on time overlap.
|
||||
* variables used: XRW.CurrentTrack, A2L, montimel, montimeh
|
||||
*--------------------------------------
|
||||
XRW.Seek asl transform into 1/4 tracks
|
||||
asl
|
||||
XRW.Seek pha save target track
|
||||
|
||||
pha
|
||||
ldx XRW.UnitIndex
|
||||
|
||||
ldy XRW.UnitIndex get index to previous track
|
||||
lda XDOS.SPUnit-1,y for current drive.
|
||||
jsr XRW.Trk2Qtrk
|
||||
sta XRW.TargetQTrack
|
||||
|
||||
sta XRW.CurrentTrack current position.
|
||||
lda XRW.D2Trk-1,x
|
||||
|
||||
jsr XRW.Trk2Qtrk
|
||||
sta XRW.CurrentQTrack
|
||||
|
||||
pla
|
||||
sta XRW.CurrentTrack will be current track at the end
|
||||
sta XRW.D2Trk-1,x
|
||||
|
||||
sta XDOS.SPUnit-1,y
|
||||
|
||||
.1 lda XDOS.SPUnit-1,y
|
||||
.1 lda XRW.TargetQTrack
|
||||
|
||||
sec
|
||||
sbc XRW.CurrentTrack
|
||||
sbc XRW.CurrentQTrack
|
||||
beq .8
|
||||
|
||||
bcc .2
|
||||
|
@ -865,8 +874,8 @@ XRW.Seek asl transform into 1/4 tracks
|
|||
.3 bit #1 remember 1/4 or 2/4
|
||||
php
|
||||
clc
|
||||
adc XRW.CurrentTrack
|
||||
sta XRW.CurrentTrack
|
||||
adc XRW.CurrentQTrack
|
||||
sta XRW.CurrentQTrack
|
||||
|
||||
jsr XRW.PhaseOn
|
||||
|
||||
|
@ -880,11 +889,12 @@ XRW.Seek asl transform into 1/4 tracks
|
|||
|
||||
jsr XRW.AllPhaseOff
|
||||
|
||||
lda #28
|
||||
jsr XRW.Wait100msA Trash X
|
||||
|
||||
bra .1
|
||||
|
||||
.8 lsr XRW.CurrentTrack convert back to track#
|
||||
lsr XRW.CurrentTrack
|
||||
rts
|
||||
.8 rts
|
||||
|
||||
XRW.PhaseOn pha
|
||||
jsr .7
|
||||
|
@ -912,6 +922,20 @@ XRW.AllPhaseOff ldx A2L
|
|||
bne .1
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
XRW.Trk2Qtrk asl x2
|
||||
sta .1+1
|
||||
|
||||
bit XRW.D2Stepping-1,x
|
||||
bpl .1 x4
|
||||
|
||||
lsr x3
|
||||
|
||||
.1 adc #$ff SELF MODIFIED
|
||||
rts
|
||||
*--------------------------------------
|
||||
XRW.Vol2TrkCnt .DA #35,#40,#48,#54
|
||||
XRW.Vol2Stepping .DA #0,#0,#$ff,#$ff 4,4,3,3
|
||||
*--------------------------------------
|
||||
.LIST ON
|
||||
XRW.FREE2 .EQ $D596-*
|
||||
|
@ -970,9 +994,11 @@ XRW.CheckSum .HS 00 used for address header cksum
|
|||
XRW.RetryCnt .HS 00
|
||||
.HS 888C9094989CA0
|
||||
XRW.0000XX00 .HS 0008040C used in fast prenib.
|
||||
.HS FF
|
||||
* .HS FF
|
||||
XRW.CurrentQTrack .HS 00
|
||||
.HS A4A8AC
|
||||
.HS FF
|
||||
* .HS FF
|
||||
XRW.TargetQTrack .HS 00
|
||||
.HS B0B4B8BCC0C4C8
|
||||
.HS FFFF
|
||||
.HS CCD0D4D8DCE0
|
||||
|
|
|
@ -11,12 +11,15 @@ NEW
|
|||
K.GetDevByName >STYA ZPPtr1 requested dev name
|
||||
ldx #1
|
||||
|
||||
.1 lda Dev.Table-1,x
|
||||
clc
|
||||
.1 jsr SHARED.GetDevFD
|
||||
bcs K.GetDev.NODEV
|
||||
|
||||
pha
|
||||
tya
|
||||
* clc
|
||||
adc #S.FD.DEV
|
||||
sta ZPPtr2
|
||||
lda Dev.Table,x
|
||||
beq K.GetDev.NODEV
|
||||
pla
|
||||
|
||||
adc /S.FD.DEV
|
||||
sta ZPPtr2+1
|
||||
|
@ -29,14 +32,11 @@ K.GetDevByName >STYA ZPPtr1 requested dev name
|
|||
bne .7
|
||||
|
||||
ora (ZPPtr2),y Both char are 0 ?
|
||||
bne .2 no....loop
|
||||
bne .2
|
||||
|
||||
ldy Dev.Table-1,x
|
||||
lda Dev.Table,x
|
||||
clc
|
||||
rts
|
||||
beq SHARED.GetDevFD yes, get Ptr
|
||||
|
||||
.7 inx
|
||||
.7 inx no....loop
|
||||
inx
|
||||
cpx #K.DEV.MAX*2+1
|
||||
bne .1
|
||||
|
@ -58,9 +58,8 @@ K.GetDevStatus >PULLW K.S.IOCTL+S.IOCTL.BUFPTR
|
|||
>PULLA
|
||||
tax
|
||||
|
||||
lda Dev.Table,x
|
||||
beq K.GetDev.NODEV
|
||||
ldy Dev.Table-1,x
|
||||
jsr SHARED.GetDevFD
|
||||
bcs K.GetDev.9
|
||||
>STYA pFD
|
||||
|
||||
lda #S.IOCTL.STATCODE.GETDIB
|
||||
|
@ -79,12 +78,10 @@ SHARED.GetDevStatus
|
|||
*--------------------------------------
|
||||
SHARED.pDrvJmp jmp (pDrv)
|
||||
*--------------------------------------
|
||||
SHARED.GetPDrv ldy #S.FD.DEV.DRVPTR
|
||||
lda (pFD),y
|
||||
sta pDRV
|
||||
iny
|
||||
lda (pFD),y
|
||||
sta pDRV+1
|
||||
SHARED.GetDevFD lda Dev.Table,x
|
||||
beq K.GetDev.NODEV
|
||||
ldy Dev.Table-1,x
|
||||
clc
|
||||
rts
|
||||
*/--------------------------------------
|
||||
* # MKDev
|
||||
|
@ -197,10 +194,8 @@ K.IOCTL ldy #3 hDev
|
|||
lda (pStack),y
|
||||
tax
|
||||
|
||||
lda Dev.Table,x
|
||||
beq .9
|
||||
|
||||
ldy Dev.Table-1,x
|
||||
jsr SHARED.GetDevFD
|
||||
bcs .9
|
||||
>STYA pFD
|
||||
|
||||
jsr SHARED.GetPDrv
|
||||
|
@ -215,9 +210,7 @@ K.IOCTL ldy #3 hDev
|
|||
|
||||
jmp (pDrv)
|
||||
|
||||
.9 sec
|
||||
lda #MLI.E.NODEV
|
||||
>RET 4
|
||||
.9 >RET 4
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/SYS/KERNEL.S.DEV
|
||||
|
|
|
@ -174,8 +174,7 @@ K.ReadDir.ROOT ldy #S.FD.DIR.FC did we already returned something ?
|
|||
sta (pFD),y Flag that we returned something for next time
|
||||
jmp K.ReadDir.EXIT
|
||||
*--------------------------------------
|
||||
K.ReadDir.DEV >DEBUG
|
||||
|
||||
K.ReadDir.DEV
|
||||
jmp K.ReadDir.NoMore
|
||||
*--------------------------------------
|
||||
K.ReadDir.DIR sta K.MLI.PARAMS+1 A=#S.DIR.PRODOS.REF
|
||||
|
|
|
@ -316,7 +316,7 @@ MemMgrInit >LDYAI Mem.MHiMem
|
|||
rts
|
||||
*--------------------------------------
|
||||
SysScrInit >LDYAI Mem.XHiMem
|
||||
>STYA FD.TTY+S.FD.DEV.BUFPTR
|
||||
>STYA FD.TTY+S.FD.DEV.DCBPTR
|
||||
|
||||
jsr SysScrInit.TTYPtrs
|
||||
|
||||
|
@ -347,36 +347,26 @@ SysScrInit >LDYAI Mem.XHiMem
|
|||
.9 rts
|
||||
*--------------------------------------
|
||||
SysScrInit.TTYPtrs
|
||||
lda DevMgr.Free
|
||||
lda FD.TTY+S.FD.DEV.DCBPTR
|
||||
sec
|
||||
sbc #TTY.BUF.SIZE+S.DCB.TTY
|
||||
sta FD.TTY+S.FD.DEV.DCBPTR
|
||||
sta .1+1
|
||||
clc
|
||||
adc #S.DCB.TTY
|
||||
sta DevMgr.Free
|
||||
tay
|
||||
|
||||
lda DevMgr.Free+1
|
||||
lda FD.TTY+S.FD.DEV.DCBPTR+1
|
||||
sbc /TTY.BUF.SIZE+S.DCB.TTY
|
||||
sta FD.TTY+S.FD.DEV.DCBPTR+1
|
||||
sta .1+2
|
||||
adc /S.DCB.TTY
|
||||
sta DevMgr.Free+1
|
||||
|
||||
ldx #S.DCB.TTY-1
|
||||
|
||||
sta SETWRITEAUX
|
||||
|
||||
.1 stz $ffff,x SELF MODIFIED
|
||||
dex
|
||||
bpl .1
|
||||
|
||||
lda FD.TTY+S.FD.DEV.BUFPTR
|
||||
sec
|
||||
sbc #TTY.BUF.SIZE
|
||||
sta FD.TTY+S.FD.DEV.BUFPTR
|
||||
tay
|
||||
|
||||
lda FD.TTY+S.FD.DEV.BUFPTR+1
|
||||
sbc /TTY.BUF.SIZE
|
||||
sta FD.TTY+S.FD.DEV.BUFPTR+1
|
||||
|
||||
sta SETWRITEAUX
|
||||
>STYA Mem.HiMem
|
||||
>STYA Mem.Free
|
||||
sta CLRWRITEAUX
|
||||
|
|
|
@ -358,10 +358,7 @@ K.FreeMem tay
|
|||
|
||||
bne K.FreeMem.ERR
|
||||
|
||||
.10 * cmp #$3D
|
||||
* bne .11
|
||||
* >DEBUG
|
||||
.11 jsr MEM.GetMemByID X,Y unmodified
|
||||
.10 jsr MEM.GetMemByID X,Y unmodified
|
||||
lda (ZPMemMgrSPtr) In use ?
|
||||
bpl K.FreeMem.ERR
|
||||
|
||||
|
|
|
@ -155,6 +155,16 @@ SHARED.GetScrnDevX
|
|||
sta SETREADAUX
|
||||
rts
|
||||
*--------------------------------------
|
||||
SHARED.GetPDrv ldy #S.FD.DEV.DRVPTR
|
||||
lda (pFD),y
|
||||
sta pDRV
|
||||
iny
|
||||
lda (pFD),y
|
||||
sta pDRV+1
|
||||
rts
|
||||
*--------------------------------------
|
||||
DEV.FIFO .AS "/dev/fifo" STAT,UNISTD
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/SYS/KERNEL.S.SHARED
|
||||
LOAD USR/SRC/SYS/KERNEL.S
|
||||
|
|
|
@ -320,19 +320,26 @@ PrintF.SS ldy #$00 PSTR
|
|||
|
||||
jsr STDIO.GetStackByte
|
||||
bcs .9
|
||||
|
||||
sta ZPPtr1+1
|
||||
jsr STDIO.GetStackByte
|
||||
bcs .9
|
||||
|
||||
sta ZPPtr1
|
||||
|
||||
lda (ZPPtr1) if CSTR:last char=0, if PSTR:len=0
|
||||
beq .8
|
||||
|
||||
ldy .1+1
|
||||
|
||||
.1 lda #$ff Self Modified
|
||||
bne .11 CSTR
|
||||
|
||||
tya PSTR
|
||||
cmp (ZPPtr1) len check
|
||||
|
||||
beq .2
|
||||
|
||||
.11 iny
|
||||
lda (ZPPtr1),y
|
||||
beq .2
|
||||
|
@ -349,8 +356,10 @@ PrintF.SS ldy #$00 PSTR
|
|||
|
||||
.2 lda K.PrintF.PadL
|
||||
beq .8
|
||||
|
||||
.3 cpy K.PrintF.PadL
|
||||
beq .8
|
||||
|
||||
lda K.PrintF.PadC
|
||||
jsr PrintF.PutC
|
||||
bcs .9
|
||||
|
|
|
@ -20,26 +20,39 @@ TERM.STATUS jsr TERM.GetIOCTLBufCntDCB
|
|||
|
||||
ldy #S.IOCTL.STATCODE
|
||||
lda (ZPIOCTL),y
|
||||
tay
|
||||
bra TERM.TOAUX
|
||||
|
||||
TERM.OPEN sta ZPDevID DEV.ID in A for OPEN
|
||||
|
||||
TERM.CONTROL
|
||||
TERM.OPEN
|
||||
TERM.CLOSE pha DEV.ID in A for OPEN
|
||||
jsr TERM.GetDCB
|
||||
pla
|
||||
TERM.CLOSE jsr TERM.GetDCB
|
||||
|
||||
bra TERM.TOAUX
|
||||
|
||||
TERM.READ
|
||||
TERM.WRITE jsr TERM.GetIOCTLBufCntDCB
|
||||
*--------------------------------------
|
||||
TERM.TOAUX sta SETREADAUX
|
||||
TERM.TOAUX lda A2osX.ASCREEN
|
||||
|
||||
sta SETREADAUX
|
||||
sta SETWRITEAUX
|
||||
jsr .1
|
||||
|
||||
cmp (ZPDCBPtr) #S.DCB.TTY.DEVID
|
||||
|
||||
beq .1 CS
|
||||
|
||||
clc
|
||||
|
||||
.1 ror bActive
|
||||
|
||||
jsr .8
|
||||
|
||||
sta CLRREADAUX
|
||||
sta CLRWRITEAUX
|
||||
rts
|
||||
|
||||
.1 jmp (TERMX,x)
|
||||
.8 jmp (TERMX,x)
|
||||
*--------------------------------------
|
||||
TERM.GetIOCTLBufCntDCB
|
||||
>STYA ZPIOCTL
|
||||
|
@ -52,6 +65,7 @@ TERM.GetIOCTLBufCntDCB
|
|||
sta ZPBufPtr+1
|
||||
|
||||
iny #S.IOCTL.BYTECNT
|
||||
|
||||
lda (ZPIOCTL),y
|
||||
eor #$ff
|
||||
sta ZPCount
|
||||
|
@ -61,6 +75,7 @@ TERM.GetIOCTLBufCntDCB
|
|||
sta ZPCount+1
|
||||
*--------------------------------------
|
||||
TERM.GetDCB ldy #S.FD.DEV.DCBPTR
|
||||
|
||||
lda (pFD),y
|
||||
sta ZPDCBPtr
|
||||
|
||||
|
@ -68,22 +83,6 @@ TERM.GetDCB ldy #S.FD.DEV.DCBPTR
|
|||
lda (pFD),y
|
||||
sta ZPDCBPtr+1
|
||||
|
||||
iny S.FD.DEV.BUFPTR
|
||||
lda (pFD),y
|
||||
sta ZPBufBase
|
||||
|
||||
iny
|
||||
lda (pFD),y
|
||||
sta ZPBufBase+1
|
||||
|
||||
lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
||||
cmp A2osX.ASCREEN
|
||||
beq .1 CS
|
||||
|
||||
clc
|
||||
|
||||
.1 ror bActive
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
TERM.GetBufByte sta CLRREADAUX
|
||||
|
@ -93,17 +92,14 @@ TERM.GetBufByte sta CLRREADAUX
|
|||
*--------------------------------------
|
||||
TERM.GetDevName sta CLRREADAUX
|
||||
|
||||
lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
||||
tax
|
||||
lda Dev.Table-1,x
|
||||
clc
|
||||
adc #S.FD.DEV
|
||||
sta TXTPTR
|
||||
tay
|
||||
|
||||
lda Dev.Table,x
|
||||
adc /S.FD.DEV
|
||||
|
||||
sta TXTPTR+1
|
||||
sta SETREADAUX
|
||||
rts
|
||||
*--------------------------------------
|
||||
|
|
|
@ -6,21 +6,22 @@ CURSOR.BLINK.SPEED .EQ 2
|
|||
.DUMMY
|
||||
.OR ZPDRV
|
||||
ZPIOCTL .BS 2
|
||||
ZPDCBPtr .BS 2
|
||||
ZPBufPtr .BS 2
|
||||
ZPBufBase .BS 2
|
||||
ZPDCBPtr .BS 2
|
||||
|
||||
ZPCount .BS 2
|
||||
|
||||
ZPBufBaseL1 .BS 2
|
||||
ZPBufBaseL2 .BS 2
|
||||
ZPScrBaseL1 .BS 2
|
||||
ZPScrBaseL2 .BS 2
|
||||
*--------------------------------------
|
||||
ZPCount .BS 2
|
||||
bActive .BS 1
|
||||
ZPDevID .BS 1
|
||||
|
||||
ZPTmpBool .BS 1
|
||||
ZPTmpChar .BS 1
|
||||
|
||||
bActive .BS 1
|
||||
CsiHeader .BS 1
|
||||
CsiParamCnt .BS 1
|
||||
CsiParams .BS 4
|
||||
|
@ -37,7 +38,8 @@ TERMX .DA TERMX.STATUS
|
|||
.DA TERMX.READ
|
||||
.DA TERMX.WRITE
|
||||
*--------------------------------------
|
||||
TERMX.STATUS beq .1
|
||||
TERMX.STATUS tya
|
||||
beq .1
|
||||
|
||||
cmp #S.IOCTL.STATCODE.GETDIB
|
||||
bne .3
|
||||
|
@ -94,12 +96,9 @@ TERMX.OPEN.E lda #MLI.E.OPEN
|
|||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
TERMX.OPEN tax
|
||||
jsr TERMX.ISOPENED
|
||||
TERMX.OPEN jsr TERMX.ISOPENED
|
||||
bne TERMX.OPEN.E
|
||||
|
||||
phx
|
||||
|
||||
ldx #0
|
||||
|
||||
.2 jsr SHARED.GetScrnDevX
|
||||
|
@ -109,13 +108,11 @@ TERMX.OPEN tax
|
|||
cpx #K.TTY.MAX+1
|
||||
bne .2
|
||||
|
||||
plx
|
||||
|
||||
lda #E.OOH
|
||||
sec
|
||||
rts
|
||||
|
||||
.3 pla
|
||||
.3 lda ZPDevID
|
||||
|
||||
sta CLRWRITEAUX
|
||||
sta A2osX.SCRNDEVS,x
|
||||
|
@ -1106,12 +1103,12 @@ Char.Out.Get ldy #S.DCB.TTY.OUTTAIL
|
|||
clc
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
TERMX.SETUP.L1X lda ZPBufBase
|
||||
TERMX.SETUP.L1X lda ZPDCBPtr
|
||||
clc
|
||||
adc BUF.BASEL,x
|
||||
sta ZPBufBaseL1
|
||||
|
||||
lda ZPBufBase+1
|
||||
lda ZPDCBPtr+1
|
||||
adc BUF.BASEH,x
|
||||
sta ZPBufBaseL1+1
|
||||
|
||||
|
@ -1182,7 +1179,10 @@ TERMX.Title.ON ldy #S.DCB.TTY.bTITLE
|
|||
lda #$ff
|
||||
sta (ZPDCBPtr),y
|
||||
|
||||
lda (ZPDCBPtr) #S.DCB.TTY.DEVID
|
||||
tax
|
||||
jsr TERM.GetDevName
|
||||
>STYA TXTPTR
|
||||
|
||||
ldx #0
|
||||
jsr TERMX.SETUP.L1X.SCR
|
||||
|
@ -1227,12 +1227,12 @@ TERMX.SCRCPY ldx #23
|
|||
|
||||
sta SET80STORE
|
||||
|
||||
.1 lda ZPBufBase
|
||||
.1 lda ZPDCBPtr
|
||||
clc
|
||||
adc BUF.BASEL,x
|
||||
sta .80+1
|
||||
|
||||
lda ZPBufBase+1
|
||||
lda ZPDCBPtr+1
|
||||
adc BUF.BASEH,x
|
||||
sta .80+2
|
||||
jsr TERMX.SETUP.L1X.SCR
|
||||
|
@ -1272,12 +1272,12 @@ TERMX.SCRCPY ldx #23
|
|||
rts
|
||||
*--------------------------------------
|
||||
TERMX.COPY.XtoL1
|
||||
lda ZPBufBase
|
||||
lda ZPDCBPtr
|
||||
clc
|
||||
adc BUF.BASEL,x
|
||||
sta ZPBufBaseL2
|
||||
|
||||
lda ZPBufBase+1
|
||||
lda ZPDCBPtr+1
|
||||
adc BUF.BASEH,x
|
||||
sta ZPBufBaseL2+1
|
||||
|
||||
|
@ -1470,54 +1470,54 @@ REMAP.E0.FF .HS 5B4142434445464748495FA0DF544e4f
|
|||
SCR.BASEL .HS 00.80.00.80.00.80.00.80.28.A8.28.A8.28.A8.28.A8.50.D0.50.D0.50.D0.50.D0
|
||||
*SCR.BASEH .HS 04.04.05.05.06.06.07.07.04.04.05.05.06.06.07.07.04.04.05.05.06.06.07.07
|
||||
*--------------------------------------
|
||||
BUF.BASEL .DA #0
|
||||
.DA #80
|
||||
.DA #160
|
||||
.DA #240
|
||||
.DA #320
|
||||
.DA #400
|
||||
.DA #480
|
||||
.DA #560
|
||||
.DA #640
|
||||
.DA #720
|
||||
.DA #800
|
||||
.DA #880
|
||||
.DA #960
|
||||
.DA #1040
|
||||
.DA #1120
|
||||
.DA #1200
|
||||
.DA #1280
|
||||
.DA #1360
|
||||
.DA #1440
|
||||
.DA #1520
|
||||
.DA #1600
|
||||
.DA #1680
|
||||
.DA #1760
|
||||
.DA #1840
|
||||
BUF.BASEH .DA /0
|
||||
.DA /80
|
||||
.DA /160
|
||||
.DA /240
|
||||
.DA /320
|
||||
.DA /400
|
||||
.DA /480
|
||||
.DA /560
|
||||
.DA /640
|
||||
.DA /720
|
||||
.DA /800
|
||||
.DA /880
|
||||
.DA /960
|
||||
.DA /1040
|
||||
.DA /1120
|
||||
.DA /1200
|
||||
.DA /1280
|
||||
.DA /1360
|
||||
.DA /1440
|
||||
.DA /1520
|
||||
.DA /1600
|
||||
.DA /1680
|
||||
.DA /1760
|
||||
.DA /1840
|
||||
BUF.BASEL .DA #S.DCB.TTY+0
|
||||
.DA #S.DCB.TTY+80
|
||||
.DA #S.DCB.TTY+160
|
||||
.DA #S.DCB.TTY+240
|
||||
.DA #S.DCB.TTY+320
|
||||
.DA #S.DCB.TTY+400
|
||||
.DA #S.DCB.TTY+480
|
||||
.DA #S.DCB.TTY+560
|
||||
.DA #S.DCB.TTY+640
|
||||
.DA #S.DCB.TTY+720
|
||||
.DA #S.DCB.TTY+800
|
||||
.DA #S.DCB.TTY+880
|
||||
.DA #S.DCB.TTY+960
|
||||
.DA #S.DCB.TTY+1040
|
||||
.DA #S.DCB.TTY+1120
|
||||
.DA #S.DCB.TTY+1200
|
||||
.DA #S.DCB.TTY+1280
|
||||
.DA #S.DCB.TTY+1360
|
||||
.DA #S.DCB.TTY+1440
|
||||
.DA #S.DCB.TTY+1520
|
||||
.DA #S.DCB.TTY+1600
|
||||
.DA #S.DCB.TTY+1680
|
||||
.DA #S.DCB.TTY+1760
|
||||
.DA #S.DCB.TTY+1840
|
||||
BUF.BASEH .DA /S.DCB.TTY+0
|
||||
.DA /S.DCB.TTY+80
|
||||
.DA /S.DCB.TTY+160
|
||||
.DA /S.DCB.TTY+240
|
||||
.DA /S.DCB.TTY+320
|
||||
.DA /S.DCB.TTY+400
|
||||
.DA /S.DCB.TTY+480
|
||||
.DA /S.DCB.TTY+560
|
||||
.DA /S.DCB.TTY+640
|
||||
.DA /S.DCB.TTY+720
|
||||
.DA /S.DCB.TTY+800
|
||||
.DA /S.DCB.TTY+880
|
||||
.DA /S.DCB.TTY+960
|
||||
.DA /S.DCB.TTY+1040
|
||||
.DA /S.DCB.TTY+1120
|
||||
.DA /S.DCB.TTY+1200
|
||||
.DA /S.DCB.TTY+1280
|
||||
.DA /S.DCB.TTY+1360
|
||||
.DA /S.DCB.TTY+1440
|
||||
.DA /S.DCB.TTY+1520
|
||||
.DA /S.DCB.TTY+1600
|
||||
.DA /S.DCB.TTY+1680
|
||||
.DA /S.DCB.TTY+1760
|
||||
.DA /S.DCB.TTY+1840
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/SYS/KERNEL.S.TERMX
|
||||
|
|
|
@ -74,6 +74,7 @@ UNISTD.Open jsr UNISTD.CheckDev
|
|||
|
||||
.71 lda (pFD) #S.FD.T
|
||||
tax
|
||||
|
||||
jmp (.8-2,x)
|
||||
.8
|
||||
* .DA STDIO.IOERR REG
|
||||
|
@ -286,6 +287,10 @@ IO.OPEN.BDEV jsr SHARED.GetPDrv
|
|||
jsr SHARED.pDrvJmp
|
||||
bcs IO.WRITE.REG.RTS
|
||||
|
||||
*--------------------------------------
|
||||
IO.OPEN.DSOCK
|
||||
*--------------------------------------
|
||||
IO.OPEN.SSOCK
|
||||
lda IO.hFD
|
||||
*--------------------------------------
|
||||
IO.CLOSE.CDEV
|
||||
|
@ -300,7 +305,7 @@ IO.WRITE.CDEV ldx #IOCTL.WRITE
|
|||
|
||||
>PULLW K.S.IOCTL+S.IOCTL.BUFPTR
|
||||
>PULLW K.S.IOCTL+S.IOCTL.BYTECNT
|
||||
jsr SHARED.GetPDRV
|
||||
jsr SHARED.GetPDrv
|
||||
>LDYAI K.S.IOCTL
|
||||
jsr SHARED.pDrvJmp
|
||||
bcs .9
|
||||
|
@ -309,12 +314,6 @@ IO.WRITE.CDEV ldx #IOCTL.WRITE
|
|||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
IO.OPEN.DSOCK
|
||||
*--------------------------------------
|
||||
IO.OPEN.SSOCK lda IO.hFD
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
IO.CLOSE.DSOCK
|
||||
IO.CLOSE.SSOCK
|
||||
ldy #S.FD.SSOCK.CLOSE
|
||||
|
@ -442,8 +441,6 @@ IO.CLOSE.NOD ldx #2
|
|||
lda #E.INVH
|
||||
* sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
DEV.FIFO .AS "/dev/fifo" STAT,UNISTD
|
||||
*/--------------------------------------
|
||||
* # ChOwn
|
||||
* ## C
|
||||
|
|
|
@ -75,6 +75,7 @@ A2osX.D1.B .PH $D000
|
|||
.INB USR/SRC/SYS/KERNEL.S.UNISTD
|
||||
.INB USR/SRC/SYS/KERNEL.S.STDIO
|
||||
.INB USR/SRC/SYS/KERNEL.S.STDIO2
|
||||
.INB USR/SRC/SYS/KERNEL.S.DEV
|
||||
.EP
|
||||
A2osX.D1.S .EQ *-A2osX.D1.B
|
||||
|
||||
|
@ -113,7 +114,6 @@ A2osX.E0.B .PH $E000
|
|||
* go to A2osX.D1
|
||||
.INB USR/SRC/SYS/KERNEL.S.PIPE
|
||||
.INB USR/SRC/SYS/KERNEL.S.PFT
|
||||
.INB USR/SRC/SYS/KERNEL.S.DEV
|
||||
|
||||
DevMgr.Timer .BS 1
|
||||
DevMgr.Stat .DA DevMgr.FreeMem
|
||||
|
|
Loading…
Reference in New Issue
Block a user