mirror of
https://github.com/A2osX/A2osX.git
synced 2024-07-12 21:31:00 +00:00
Kernel 0.93+
This commit is contained in:
parent
d2f384b08e
commit
61f93343af
Binary file not shown.
Binary file not shown.
@ -296,15 +296,9 @@ StrMode .BS 1
|
||||
|
||||
bPause .BS 1
|
||||
|
||||
hFullPath .BS 1
|
||||
hSrcFullPath .BS 1
|
||||
STAT .BS S.STAT
|
||||
Index .BS 1
|
||||
hDIRs .BS X.MAX.RECURSE
|
||||
hDIRENTs .BS X.MAX.RECURSE
|
||||
oDIRENTs .BS X.MAX.RECURSE*2
|
||||
hSrcBasePath .BS 1
|
||||
hFilter .BS 1
|
||||
|
||||
.INB USR/SRC/BIN/X.FILEENUM.G
|
||||
|
||||
DS.END
|
||||
.ED
|
||||
|
228
BIN/FORMAT.S.txt
228
BIN/FORMAT.S.txt
@ -19,6 +19,17 @@ ZPPtr1 .BS 2
|
||||
ZPPtr2 .BS 2
|
||||
ZPPtrFD .BS 2
|
||||
ZPPtrDevName .BS 2
|
||||
|
||||
ArgIndex .BS 1
|
||||
|
||||
hDevID .BS 1
|
||||
bLL .BS 1
|
||||
bCustomBlkSize .BS 1
|
||||
MediaBlkSize .BS 2
|
||||
CatSize .BS 1
|
||||
CatBlkCnt .BS 1
|
||||
CatOptions .BS 1
|
||||
|
||||
ZS.END
|
||||
.ED
|
||||
*--------------------------------------
|
||||
@ -51,77 +62,93 @@ L.MSG.INIT .DA MSG.INIT
|
||||
L.FMT.BLANK .DA FMT.BLANK
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
CS.INIT ldy #S.PS.ARGC
|
||||
lda (pPs),y
|
||||
beq .90
|
||||
CS.INIT >LDYA L.LIBBLKDEV
|
||||
>SYSCALL LoadLib
|
||||
bcs .9
|
||||
sta hLIBBLKDEV
|
||||
|
||||
.1 >INC.G ArgIndex
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
CS.RUN ldy #S.PS.ARGC
|
||||
lda (pPs),y
|
||||
beq .99
|
||||
|
||||
.1 inc ArgIndex
|
||||
lda ArgIndex
|
||||
>SYSCALL ArgV
|
||||
bcc .11
|
||||
|
||||
jmp .8
|
||||
|
||||
.11 >STYA ZPPtr1
|
||||
lda (ZPPtr1)
|
||||
cmp #'-'
|
||||
bne .4
|
||||
|
||||
ldy #1
|
||||
lda (ZPPtr1),y
|
||||
beq .90
|
||||
beq .99
|
||||
|
||||
cmp #'0'
|
||||
bcc .20
|
||||
bcc .2
|
||||
cmp #'9'+1
|
||||
bcs .20
|
||||
bcs .2
|
||||
and #$0F
|
||||
>STA.G CatSize
|
||||
bra .1
|
||||
.20 ldx OptionList
|
||||
.2 cmp OptionList,x
|
||||
beq .3
|
||||
dex
|
||||
bne .2
|
||||
.90 bra .99
|
||||
.3 ldy OptionVars-1,x
|
||||
lda #$80
|
||||
sta (pData),y
|
||||
bra .1
|
||||
.4 >LDA.G hDevID
|
||||
bne .5 Already have a dev...go get VolName
|
||||
sta CatSize
|
||||
.10 bra .1
|
||||
|
||||
>LDYA ZPPtr1
|
||||
>SYSCALL GetDevByName
|
||||
.2 jsr CS.RUN.CheckOpt
|
||||
bcs .99
|
||||
>STYA ZPPtrFD
|
||||
txa
|
||||
>STA.G hDevID
|
||||
>LDYA ZPPtr1
|
||||
>STYA ZPPtrDevName
|
||||
|
||||
cpy #bCustomBlkSize
|
||||
bne .1
|
||||
|
||||
inc ArgIndex
|
||||
lda ArgIndex
|
||||
>SYSCALL ArgV
|
||||
bcs .99
|
||||
|
||||
>SYSCALL atoi
|
||||
>STYA MediaBlkSize
|
||||
bra .1
|
||||
.5 ldy #$ff
|
||||
.6 iny
|
||||
lda (ZPPtr1),y
|
||||
beq .61
|
||||
cpy #15
|
||||
beq .99 VolName too long
|
||||
|
||||
.61 >PUSHW ZPPtr1
|
||||
>LEA.G VolName
|
||||
>SYSCALL StrCpy
|
||||
jmp .1 success, scan for any other args
|
||||
|
||||
.8 >LDYA L.LIBBLKDEV
|
||||
>SYSCALL LoadLib
|
||||
bcs .9
|
||||
sta hLIBBLKDEV
|
||||
clc
|
||||
.9 rts
|
||||
|
||||
.99 >PUSHBI 0
|
||||
>LDYA L.MSG.USAGE
|
||||
>SYSCALL printf
|
||||
lda #E.SYN
|
||||
sec
|
||||
rts
|
||||
rts
|
||||
|
||||
.4 lda hDevID
|
||||
bne .5 Already have a dev...go get VolName
|
||||
|
||||
>LDYA ZPPtr1
|
||||
>SYSCALL GetDevByName
|
||||
bcs .99
|
||||
|
||||
>STYA ZPPtrFD
|
||||
stx hDevID
|
||||
>LDYA ZPPtr1
|
||||
>STYA ZPPtrDevName
|
||||
bra .10
|
||||
|
||||
.5 ldy #$ff
|
||||
|
||||
.6 iny
|
||||
lda (ZPPtr1),y
|
||||
sta (pData),y VolName
|
||||
beq .10
|
||||
|
||||
cpy #16
|
||||
bcc .6
|
||||
bra .99 VolName too long
|
||||
|
||||
.8 lda hDevID
|
||||
beq .99
|
||||
*--------------------------------------
|
||||
CS.RUN jsr CS.RUN.InitCat
|
||||
CS.RUN.Format jsr CS.RUN.GetBlockSize
|
||||
bcs .9
|
||||
jsr CS.RUN.InitCat
|
||||
bcs .9
|
||||
jsr CS.RUN.BuildCat
|
||||
bcs .9
|
||||
@ -133,6 +160,7 @@ CS.RUN jsr CS.RUN.InitCat
|
||||
lda #0
|
||||
sec
|
||||
rts
|
||||
|
||||
.9 pha
|
||||
>PUSHA
|
||||
>PUSHBI 1
|
||||
@ -142,10 +170,39 @@ CS.RUN jsr CS.RUN.InitCat
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.InitCat >LDA.G CatSize
|
||||
CS.RUN.GetBlockSize
|
||||
lda bCustomBlkSize
|
||||
bmi .8
|
||||
|
||||
>PUSHEA.G DIB
|
||||
lda hDevID
|
||||
|
||||
>SYSCALL GetDevStatus
|
||||
bcs .9
|
||||
|
||||
>LDA.G DIB+S.DIB.SIZE
|
||||
tax
|
||||
iny
|
||||
ora (pData),y
|
||||
beq .9
|
||||
|
||||
lda (pData),y
|
||||
sta MediaBlkSize+1
|
||||
stx MediaBlkSize
|
||||
.8 clc
|
||||
rts
|
||||
|
||||
.9 >LDYA L.MSG.NOSIZE
|
||||
>SYSCALL puts
|
||||
lda #MLI.E.IO
|
||||
sec
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.InitCat lda CatSize
|
||||
bne .1
|
||||
|
||||
lda #4
|
||||
sta (pData),y
|
||||
sta CatSize
|
||||
|
||||
.1 >LDA.G VolName
|
||||
bne .8 Volume name ok
|
||||
@ -157,44 +214,26 @@ CS.RUN.InitCat >LDA.G CatSize
|
||||
>LEA.G VolName
|
||||
>SYSCALL sprintf
|
||||
rts
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.BuildCat >PUSHEA.G DIB
|
||||
>LDA.G hDevID
|
||||
|
||||
>SYSCALL GetDevStatus
|
||||
bcs .99
|
||||
>LDA.G DIB+S.DIB.SIZE
|
||||
iny
|
||||
ora (pData),y
|
||||
bne .1
|
||||
>PUSHBI 0
|
||||
>LDYA L.MSG.NOSIZE
|
||||
>SYSCALL printf
|
||||
lda #MLI.E.IO
|
||||
sec
|
||||
rts
|
||||
.1 >PUSHEA.G VolName
|
||||
>PUSHW.G DIB+S.DIB.SIZE
|
||||
CS.RUN.BuildCat >PUSHEA.G VolName
|
||||
>PUSHW MediaBlkSize
|
||||
>PUSHW ZPPtrDevName
|
||||
|
||||
>PUSHBI 6
|
||||
>LDYA L.MSG.INIT
|
||||
>SYSCALL printf
|
||||
.99 bcs .9
|
||||
bcs .9
|
||||
|
||||
jsr .7
|
||||
|
||||
>LIBCALL hLIBBLKDEV,LIBBLKDEV.GetProDOSCatSize
|
||||
bcs .9
|
||||
|
||||
phy
|
||||
pha
|
||||
txa
|
||||
>STA.G BlkCnt
|
||||
pla
|
||||
ply
|
||||
stx CatBlkCnt
|
||||
|
||||
>SYSCALL GetMem0 BufferSize
|
||||
bcs .9
|
||||
phx
|
||||
@ -207,14 +246,14 @@ CS.RUN.BuildCat >PUSHEA.G DIB
|
||||
>LIBCALL hLIBBLKDEV,LIBBLKDEV.BuildProDOSCat
|
||||
.9 rts
|
||||
|
||||
.7 >PUSHW.G DIB+S.DIB.SIZE
|
||||
>PUSHB.G CatSize
|
||||
>PUSHB.G CatOptions
|
||||
.7 >PUSHW MediaBlkSize
|
||||
>PUSHB CatSize
|
||||
>PUSHB CatOptions
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.WriteCat >PUSHEA.G IOCTL
|
||||
>PUSHBI IOCTL.WRITEBLOCK
|
||||
>LDA.G hDevID
|
||||
lda hDevID
|
||||
|
||||
>SYSCALL IOCTL
|
||||
bcs .9
|
||||
@ -226,7 +265,7 @@ CS.RUN.WriteCat >PUSHEA.G IOCTL
|
||||
sta (pData),y
|
||||
>INC.G IOCTL+S.IOCTL.BLKNUM
|
||||
>SLEEP
|
||||
>DEC.G BlkCnt
|
||||
dec CatBlkCnt
|
||||
bne CS.RUN.WriteCat
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
@ -242,6 +281,25 @@ CS.QUIT >LDA.G hBuf
|
||||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.RUN.CheckOpt ldy #1
|
||||
lda (ZPPtr1),y
|
||||
|
||||
ldx #OptionVars-OptionList-1
|
||||
|
||||
.2 cmp OptionList,x
|
||||
beq .3
|
||||
dex
|
||||
bpl .2
|
||||
|
||||
sec
|
||||
rts
|
||||
|
||||
.3 ldy OptionVars,x
|
||||
ldx #$ff
|
||||
stx 0,y
|
||||
clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.END
|
||||
*--------------------------------------
|
||||
LIBBLKDEV .AZ "libblkdev"
|
||||
@ -249,6 +307,7 @@ hLIBBLKDEV .BS 1
|
||||
*--------------------------------------
|
||||
MSG.USAGE .AS "Usage : FORMAT <BLOCKDEV> [VOLUME.NAME]\r\n"
|
||||
.AS " -L : Low-Level Format\r\n"
|
||||
.AS " -B xxxx : override Device block size\r\n"
|
||||
.AZ " -1-9 : Catalog Size (Blocks)\r\n"
|
||||
MSG.OK .AZ "[OK]"
|
||||
MSG.ERR .AZ "[%h]\r\n"
|
||||
@ -256,19 +315,14 @@ MSG.NOSIZE .AZ "Unable to get media size."
|
||||
MSG.INIT .AZ "Formatting %s (%D Blks),Volname:%s..."
|
||||
FMT.BLANK .AZ "BLANK%H%H"
|
||||
*--------------------------------------
|
||||
OptionList >PSTR "Ll"
|
||||
OptionVars .DA #bLL,#bLL
|
||||
OptionList .AS "LlBb"
|
||||
OptionVars .DA #bLL,#bLL,#bCustomBlkSize,#bCustomBlkSize
|
||||
*--------------------------------------
|
||||
.DUMMY
|
||||
.OR 0
|
||||
DS.START
|
||||
ArgIndex .BS 1
|
||||
bLL .BS 1
|
||||
VolName .BS 16
|
||||
hDevID .BS 1
|
||||
CatSize .BS 1
|
||||
CatOptions .BS 1
|
||||
BlkCnt .BS 1
|
||||
|
||||
IOCTL .BS S.IOCTL
|
||||
hBuf .BS 1
|
||||
DIB .BS S.DIB
|
||||
|
@ -560,23 +560,18 @@ DevMgrInit >LDYAI MSG.DEV
|
||||
bpl .5
|
||||
ldy #7
|
||||
lda (ZPPtr1),y
|
||||
beq .51 $Cn07=00 : SmartPort
|
||||
ldx #AWSmartPort.SIG-AWSmartPort.OFS-1
|
||||
.50 ldy AWSmartPort.OFS,x Check if there is AWsmartport firmware
|
||||
lda (ZPPtr1),y
|
||||
cmp AWSmartPort.SIG,x
|
||||
bne .6 not on AW
|
||||
dex
|
||||
bpl .50
|
||||
bne .6 $Cn07=00 : SmartPort
|
||||
|
||||
.51 lda ZPPtr1+1 get $Cn
|
||||
lda ZPPtr1+1 get $Cn
|
||||
and #$f get $0n
|
||||
cmp FD.BDEV+S.FD.DEV.BUSID same as SSS ?
|
||||
beq .52
|
||||
|
||||
inc FD.BDEV+S.FD.DEV.DEVID Remapped SP devices....
|
||||
inc FD.BDEV+S.FD.DEV.DEVID Add 2 to DEVID (2 & 3)
|
||||
jsr DevMgrInit.SP
|
||||
bra .8 Phantom slot...
|
||||
|
||||
.52 jsr DevMgrInit.SP
|
||||
lda #A2osX.S.SP
|
||||
bra .7
|
||||
@ -1071,8 +1066,6 @@ FD.BDEV.NAME .AZ "S1D1"
|
||||
*--------------------------------------
|
||||
SmartPort.OFS .HS 010305
|
||||
SmartPort.SIG .HS 200003
|
||||
AWSmartPort.OFS .HS 12131415161718191A1B
|
||||
AWSmartPort.SIG .HS A9008DF2C0A9708DF3C0
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE USR/SRC/SYS/KERNEL.S.INIT
|
||||
|
Loading…
Reference in New Issue
Block a user