6502/vbcc/targets/6809-os9/include/os9.d
2022-05-12 21:36:39 +09:30

110 lines
2.8 KiB
Makefile

.ifndef OS9_D
.set OS9_D,1
.set true,1
.set false,0
.macro os9 code
swi2
.byte \code
.endm
.macro __os9funcs org
.set __os9offs,\org
.endm
.macro __os9skip cnt
.set __os9offs,__os9offs+\cnt
.endm
.macro __os9d nam
.set \nam,__os9offs
.set __os9offs,__os9offs+1
.endm
; System Service Request Code Definitions
__os9funcs 0
__os9d F$Link ;Link to Module
__os9d F$Load ;Load Module from File
__os9d F$UnLink ;Unlink Module
__os9d F$Fork ;Start New Process
__os9d F$Wait ;Wait for Child Process to Die
__os9d F$Chain ;Chain Process to New Module
__os9d F$Exit ;Terminate Process
__os9d F$Mem ;Set Memory Size
__os9d F$Send ;Send Signal to Process
__os9d F$Icpt ;Set Signal Intercept
__os9d F$Sleep ;Suspend Process
__os9d F$SSpd ;Suspend Process
__os9d F$ID ;Return Process ID
__os9d F$SPrior ;Set Process Priority
__os9d F$SSWI ;Set Software Interrupt
__os9d F$PErr ;Print Error
__os9d F$PrsNam ;Parse Pathlist Name
__os9d F$CmpNam ;Compare Two Names
__os9d F$SchBit ;Search Bit Map
__os9d F$AllBit ;Allocate in Bit Map
__os9d F$DelBit ;Deallocate in Bit Map
__os9d F$Time ;Get Current Time
__os9d F$STime ;Set Current Time
__os9d F$CRC ;Generate CRC ($17)
__os9skip 11
__os9d F$Debug ;Drop the system into the debugger
; NitrOS-9 common system calls
__os9funcs 39
__os9d F$VIRQ ;Install/Delete Virtual IRQ
__os9d F$SRqMem ;System Memory Request
__os9d F$SRtMem ;System Memory Return
__os9d F$IRQ ;Enter IRQ Polling Table
__os9d F$IOQu ;Enter I/O Queue
__os9d F$AProc ;Enter Active Process Queue
__os9d F$NProc ;Start Next Process
__os9d F$VModul ;Validate Module
__os9d F$Find64 ;Find Process/Path Descriptor
__os9d F$All64 ;Allocate Process/Path Descriptor
__os9d F$Ret64 ;Return Process/Path Descriptor
__os9d F$SSvc ;Service Request Table Initialization
__os9d F$IODel ;Delete I/O Module
; I/O Service Request Code Definitions
__os9funcs 128
__os9d I$Attach ;Attach I/O Device
__os9d I$Detach ;Detach I/O Device
__os9d I$Dup ;Duplicate Path
__os9d I$Create ;Create New File
__os9d I$Open ;Open Existing File
__os9d I$MakDir ;Make Directory File
__os9d I$ChgDir ;Change Default Directory
__os9d I$Delete ;Delete File
__os9d I$Seek ;Change Current Position
__os9d I$Read ;Read Data
__os9d I$Write ;Write Data
__os9d I$ReadLn ;Read Line of ASCII Data
__os9d I$WritLn ;Write Line of ASCII Data
__os9d I$GetStt ;Get Path Status
__os9d I$SetStt ;Set Path Status
__os9d I$Close ;Close Path
__os9d I$DeletX ;Delete from current exec dir
; file modes and permissions
.set S_IFDIR,0x80
.set S_ISHARE,0x40
.set S_IOEXEC,0x20
.set S_IOWRITE,0x10
.set S_IOREAD,0x08
.set S_IEXEC,0x04
.set S_IWRITE,0x02
.set S_IREAD,0x01
; GetStt system calls
.set SS_OPT,0
.set SS_READY,1
.set SS_SIZE,2
.set SS_POS,5
.set SS_EOF,6
.endif ; OS9_D