mirror of
https://github.com/A2osX/A2osX.git
synced 2025-01-14 00:31:41 +00:00
Kernel version 0.8 : DevMgr, moving to SmartPort, cont.
This commit is contained in:
parent
36d95641a8
commit
75750babe2
@ -128,6 +128,7 @@ A2osX.RANDOM16 .EQ $BEEE
|
|||||||
* $BEF0->$BEFF : Kernel Config Block
|
* $BEF0->$BEFF : Kernel Config Block
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
A2osX.HZ .EQ $BEF0
|
A2osX.HZ .EQ $BEF0
|
||||||
|
A2osX.RAMDRVDIS .EQ $BEF8 If $80, prevent CHrooting to /RAMx
|
||||||
A2osX.SLOTS .EQ $BEF8 $BEF9->$BEFF, 7 slots
|
A2osX.SLOTS .EQ $BEF8 $BEF9->$BEFF, 7 slots
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
H.BIN.HEADER .EQ 0
|
H.BIN.HEADER .EQ 0
|
||||||
@ -245,8 +246,9 @@ SYS.GetDevByNameYA .EQ $82
|
|||||||
SYS.GetDevInfoA .EQ $84
|
SYS.GetDevInfoA .EQ $84
|
||||||
* .EQ $86
|
* .EQ $86
|
||||||
|
|
||||||
* .EQ $88
|
*--------------------------------------
|
||||||
* .EQ $8A
|
SYS.MKNOD .EQ $88
|
||||||
|
SYS.MKFIFO .EQ $8A
|
||||||
* .EQ $8C
|
* .EQ $8C
|
||||||
* .EQ $8E
|
* .EQ $8E
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -263,11 +265,6 @@ SYS.FreeStockObject .EQ $9E
|
|||||||
SYS.SetLoMem .EQ $A0
|
SYS.SetLoMem .EQ $A0
|
||||||
SYS.GetMemStatYA .EQ $A2
|
SYS.GetMemStatYA .EQ $A2
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* TO DO :
|
|
||||||
*--------------------------------------
|
|
||||||
SYS.MKNOD .EQ $FF
|
|
||||||
SYS.MKFIFO .EQ $FF
|
|
||||||
*--------------------------------------
|
|
||||||
* ProDOS ERROR CODES : $00->$5F
|
* ProDOS ERROR CODES : $00->$5F
|
||||||
* Lib ERROR CODES : $80->$BF
|
* Lib ERROR CODES : $80->$BF
|
||||||
* Kernel ERROR CODES : $C0->$FF
|
* Kernel ERROR CODES : $C0->$FF
|
||||||
@ -308,7 +305,7 @@ S.MEM.LEN .EQ 6
|
|||||||
*
|
*
|
||||||
S.MEM .EQ 8
|
S.MEM .EQ 8
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* DEV STRUCT
|
* DEVMGR (old API)
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
S.DEV.CODE .EQ 0 cld,jmp...
|
S.DEV.CODE .EQ 0 cld,jmp...
|
||||||
S.DEV.JMP .EQ 2 ...(code,x)
|
S.DEV.JMP .EQ 2 ...(code,x)
|
||||||
@ -365,6 +362,55 @@ DEVMGR.GFX.GETPIXEL .EQ 16
|
|||||||
DEVMGR.GFX.HLINE .EQ 18
|
DEVMGR.GFX.HLINE .EQ 18
|
||||||
DEVMGR.GFX.VLINE .EQ 20
|
DEVMGR.GFX.VLINE .EQ 20
|
||||||
DEVMGR.GFX.BITBLT .EQ 22
|
DEVMGR.GFX.BITBLT .EQ 22
|
||||||
|
*--------------------------------------
|
||||||
|
* DEVMGR (new API) = Smartport DIB
|
||||||
|
*--------------------------------------
|
||||||
|
* JMP :
|
||||||
|
* DEVID :
|
||||||
|
* 00->0F : NUL,SYS & loadable drivers
|
||||||
|
* X0 : X=Slot : Controller
|
||||||
|
* XY : X=Slot, Y=Device (<$80)
|
||||||
|
* > $80 : IDs for PIPE,SOCK....
|
||||||
|
*--------------------------------------
|
||||||
|
S..DEV.JMP .EQ 0
|
||||||
|
S..DEV.DEVID .EQ 2
|
||||||
|
S..DEV.FLAGS .EQ 3
|
||||||
|
S..DEV.FLAGS.IRQ .EQ %10000000
|
||||||
|
S..DEV.FLAGS.TYPE .EQ %00110000
|
||||||
|
S..DEV.FLAGS.TYPE.DRV .EQ %00000000
|
||||||
|
S..DEV.FLAGS.TYPE.BLK .EQ %00010000
|
||||||
|
S..DEV.FLAGS.TYPE.SP .EQ %00100000
|
||||||
|
S..DEV.FLAGS.NAMELEN .EQ %00001111
|
||||||
|
S..DEV.NAME .EQ 4
|
||||||
|
S..DEV .EQ 8
|
||||||
|
*--------------------------------------
|
||||||
|
DEVMGR..STATUS .EQ 0
|
||||||
|
DEVMGR..READBLOCK .EQ 1
|
||||||
|
DEVMGR..READBLOCK .EQ 2
|
||||||
|
DEVMGR..FORMAT .EQ 3
|
||||||
|
DEVMGR..CONTROL .EQ 4
|
||||||
|
DEVMGR..INIT .EQ 5
|
||||||
|
DEVMGR..OPEN .EQ 6
|
||||||
|
DEVMGR..CLOSE .EQ 7
|
||||||
|
DEVMGR..READ .EQ 8
|
||||||
|
DEVMGR..WRITE .EQ 9
|
||||||
|
*--------------------------------------
|
||||||
|
S.DEVSTAT.STATUS .EQ 0
|
||||||
|
S.DEVSTAT.STATUS.BLOCK .EQ %10000000
|
||||||
|
S.DEVSTAT.STATUS.WRITE .EQ %01000000
|
||||||
|
S.DEVSTAT.STATUS.READ .EQ %00100000
|
||||||
|
S.DEVSTAT.STATUS.ONLINE .EQ %00010000
|
||||||
|
S.DEVSTAT.STATUS.NOFMT .EQ %00001000
|
||||||
|
S.DEVSTAT.STATUS.WENABL .EQ %00000100
|
||||||
|
S.DEVSTAT.STATUS.IRQ .EQ %00000010
|
||||||
|
S.DEVSTAT.STATUS.OPENED .EQ %00000001
|
||||||
|
S.DEVSTAT.SIZE .EQ 1
|
||||||
|
S.DEVSTAT.IDSTRING .EQ 4 1 (LEN) + 16 MAX
|
||||||
|
S.DEVSTAT.TYPE .EQ 21
|
||||||
|
S.DEVSTAT.SUBTYPE .EQ 22
|
||||||
|
S.DEVSTAT.VERSION .EQ 23
|
||||||
|
*--------------------------------------
|
||||||
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* PS STRUCT
|
* PS STRUCT
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -99,6 +99,29 @@ K.GetDevInfoA jsr K.GetDevByIDA
|
|||||||
>STYA ZPQuickPtr1
|
>STYA ZPQuickPtr1
|
||||||
ldx #DEVMGR.GETINFO
|
ldx #DEVMGR.GETINFO
|
||||||
jmp (ZPQuickPtr1)
|
jmp (ZPQuickPtr1)
|
||||||
|
*/--------------------------------------
|
||||||
|
* #MkNodYA
|
||||||
|
* return a S.FILE from a given device
|
||||||
|
* ##IN:
|
||||||
|
* Y,A=DevName
|
||||||
|
* ##OUT:
|
||||||
|
* CC = OK, CS = ERROR
|
||||||
|
* A = hFILE
|
||||||
|
*\--------------------------------------
|
||||||
|
K.MkNodYA
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
*/--------------------------------------
|
||||||
|
* #MkFIFO
|
||||||
|
* return a S.FILE
|
||||||
|
* ##IN:
|
||||||
|
* ##OUT:
|
||||||
|
* CC = OK, CS = ERROR
|
||||||
|
* A = hFILE
|
||||||
|
*\--------------------------------------
|
||||||
|
K.MkFIFO
|
||||||
|
clc
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE SYS/KERNEL.S.DEV
|
SAVE SYS/KERNEL.S.DEV
|
||||||
|
Loading…
x
Reference in New Issue
Block a user