Renamed the old geos target to geos-cbm.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5343 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
16
libsrc/geos-cbm/process/Makefile
Normal file
16
libsrc/geos-cbm/process/Makefile
Normal file
@@ -0,0 +1,16 @@
|
||||
#
|
||||
# Makefile for GEOS lib
|
||||
# for cc65
|
||||
#
|
||||
#
|
||||
|
||||
%.o: %.s
|
||||
@$(AS) -o $@ $(AFLAGS) $<
|
||||
|
||||
|
||||
S_OBJS = processinitrestartenable.o processblock.o processfreeze.o processsleep.o
|
||||
|
||||
all: $(S_OBJS)
|
||||
|
||||
clean:
|
||||
@$(RM) *.~ $(S_OBJS) core
|
||||
25
libsrc/geos-cbm/process/processblock.s
Normal file
25
libsrc/geos-cbm/process/processblock.s
Normal file
@@ -0,0 +1,25 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Alliance' Witkowiak
|
||||
;
|
||||
; 27.10.99
|
||||
|
||||
;
|
||||
; void InitProcesses (char number, struct process* proctab);
|
||||
; (rest)
|
||||
; void BlockProcess (char number);
|
||||
; void UnBlockProcess (char number);
|
||||
;
|
||||
|
||||
.export _BlockProcess
|
||||
.export _UnBlockProcess
|
||||
|
||||
.include "../inc/jumptab.inc"
|
||||
|
||||
_BlockProcess:
|
||||
tax
|
||||
jmp BlockProcess
|
||||
|
||||
_UnBlockProcess:
|
||||
tax
|
||||
jmp UnBlockProcess
|
||||
23
libsrc/geos-cbm/process/processfreeze.s
Normal file
23
libsrc/geos-cbm/process/processfreeze.s
Normal file
@@ -0,0 +1,23 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Alliance' Witkowiak
|
||||
;
|
||||
; 27.10.99
|
||||
|
||||
;
|
||||
; void FreezeProcess (char number);
|
||||
; void UnFreezeProcess (char number);
|
||||
;
|
||||
|
||||
.export _FreezeProcess
|
||||
.export _UnFreezeProcess
|
||||
|
||||
.include "../inc/jumptab.inc"
|
||||
|
||||
_FreezeProcess:
|
||||
tax
|
||||
jmp FreezeProcess
|
||||
|
||||
_UnFreezeProcess:
|
||||
tax
|
||||
jmp UnFreezeProcess
|
||||
34
libsrc/geos-cbm/process/processinitrestartenable.s
Normal file
34
libsrc/geos-cbm/process/processinitrestartenable.s
Normal file
@@ -0,0 +1,34 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Alliance' Witkowiak
|
||||
;
|
||||
; 27.10.99
|
||||
|
||||
;
|
||||
; void InitProcesses (char number, struct process* proctab);
|
||||
; void RestartProcess (char number);
|
||||
; void EnableProcess (char number);
|
||||
;
|
||||
|
||||
.import popa
|
||||
.export _InitProcesses
|
||||
.export _RestartProcess
|
||||
.export _EnableProcess
|
||||
|
||||
.include "../inc/jumptab.inc"
|
||||
.include "../inc/geossym.inc"
|
||||
|
||||
_InitProcesses:
|
||||
|
||||
sta r0L
|
||||
stx r0H
|
||||
jsr popa
|
||||
jmp InitProcesses
|
||||
|
||||
_RestartProcess:
|
||||
tax
|
||||
jmp RestartProcess
|
||||
|
||||
_EnableProcess:
|
||||
tax
|
||||
jmp EnableProcess
|
||||
37
libsrc/geos-cbm/process/processsleep.s
Normal file
37
libsrc/geos-cbm/process/processsleep.s
Normal file
@@ -0,0 +1,37 @@
|
||||
|
||||
;
|
||||
; Maciej 'YTM/Elysium' Witkowiak
|
||||
;
|
||||
; 30.10.99, 15.8.2003
|
||||
|
||||
;
|
||||
; void Sleep (int jiffies);
|
||||
;
|
||||
|
||||
.export _Sleep
|
||||
|
||||
.include "../inc/jumptab.inc"
|
||||
.include "../inc/geossym.inc"
|
||||
.importzp ptr1
|
||||
.importzp tmp1
|
||||
|
||||
_SleepExit:
|
||||
jsr Sleep ; call Sleep
|
||||
ldx tmp1
|
||||
txs ; restore stack pointer
|
||||
jmp (ptr1) ; when timeouts control will reach here
|
||||
|
||||
_Sleep:
|
||||
sta r0L ; store data
|
||||
stx r0H
|
||||
pla
|
||||
sta ptr1
|
||||
pla
|
||||
sta ptr1+1 ; preserve return address
|
||||
inc ptr1
|
||||
bne @L0
|
||||
inc ptr1+1 ; fix return address
|
||||
@L0: tsx
|
||||
stx tmp1 ; preserve stack pointer
|
||||
jsr _SleepExit ; call Sleep
|
||||
jmp MainLoop ; immediate return here - go to idle loop
|
||||
Reference in New Issue
Block a user