Mercurial > hg > Members > kono > nitros9-code
changeset 1345:1da8ab9ba433
Added consistent comments to each system call
line wrap: on
line diff
--- a/level2/modules/kernel/fallimg.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fallimg.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,5 +1,16 @@ -* F$AllImg entry point -* Entry: U=Register stack pointer +************************************************** +* System Call: F$AllImg +* +* Function: Allocate image RAM blocks +* +* Input: A = Starting block number +* B = Number of blocks +* X = Process descriptor pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FAllImg ldd R$D,u get starting block # & # of blocks ldx R$X,u get process descriptor pointer * Entry point from F$SRqMem
--- a/level2/modules/kernel/fallprc.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fallprc.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,5 +1,14 @@ -* F$AllPrc entry point -* Entry: U=Register stack pointer +************************************************** +* System Call: F$AllPrc +* +* Function: Allocate process descriptor +* +* Input: None +* +* Output: U = Process descriptor pointer +* +* Error: CC = C bit set; B = error code +* FAllPrc pshs u preserve register stack pointer bsr AllPrc try & allocate descriptor bcs L02E8 can't do, return @@ -68,15 +77,41 @@ clrb clear carry L032F rts return -* F$DelPrc entry point + +************************************************** +* System Call: F$DelPrc +* +* Function: Deallocate Process Descriptor +* +* Input: A = Process ID +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FDelPrc lda R$A,u get process # bra L0386 delete it -* F$Wait entry point -* Checks all children to see if any died (done through linked child process -* list through P$CID for 1st one & P$SID for rest) -* Will stick process into Wait Queue until either Waiting process receives -* signal or until child dies. Child dying does NOT send signal to parent + +************************************************** +* System Call: F$Wait +* +* Function: Wait for child process to die +* +* Notes: +* Checks all children to see if any died (done through linked +* child process list through P$CID for 1st one & P$SID for rest) +* Will stick process into Wait Queue until either Waiting process +* receives signal or until child dies. Child dying does NOT send +* signal to parent. +* +* Input: None +* +* Output: A = Deceased child process' process ID +* B = Child process' exit status code +* +* Error: CC = C bit set; B = error code +* FWait ldx <D.Proc get current process lda P$CID,x any children? beq L0368 no, exit with error
--- a/level2/modules/kernel/fallram.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fallram.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,6 +1,14 @@ -* F$AllRam entry point -* Entry: B=# blocks to allocate -* Exit: D=block # of start of contigously allocated blocks +************************************************** +* System Call: F$AllRAM +* +* Function: Allocate RAM blocks +* +* Input: B = Desired block count +* +* Output: D = Beginning RAM block number +* +* Error: CC = C bit set; B = error code +* FAllRam ldb R$B,u Get # blocks requested pshs b,x,y Save regs ldx <D.BlkMap Get ptr to start of block map @@ -31,9 +39,18 @@ stb ,s puls b,x,y,pc -* F$AlHRam entry point -* Entry: B=# blocks to allocate -* Exit: D=block # of start of contigously allocated blocks + +************************************************** +* System Call: F$AlHRAM +* +* Function: Allocate RAM blocks from top of RAM +* +* Input: B = Desired block count +* +* Output: D = Beginning RAM block number +* +* Error: CC = C bit set; B = error code +* FAlHRam ldb R$B,u Get # blocks to allocate pshs b,x,y Preserve regs ldx <D.BlkMap+2 Get ptr to end of block map
--- a/level2/modules/kernel/falltsk.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/falltsk.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,14 @@ -* F$AllTsk entry point +************************************************** +* System Call: F$AllTsk +* +* Function: Allocate process task number +* +* Input: X = Process descriptor pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FAllTsk ldx R$X,u get pointer to process descriptor L0C58 ldb P$Task,x already have a task #? bne L0C64 yes, return @@ -9,7 +19,18 @@ L0C64 clrb clear errors L0C65 rts return -* F$DelTsk entry point + +************************************************** +* System Call: F$DelTsk +* +* Function: Deallocate process task number +* +* Input: X = Process descriptor pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FDelTsk ldx R$X,u L0C68 ldb P$Task,x grab the current task number beq L0C64 if system (or released), exit @@ -28,7 +49,18 @@ beq L0C65 if not, exit now: don't clear carry, it's not needed fcb $8C skip LDX, below -* F$SetTsk entry point + +************************************************** +* System Call: F$SetTsk +* +* Function: Set process task DAT registers +* +* Input: X = Process descriptor pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FSetTsk ldx R$X,u get process descriptor pointer L0C79 equ * IFNE H6309 @@ -54,11 +86,23 @@ lbsr L0E93 go bash the hardware L0C9F puls cc,d,x,u,pc -* F$ResTsk entry point + +************************************************** +* System Call: F$ResTsk +* +* Function: Reserve task number +* +* Input: None +* +* Output: B = Task number +* +* Error: CC = C bit set; B = error code +* FResTsk bsr L0CA6 stb R$B,u L0CA5 rts + * Find a free task in task map * Entry: None * Exit : B=Task # @@ -79,8 +123,18 @@ clra clear carry L0CBF puls x,pc restore & return -* F$RelTsk entry point -* no idea why B and X are saved. + +************************************************** +* System Call: F$RelTsk +* +* Function: Release task number +* +* Input: B = Task number +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FRelTsk ldb R$B,u Get task # to release L0CC3 pshs b,x Preserve it & X * ??? No idea why this stuff is done. D.SysTsk is ALWAYS 0.
--- a/level2/modules/kernel/fclrblk.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fclrblk.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$ClrBlk entry point +************************************************** +* System Call: F$ClrBlk +* +* Function: Clear RAM blocks +* +* Input: B = Number of blocks +* U = Address of first block +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FClrBlk ldb R$B,u beq L0BE9 ldd R$U,u
--- a/level2/modules/kernel/fcpymem.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fcpymem.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,10 +1,26 @@ +************************************************** +* System Call: F$CpyMem +* +* Function: Copy external memory +* +* Input: D = Starting memory block number +* X = Offset in block to begin copy +* Y = Byte count +* U = Caller's destination buffer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* IFNE H6309 - -* F$CpyMem entry point -* NOTE: It currently checks to see if the end of the buffer you are copying to -* will overflow past $FFFF, and exits if it does. Should this be changed to -* check if it overflows past the data area of a process, or at least into -* Vector page RAM & I/O ($FE00-$FFFF)? +* F$CpyMem for NitrOS-9 Level Two +* Notes: +* We currently check to see if the end of the buffer we are +* copying to will overflow past $FFFF, and exit if it does. +* Should this be changed to check if it overflows past the +* data area of a process, or at least into Vector page RAM +* and I/O ($FE00-$FFFF)??? +* FCpyMem ldd R$Y,u get byte count beq L0A01 nothing there so nothing to move, return addd R$U,u add it caller's buffer start ptr. @@ -60,9 +76,7 @@ ELSE -*------------------------------------------------* -* F$CpyMem -*------------------------------------------------* +* F$CpyMem for OS-9 Level Two FCpyMem ldd R$Y,u byte count beq L0A01 ..skip if none addd R$U,u plus dest buff
--- a/level2/modules/kernel/fcrcmod.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fcrcmod.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,11 +1,14 @@ -* F$CRCMod entry point - CHANGED 05/20/93 -* Entry : A = 0 Report current mode -* = 1 Shut CRC Checking off -* =>2 Turn CRC Checking on -* Exit : A = 0 CRC is off -* 1 CRC is on -* no error can be returned -* except if call not available +************************************************** +* System Call: F$CRCMod +* +* Function: Changes CRC module reporting +* +* Input: A = Flag (0 = report, 1 = CRC off, 2 = CRC on) +* +* Output: A = State (0 = CRC off, 1 = CRC on) +* +* Error: CC = C bit set; B = error code +* FCRCMod lda R$A,u do they want a report or a toggle? beq CRCRep a report only deca Check for OFF
--- a/level2/modules/kernel/fdatlog.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fdatlog.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$DATLog entry point +************************************************** +* System Call: F$DATLog +* +* Function: Convert DAT block/offset to logical address +* +* Input: B = DAT image offset +* X = Block offset +* +* Output: X = Logical address +* +* Error: CC = C bit set; B = error code +* FDATLog ldb R$B,u Get logical Block # ldx R$X,u Get offset into block bsr CmpLBlk Go modify X to be Logical address
--- a/level2/modules/kernel/fdelimg.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fdelimg.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,16 @@ -* F$DelImg entry point +************************************************** +* System Call: F$DelImg +* +* Function: Deallocate image RAM blocks +* +* Input: A = Beginning block number +* B = Block count +* X = Process descriptor pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FDelImg ldx R$X,u get process pointer ldd R$D,u get start block & block count leau <P$DATImg,x point to DAT image
--- a/level2/modules/kernel/fdelram.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fdelram.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,6 +1,15 @@ -* F$DelRAM entry point --- moved over from OS9p2 -* Entry: B = # of blocks to de-allocate -* X = starting block # +************************************************** +* System Call: F$DelRam +* +* Function: Deallocate RAM blocks +* +* Input: B = Number of blocks +* X = Beginning block number +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FDelRAM ldb R$B,u # of blocks to de-allocate beq DelRAM.2 if none, exit ldd <D.BlkMap+2 get end of the block map
--- a/level2/modules/kernel/ffind64.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/ffind64.asm Wed Sep 17 17:26:37 2003 +0000 @@ -10,7 +10,6 @@ * * Error: CC = C bit set; B = error code * -* FFind64 ldx R$X,u Get block tbl ptr lda R$A,u get path block # * Find a empty path block
--- a/level2/modules/kernel/ffmodul.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/ffmodul.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,19 @@ -* F$FModul entry point +************************************************** +* System Call: F$FModul +* +* Function: Find module directory entry +* +* Input: A = Module type +* X = Module name string pointer +* Y = Name string DAT image pointer +* +* Output: A = Module type +* B = Module revision +* X = Updated past name string +* U = Module directory entry pointer +* +* Error: CC = C bit set; B = error code +* FFModul pshs u preserve register stack pointer lda R$A,u get module type ldx R$X,u get pointer to name
--- a/level2/modules/kernel/ffreehb.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/ffreehb.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,17 @@ -* F$FreeHB entry point (Called from F$MapBlk - called from SS.MpGPB) +************************************************** +* System Call: F$FreeHB +* +* Function: Get free high block +* +* Called from F$MapBlk and from SS.MpGPB) +* +* Input: B = Block count +* Y = DAT image pointer +* +* Output: A = High block number +* +* Error: CC = C bit set; B = error code +* FFreeHB ldb R$B,u Get # blocks requested ldy R$Y,u Get DAT Img ptr bsr L0A31 Go find free blocks in high part of DAT @@ -41,8 +54,9 @@ L0A82 leas 2,s Eat temporary stack puls d,x,pc Restore reg, error code & return -* F$FreeLB entry point (WHERE DOES THIS EVER GET CALLED FROM???) -* Rodney says: "it's called via os9p1 syscall vector in line 393" + +* WHERE DOES THIS EVER GET CALLED FROM??? +* Rodney says: "It's called via os9p1 syscall vector in line 393" FSFreeLB ldb R$B,u Get block count ldy R$Y,u Get ptr to DAT Image bsr L0A4B Go find block #'s @@ -57,7 +71,19 @@ negb Negate so it is a positive # again bra L0A56 Go into main find loop -* F$FreeLB entry point + +************************************************** +* System Call: F$FreeLB +* +* Function: Get free low block +* +* Input: B = Block count +* Y = DAT image pointer +* +* Output: A = Low block number +* +* Error: CC = C bit set; B = error code +* FFreeLB ldd R$D,u ldx R$X,u ldu R$U,u
--- a/level2/modules/kernel/fgblkmp.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fgblkmp.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,16 @@ -* F$GBlkMp entry point +************************************************** +* System Call: F$GBlkMp +* +* Function: +* +* Input: X = 1024 byte buffer pointer +* +* Output: D = Number of bytes per block +* Y = Size of system's memory block map +* +* +* Error: CC = C bit set; B = error code +* FGBlkMp ldd #DAT.BlSz # bytes per MMU block (8k) std R$D,u Put into caller's D register ldd <D.BlkMap+2 Get end of system block map ptr
--- a/level2/modules/kernel/fgcmdir.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fgcmdir.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,7 +1,19 @@ -* F$GCMDir entry point +************************************************** +* System Call: F$GCMDir +* +* Notes: +* This system call is only used by OS9p1 to get rid of all +* the empty spaces in the module directory to keep it small +* and compact. * -* This system call is only used by OS9p1 to get rid of all the empty spaces -* in the module directory to keep it small & compact. +* Input: X = Address of allocation bitmap +* D = Number of first bit to set +* Y = Bit count (number of bits to set) +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FGCMDir ldx <D.ModDir get pointer to module directory start bra L0C1D skip ahead L0C17 ldu MD$MPDAT,x DAT initialized?
--- a/level2/modules/kernel/fgmoddr.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fgmoddr.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,14 @@ -* F$GModDr entry point +************************************************** +* System Call: F$GModDr +* +* Function: Get copy of module directory +* +* Input: X = 2048 byte buffer pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FGModDr ldd <D.ModDir+2 Get end ptr of module directory subd <D.ModDir Calculate maximum size of module directory tfr d,y Put max. size in Y
--- a/level2/modules/kernel/fgprdsc.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fgprdsc.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$GPrDsc entry point +************************************************** +* System Call: F$GPrDsc +* +* Function: Get copy of process descriptor +* +* Input: A = Desired process ID +* X = 512 byte buffer pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FGPrDsc ldx <D.Proc Get current process dsc. ptr. ldb P$Task,x Get task number lda R$A,u Get requested process ID #
--- a/level2/modules/kernel/fgprocp.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fgprocp.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,14 @@ -* F$GProcP entry point +************************************************** +* System Call: F$GProcP +* +* Function: Get process pointer +* +* Input: A = Process ID +* +* Output: Y = Pointer to process descriptor +* +* Error: CC = C bit set; B = error code +* FGProcP lda R$A,u get process # bsr L0B2E Get ptr to process descriptor bcs L0B2D If error, exit with it
--- a/level2/modules/kernel/fld.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fld.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$LDAXY entry point +************************************************** +* System Call: F$LDAXY +* +* Function: Load A [X,[Y]] +* +* Input: X = Block offset +* Y = DAT image pointer +* +* Output: A = data byte at X offset of Y +* +* Error: CC = C bit set; B = error code +* FLDAXY ldx R$X,u Get offset within block (S/B $0000-$1FFF) ldy R$Y,u Get ptr to DAT block entry bsr L0AC8 Go get byte @@ -42,7 +53,20 @@ bhs L0AEA Yes, go adjust rts No, return -* F$LDDDXY entry point + +************************************************** +* System Call: F$LDDXY +* +* Function: Load D [D+X,[Y]] +* +* Input: D = Offset to offset +* X = Offset +* Y = DAT image pointer +* +* Output: D = bytes address by [D+X,Y] +* +* Error: CC = C bit set; B = error code +* FLDDDXY ldd R$D,u Get offset to offset within DAT Image leau R$X,u Point U to Offset pulu x,y Y=Offset within DAT Image, X=DAT Image ptr
--- a/level2/modules/kernel/fldabx.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fldabx.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$LDABX entry point +************************************************** +* System Call: F$LDABX +* +* Function: Load A from 0,X in task B +* +* Input: B = Task number +* X = Data pointer +* +* Output: A = Data byte at 0,x in task's address space +* +* Error: CC = C bit set; B = error code +* FLDABX ldb R$B,u Get task # to get byte from ldx R$X,u Get offset into task's DAT image to get byte from *** bsr L0C40 Go get the byte into B @@ -27,7 +38,20 @@ * ldu b,u get pointer to task image (doesn't affect carry) * rts restore & return -* F$STABX entry point + +************************************************** +* System Call: F$STABX +* +* Function: Store A at 0,X in task B +* +* Input: A = Data byte to store in task's address space +* B = Task number +* X = Logical address in task's address space +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FSTABX ldd R$D,u ldx R$X,u * Store a byte in another task
--- a/level2/modules/kernel/flink.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/flink.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,10 +1,36 @@ -* F$SLink entry point -* Entry: U=Register stack pointer +************************************************** +* System Call: F$SLink +* +* Function: System Link +* +* Input: A = Module type +* X = Module name string pointer +* Y = Name string DAT image pointer +* +* Output: A = Module type +* B = Module revision +* X = Updated name string pointer +* Y = Module entry point +* U = Module pointer +* +* Error: CC = C bit set; B = error code +* FSLink ldy R$Y,u get DAT image pointer of name bra L0398 skip ahead -* F$ELink entry point -* Entry: U=Register stack pointer + +************************************************** +* System Call: F$ELink +* +* Function: Link using module directory entry +* +* Input: B = Module type +* X = Pointer to module directory entry +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FELink pshs u preserve register stack pointer ldb R$B,u get module type ldx R$X,u get pointer to module directory entry
--- a/level2/modules/kernel/fmapblk.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fmapblk.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$MapBlk entry point +************************************************** +* System Call: F$MapBlk +* +* Function: Map specific block +* +* Input: B = Number of blocks +* X = Beginning block number +* +* Output: U = Address of first block +* +* Error: CC = C bit set; B = error code +* FMapBlk lda R$B,u get # blocks beq L0BAA can't map 0 blocks, return error cmpa #DAT.BlCt within range of DAT image?
--- a/level2/modules/kernel/fmove.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fmove.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,15 +1,23 @@ -* F$Move entry point -* Entry: U=Register stack pointer +************************************************** +* System Call: F$Move +* +* Function: Move data (low bound first) +* +* Input: A = Source task # +* B = Destination task # +* X = Source pointer +* Y = Number of bytes to move +* U = Destination pointer +* +* Output: None +* +* Error: CC = C bit set; B = error code +* IFEQ H6309 L0A01 clrb rts ENDC -* A = source task # -* B = destination task # -* Y = bytes to move -* X = source pointer -* U = destination pointer FMove ldd R$D,u get source & destination task #'s L0B25 ldy R$Y,u Get # bytes to move beq L0A01 None, exit without error
--- a/level2/modules/kernel/fprsnam.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fprsnam.asm Wed Sep 17 17:26:37 2003 +0000 @@ -3,6 +3,8 @@ * * Function: Parse a path name * +* Modification to allow '-' in filenames by WG +* * Input: X = Address of pathlist * * Output: X = Updated past optional "/" character @@ -11,8 +13,6 @@ * * Error: CC = C bit set; B = error code * -* Modification to allow '-' in filenames by WG -* FPrsNam ldx <D.Proc proc desc leay <P$DATImg,x Y=DAT image ptr ldx R$X,u X=name string
--- a/level2/modules/kernel/fsrqmem.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fsrqmem.asm Wed Sep 17 17:26:37 2003 +0000 @@ -3,15 +3,15 @@ * * Function: Request memory * +* It also updates 8K DAT blocks-if it finds an empty block, it re-does the 32 +* entries in the SMAP table to indicate that they are free +* * Input: D = Byte count * * Output: U = Address of allocated memory area * * Error: CC = C bit set; B = error code * -* It also updates 8K DAT blocks-if it finds an empty block, it re-does the 32 -* entries in the SMAP table to indicate that they are free -* FSRqMem ldd R$D,u get size requested addd #$00FF round it up to nearest 256 byte page clrb Just keep # of pages (and start 8K block #) @@ -194,8 +194,20 @@ L08F2 clrb clear errors L08F3 rts return -* Optimize F$Boot for size, as it's only called once... -* F$Boot entry point + +************************************************** +* System Call: F$Boot +* +* Function: Bootstrap the system +* +* Optimized for size, as it's only called once... +* +* Input: None +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FBoot lda #'t tried to boot jsr <D.BtBug coma Set boot flag @@ -243,6 +255,19 @@ ldx <D.BlkMap point to the memory block map lbra L01DF and go mark the blocks as used. + +************************************************** +* System Call: F$VBlock +* +* Function: ??? +* +* Input: D = Size of block to verify +* X = Start address to verify +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FVBlock ldd R$D,u size of block to verify ldx R$X,u start address to verify
--- a/level2/modules/kernel/fsuser.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/fsuser.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,14 @@ -* F$User entry point +************************************************** +* System Call: F$SUser +* +* Function: Set User ID number +* +* Input: Y = Desired user ID number +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FSUser ldx <D.Proc get current process dsc ptr ldd R$Y,u get requested user number std P$User,x save new user # in process descriptor
--- a/level2/modules/kernel/funload.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/funload.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,4 +1,15 @@ -* F$UnLoad entry point +************************************************** +* System Call: F$UnLoad +* +* Function: Unlink a module by name +* +* Input: A = Module type +* X = Pointer to module name +* +* Output: None +* +* Error: CC = C bit set; B = error code +* FUnLoad pshs u preserve register stack pointer lda R$A,u get module type ldx <D.Proc get current process pointer
--- a/level2/modules/kernel/krnp2.asm Wed Sep 17 13:53:39 2003 +0000 +++ b/level2/modules/kernel/krnp2.asm Wed Sep 17 17:26:37 2003 +0000 @@ -1,5 +1,5 @@ ******************************************************************** -* OS9p2 - NitrOS-9 Kernel Part II +* OS9p2 - OS-9 Level Two Kernel Part 2 * * $Id$ * @@ -58,7 +58,7 @@ * 18r6 Back-ported to OS-9 Level Two from NitrOS-9 Level Two nam OS9p2 - ttl NitrOS-9 Kernel Part II + ttl OS-9 Level Two Kernel Part 2 ** If Network I/O ptrs are disabled, F$Fork runs 72 cycles faster Network equ 0 Set to 1 to enable network I/O ptrs