0 Members and 2 Guests are viewing this topic.
jr Boot db 0,0,0,0,0,0 db 0, 0 ; rst 08h db 0,0,0,0,0 db 0, 0 ; rst 10h db 0,0,0,0,0 db 0,0 ; rst 18h db 0,0,0,0,0 db 0, 0 ; rst 20h db 0,0,0,0,0 db 0,0 ; rst 28h db 0,0,0,0,0 db 0,0 ; rst 30h db 0,0,0,0,0,0,0 db 0, 0 ; rst 38h / System Interrupt db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 db 0,0,0,0,0,0,0,0,0 jp Boot dw 0A55AhBoot: ; This executes at boot
; System Interrupt RoutinesSysInterrupt: exx ex af, af' in a, (04h) bit 0, a jr nz, HandleON bit 1, a jr nz, HandleTimer1 bit 2, a jr nz, HandleTimer2 bit 4, a jr nz, HandleLink jr InterruptDoneHandleON: in a, (03h) res 0, a out (03h), a set 0, a out (03h), a ; ON interrupt jr InterruptDoneHandleTimer1: in a, (03h) res 1, a out (03h), a set 1, a out (03h), a ; Timer one interrupt (might be best to merge with timer 2) jr InterruptDoneHandleTimer2: in a, (03h) res 2, a out (03h), a set 2, a out (03h), a ; Timer two interrupt jr InterruptDoneHandleLink: in a, (03h) res 4, a out (03h), a set 4, a out (03h), a ; Link interruptInterruptDone: ex af, af' exx ei ret
ld a, 40h out (10h), a ld a, 05h call LCDDelay out (10h), a ld a, 01h call LCDDelay out (10h), a ld a, 3 call LCDDelay out (10h), a ld a, 0F6h call LCDDelay out (10h), a
ld a, 1 ; Set flash page 1 in bank 1. out (6), a in a, (2) ;get calc version rlca ;Roll bit 7 into carry. ld a, 41h ; Set ram page 1 in bank 2. jr nc, LowerModelHigherModel: out (5),a ld a,81h out (7),a jr DoneLowerModel: out (6), a out (7),aDone:
tools\brass "src\Page $00.z80"tools\bin2hex "Page $00.bin" 20 0000 > "Page $00.hex"tools\brass "src\Page $1D.z80"tools\bin2hex "Page $1D.bin" 20 4000 > "Page $1D.hex"tools\ostools-0.1\multihex 00 "Page $00.hex" 1D "Page $1D.hex" > os.hextools\ostools-0.1\packxxu os.hex -o os84.8xu -t 83p -q 0A -v 0.01 -h 255tools\ostools-0.1\packxxu os.hex -o os83.8xu -t 83p -q 04 -v 0.01 -h 255tools\rabbitsign\rabbitsign -t 8xu -k tools\keys\0A.key -K 0A -g -p -r os84.8xutools\rabbitsign\rabbitsign -t 8xu -k tools\keys\04.key -K 04 -g -p -r os83.8xudel os83.8xu os84.8xucopy src\PartesOS.h + *.inc PartesOS.hdel *.bin*del *.hexdel PartesOS*.8xuren os83-signed.8xu "PartesOS 83+.8xu"ren os84-signed.8xu "PartesOS 84+.8xu"
He wrote TI-Developer.Also nice tutorial Sir, I'll sticky this topic in case. I recommend people to be careful with OS projects, though. Those are ambitious projects and I do not recommend them for novice programmers.
I wanted to eventually have a go at a WFRNG OS for 68k calcs