home *** CD-ROM | disk | FTP | other *** search
-
- ; Exec-Interface
-
- INCLUDE "lvo/exec.i"
-
- _SysBase EQU 4
-
-
-
-
-
- CREATE MACRO Name,Registermaske,Registeranzahl,Satz1,Anzahl1,Satz2,Anzahl2...
-
- IFD \1
- XDEF _\1
-
- _\1
- IFEQ \3-1
- move.l \2,-(SP)
- ELSE
- movem.l \2,-(SP)
- ENDC
-
- TIEFE SET 4+4*\3
- IFNC '\4',''
- SATZ \4,\5,\6,\7,\8,\9,\a,\b,\c,\d,\e,\f,\g,\h,\i,\j
- ENDC
-
- move.l _SysBase,a6
- jsr _LVO\1(a6)
- IFEQ \3-1
- move.l (SP)+,\2
- ELSE
- movem.l (SP)+,\2
- ENDC
- rts
-
- ENDC
-
- ENDM
-
-
-
-
-
- SATZ MACRO Satz1,Anzahl1,Satz2,Anzahl2...
- IFEQ \2-1
- move.l TIEFE(SP),\1
- ELSE
- movem.l TIEFE(SP),\1
- ENDC
- TIEFE SET TIEFE+4*\2
- IFNC '\3',''
- SATZ \3,\4,\5,\6,\7,\8,\9,\a,\b,\c,\d,\e,\f,\g,\h,\i
- ENDC
- ENDM
-
-
-
-
-
- ; Supervisor()
- ; CREATE Supervisor,a6,1
-
- ; ExitIntr()
- ; CREATE ExitIntr,a6,1
-
- ; Schedule()
- ; CREATE Schedule,a6,1
-
- ; Reschedule()
- ; CREATE Reschedule,a6,1
-
- ; Switch()
- ; CREATE Switch,a6,1
-
- ; Dispatch()
- ; CREATE Dispatch,a6,1
-
- ; Exception()
- ; CREATE Exception,a6,1
-
- ; InitCode(startClass,version)(D0/D1)
- CREATE InitCode,a6,1,d0-d1,2
-
- ; InitStruct(initTable,memory,size)(A1/A2,D0)
- CREATE InitStruct,a2/a6,2,a1-a2,2,d0,1
-
- ; MakeLibrary(funcInit,structInit,libInit,dataSize,codeSize)(A0/A1/A2,D0/D1)
- CREATE MakeLibrary,a2/a6,2,a0-a2,3,d0-d1,2
-
- ; MakeFunctions(target,functionArray,funcDispBase)(A0,A1,A2)
- CREATE MakeFunctions,a2/a6,2,a0-a2,3
-
- ; FindResident(name)(A1)
- CREATE FindResident,a6,1,a1,1
-
- ; InitResident(resident,segList)(A1,D1)
- CREATE InitResident,a6,1,a1,1,d1,1
-
- ; Alert(alertNum,parameters)(D7,A5)
- CREATE Alert,d7/a5/a6,3,d7/a5,2
-
- ; Debug()
- CREATE Debug,a6,1
-
- ; Disable()
- CREATE Disable,a6,1
-
- ; Enable()
- CREATE Enable,a6,1
-
- ; Forbid()
- CREATE Forbid,a6,1
-
- ; Permit()
- CREATE Permit,a6,1
-
- ; SetSR(newSR,mask)(D0/D1)
- CREATE SetSR,a6,1,d0-d1,2
-
- ; SuperState()
- CREATE SuperState,a6,1
-
- ; UserState(sysStack)(D0)
- CREATE UserState,a6,1,d0,1
-
- ; SetIntVector(intNumber,interrupt)(D0/A1)
- CREATE SetIntVector,a6,1,d0/a1,2
-
- ; AddIntServer(intNumber,interrupt)(D0/A1)
- CREATE AddIntServer,a6,1,d0/a1,2
-
- ; RemIntServer(intNumber,interrupt)(D0/A1)
- CREATE RemIntServer,a6,1,d0/a1,2
-
- ; Cause(interrupt)(A1)
- CREATE Cause,a6,1,a1,1
-
- ; Allocate(freeList,byteSize)(A0,D0)
- CREATE Allocate,a6,1,a0,1,d0,1
-
- ; Deallocate(freeList,memoryBlock,byteSize)(A0/A1,D0)
- CREATE Deallocate,a6,1,a0-a1,2,d0,1
-
- ; AllocMem(byteSize,requirements)(D0/D1)
- CREATE AllocMem,a6,1,d0-d1,2
-
- ; AllocAbs(byteSize,location)(D0/A1)
- CREATE AllocAbs,a6,1,d0/a1,2
-
- ; FreeMem(memoryBlock,byteSize)(A1,D0)
- CREATE FreeMem,a6,1,a1,1,d0,1
-
- ; AvailMem(requirements)(D1)
- CREATE AvailMem,a6,1,d1,1
-
- ; AllocEntry(entry)(A0)
- CREATE AllocEntry,a6,1,a0,1
-
- ; FreeEntry(entry)(A0)
- CREATE FreeEntry,a6,1,a0,1
-
- ; Insert(list,node,pred)(A0/A1/A2)
- CREATE Insert,a2/a6,2,a0-a2,3
-
- ; AddHead(list,node)(A0/A1)
- CREATE AddHead,a6,1,a0-a1,2
-
- ; AddTail(list,node)(A0/A1)
- CREATE AddTail,a6,1,a0-a1,2
-
- ; Remove(node)(A1)
- CREATE Remove,a6,1,a1,1
-
- ; RemHead(list)(A0)
- CREATE RemHead,a6,1,a0,1
-
- ; RemTail(list)(A0)
- CREATE RemTail,a6,1,a0,1
-
- ; Enqueue(list,node)(A0/A1)
- CREATE Enqueue,a6,1,a0-a1,2
-
- ; FindName(list,name)(A0/A1)
- CREATE FindName,a6,1,a0-a1,2
-
- ; AddTask(task,initPC,finalPC)(A1/A2/A3)
- CREATE AddTask,a2-a3/a6,3,a1-a3,3
-
- ; RemTask(task)(A1)
- CREATE RemTask,a6,1,a1,1
-
- ; FindTask(name)(A1)
- CREATE FindTask,a6,1,a1,1
-
- ; SetTaskPri(task,priority)(A1,D0)
- CREATE SetTaskPri,a6,1,a1,1,d0,1
-
- ; SetSignal(newSignals,signalSet)(D0/D1)
- CREATE SetSignal,a6,1,d0-d1,2
-
- ; SetExcept(newSignals,signalSet)(D0/D1)
- CREATE SetExcept,a6,1,d0-d1,2
-
- ; Wait(signalSet)(D0)
- CREATE Wait,a6,1,d0,1
-
- ; Signal(task,signalSet)(A1,D0)
- CREATE Signal,a6,1,a1,1,d0,1
-
- ; AllocSignal(signalNum)(D0)
- CREATE AllocSignal,a6,1,d0,1
-
- ; FreeSignal(signalNum)(D0)
- CREATE FreeSignal,a6,1,d0,1
-
- ; AllocTrap(trapNum)(D0)
- CREATE AllocTrap,a6,1,d0,1
-
- ; FreeTrap(trapNum)(D0)
- CREATE FreeTrap,a6,1,d0,1
-
- ; AddPort(port)(A1)
- CREATE AddPort,a6,1,a1,1
-
- ; RemPort(port)(A1)
- CREATE RemPort,a6,1,a1,1
-
- ; PutMsg(port,message)(A0/A1)
- CREATE PutMsg,a6,1,a0-a1,2
-
- ; GetMsg(port)(A0)
- CREATE GetMsg,a6,1,a0,1
-
- ; ReplyMsg(message)(A1)
- CREATE ReplyMsg,a6,1,a1,1
-
- ; WaitPort(port)(A0)
- CREATE WaitPort,a6,1,a0,1
-
- ; FindPort(name)(A1)
- CREATE FindPort,a6,1,a1,1
-
- ; AddLibrary(library)(A1)
- CREATE AddLibrary,a6,1,a1,1
-
- ; RemLibrary(library)(A1)
- CREATE RemLibrary,a6,1,a1,1
-
- ; OldOpenLibrary(libName)(A1)
- CREATE OldOpenLibrary,a6,1,a1,1
-
- ; CloseLibrary(library)(A1)
- CREATE CloseLibrary,a6,1,a1,1
-
- ; SetFunction(library,funcOffset,funcEntry)(A1,A0,D0)
- CREATE SetFunction,a6,1,a1,1,a0,1,d0,1
-
- ; SumLibrary(library)(A1)
- CREATE SumLibrary,a6,1,a1,1
-
- ; AddDevice(device)(A1)
- CREATE AddDevice,a6,1,a1,1
-
- ; RemDevice(device)(A1)
- CREATE RemDevice,a6,1,a1,1
-
- ; OpenDevice(devName,unit,ioRequest,flags)(A0,D0/A1,D1)
- CREATE OpenDevice,a6,1,a0,1,d0/a1,2,d1,1
-
- ; CloseDevice(ioRequest)(A1)
- CREATE CloseDevice,a6,1,a1,1
-
- ; DoIO(ioRequest)(A1)
- CREATE DoIO,a6,1,a1,1
-
- ; SendIO(ioRequest)(A1)
- CREATE SendIO,a6,1,a1,1
-
- ; CheckIO(ioRequest)(A1)
- CREATE CheckIO,a6,1,a1,1
-
- ; WaitIO(ioRequest)(A1)
- CREATE WaitIO,a6,1,a1,1
-
- ; AbortIO(ioRequest)(A1)
- CREATE AbortIO,a6,1,a1,1
-
- ; AddResource(resource)(A1)
- CREATE AddResource,a6,1,a1,1
-
- ; RemResource(resource)(A1)
- CREATE RemResource,a6,1,a1,1
-
- ; OpenResource(resName,version)(A1,D0)
- CREATE OpenResource,a6,1,a1,1,d0,1
-
- ; RawIOInit()
- CREATE RawIOInit,a6,1
-
- ; RawMayGetChar()
- CREATE RawMayGetChar,a6,1
-
- ; RawPutChar(char)(d0)
- CREATE RawPutChar,a6,1,d0,1
-
- ; RawDoFmt()(A0/A1/A2/A3)
- CREATE RawDoFmt,a2-a3/a6,3,a0-a3,4
-
- ; GetCC()
- CREATE GetCC,a6,1
-
- ; TypeOfMem(address)(A1);
- CREATE TypeOfMem,a6,1,a1,1
-
- ; Procure(semaport,bidMsg)(A0/A1)
- CREATE Procure,a6,1,a0-a1,2
-
- ; Vacate(semaport)(A0)
- CREATE Vacate,a6,1,a0,1
-
- ; OpenLibrary(libName,version)(A1,D0)
- CREATE OpenLibrary,a6,1,a1,1,d0,1
-
- ; InitSemaphore(sigSem)(A0)
- CREATE InitSemaphore,a6,1,a0,1
-
- ; ObtainSemaphore(sigSem)(A0)
- CREATE ObtainSemaphore,a6,1,a0,1
-
- ; ReleaseSemaphore(sigSem)(A0)
- CREATE ReleaseSemaphore,a6,1,a0,1
-
- ; AttemptSemaphore(sigSem)(A0)
- CREATE AttemptSemaphore,a6,1,a0,1
-
- ; ObtainSemaphoreList(sigSem)(A0)
- CREATE ObtainSemaphoreList,a6,1,a0,1
-
- ; ReleaseSemaphoreList(sigSem)(A0)
- CREATE ReleaseSemaphoreList,a6,1,a0,1
-
- ; FindSemaphore(sigSem)(A1)
- CREATE FindSemaphore,a6,1,a1,1
-
- ; AddSemaphore(sigSem)(A1)
- CREATE AddSemaphore,a6,1,a1,1
-
- ; RemSemaphore(sigSem)(A1)
- CREATE RemSemaphore,a6,1,a1,1
-
- ; SumKickData()
- CREATE SumKickData,a6,1
-
- ; AddMemList(size,attributes,pri,base,name)(D0/D1/D2/A0/A1)
- CREATE AddMemList,d2/a6,2,d0-d2,3,a0-a1,2
-
- ; CopyMem(source,dest,size)(A0/A1,D0)
- CREATE CopyMem,a6,1,a0-a1,2,d0,1
-
- ; CopyMemQuick(source,dest,size)(A0/A1,D0)
- CREATE CopyMemQuick,a6,1,a0-a1,2,d0,1
-
-
-
-
-
- ; Offsets
-
- IFD OFFSETS
-
- XDEF _LVOSupervisor
- XDEF _LVOExitIntr
- XDEF _LVOSchedule
- XDEF _LVOReschedule
- XDEF _LVOSwitch
- XDEF _LVODispatch
- XDEF _LVOException
- XDEF _LVOInitCode
- XDEF _LVOInitStruct
- XDEF _LVOMakeLibrary
- XDEF _LVOMakeFunctions
- XDEF _LVOFindResident
- XDEF _LVOInitResident
- XDEF _LVOAlert
- XDEF _LVODebug
- XDEF _LVODisable
- XDEF _LVOEnable
- XDEF _LVOForbid
- XDEF _LVOPermit
- XDEF _LVOSetSR
- XDEF _LVOSuperState
- XDEF _LVOUserState
- XDEF _LVOSetIntVector
- XDEF _LVOAddIntServer
- XDEF _LVORemIntServer
- XDEF _LVOCause
- XDEF _LVOAllocate
- XDEF _LVODeallocate
- XDEF _LVOAllocMem
- XDEF _LVOAllocAbs
- XDEF _LVOFreeMem
- XDEF _LVOAvailMem
- XDEF _LVOAllocEntry
- XDEF _LVOFreeEntry
- XDEF _LVOInsert
- XDEF _LVOAddHead
- XDEF _LVOAddTail
- XDEF _LVORemove
- XDEF _LVORemHead
- XDEF _LVORemTail
- XDEF _LVOEnqueue
- XDEF _LVOFindName
- XDEF _LVOAddTask
- XDEF _LVORemTask
- XDEF _LVOFindTask
- XDEF _LVOSetTaskPri
- XDEF _LVOSetSignal
- XDEF _LVOSetExcept
- XDEF _LVOWait
- XDEF _LVOSignal
- XDEF _LVOAllocSignal
- XDEF _LVOFreeSignal
- XDEF _LVOAllocTrap
- XDEF _LVOFreeTrap
- XDEF _LVOAddPort
- XDEF _LVORemPort
- XDEF _LVOPutMsg
- XDEF _LVOGetMsg
- XDEF _LVOReplyMsg
- XDEF _LVOWaitPort
- XDEF _LVOFindPort
- XDEF _LVOAddLibrary
- XDEF _LVORemLibrary
- XDEF _LVOOldOpenLibrary
- XDEF _LVOCloseLibrary
- XDEF _LVOSetFunction
- XDEF _LVOSumLibrary
- XDEF _LVOAddDevice
- XDEF _LVORemDevice
- XDEF _LVOOpenDevice
- XDEF _LVOCloseDevice
- XDEF _LVODoIO
- XDEF _LVOSendIO
- XDEF _LVOCheckIO
- XDEF _LVOWaitIO
- XDEF _LVOAbortIO
- XDEF _LVOAddResource
- XDEF _LVORemResource
- XDEF _LVOOpenResource
- XDEF _LVORawIOInit
- XDEF _LVORawMayGetChar
- XDEF _LVORawPutChar
- XDEF _LVORawDoFmt
- XDEF _LVOGetCC
- XDEF _LVOTypeOfMem
- XDEF _LVOProcure
- XDEF _LVOVacate
- XDEF _LVOOpenLibrary
- XDEF _LVOInitSemaphore
- XDEF _LVOObtainSemaphore
- XDEF _LVOReleaseSemaphore
- XDEF _LVOAttemptSemaphore
- XDEF _LVOObtainSemaphoreList
- XDEF _LVOReleaseSemaphoreList
- XDEF _LVOFindSemaphore
- XDEF _LVOAddSemaphore
- XDEF _LVORemSemaphore
- XDEF _LVOSumKickData
- XDEF _LVOAddMemList
- XDEF _LVOCopyMem
- XDEF _LVOCopyMemQuick
-
- ENDC
-
-
-
-
-
- END
-
-