view level2/modules/kernel/fsswi.asm @ 3295:6b7a7b233925 default tip

makefile: Allow PORTS with level1/2 mix https://sourceforge.net/p/nitros9/feature-requests/10/
author Tormod Volden <debian.tormod@gmail.com>
date Tue, 19 Apr 2022 18:12:17 +0200
parents ca83286ded5b
children
line wrap: on
line source

**************************************************
* System Call: F$SSWI
*
* Function: Sets the SWI vector specified for the calling process.
*
* Input:  B = SWI vector (1-3) to modify
*         U = Address of new SWI vector for process
*
* Output: None
*
* Error:  CC = C bit set; B = error code
*
FSSWI    ldx   <D.Proc      get current process
         ldb   R$A,u        get type code
         decb               adjust for offset
         cmpb  #3           legal value?
         bcc   BadSWI       no, return error
         lslb               account for 2 bytes entry
         addb  #P$SWI       go to start of P$SWI pointers
         ldu   R$X,u        get address
         stu   b,x          save to descriptor
         rts                return

BadSWI   comb
         ldb   #E$ISWI
         rts