1.1 --- a/switcher.oph Sun Jun 28 14:08:35 2015 +0200
1.2 +++ b/switcher.oph Sun Jun 28 15:45:29 2015 +0200
1.3 @@ -26,6 +26,8 @@
1.4 .alias CURRENT $74
1.5 .alias CURRENTH $75
1.6 .alias USER $76
1.7 +.alias USERH $77
1.8 +.alias TEMP $78
1.9 .alias ARG0 $80
1.10 .alias ARG0H $81
1.11 .alias ARG1 $82
1.12 @@ -407,8 +409,11 @@
1.13 .byte 0 ; saved flags
1.14 .word first_task_start ; saved PC
1.15 first_task_start:
1.16 - .invoke add16 1, $7000
1.17 - jmp first_task_start
1.18 + lda #1
1.19 +first_task_continue:
1.20 + sta $7000
1.21 + adc #1
1.22 + jmp first_task_continue
1.23
1.24
1.25
1.26 @@ -418,8 +423,11 @@
1.27 .byte 0 ; saved flags
1.28 .word second_task_start ; saved PC
1.29 second_task_start:
1.30 - .invoke add16 1, $7008
1.31 - jmp second_task_start
1.32 + lda #1
1.33 +second_task_continue:
1.34 + sta $7008
1.35 + adc #1
1.36 + jmp second_task_continue
1.37
1.38
1.39
1.40 @@ -429,20 +437,25 @@
1.41 .byte 0 ; saved flags
1.42 .word third_task_start ; saved PC
1.43 third_task_start:
1.44 - .invoke store16 0, $7010
1.45 ldx #0
1.46 + ldy #0
1.47 _loop:
1.48 - lda $7010
1.49 - cmp #$ff
1.50 + cpy #$ff
1.51 bne _continue
1.52 + inc $7011
1.53 lda $7011
1.54 cmp #$ff
1.55 bne _continue
1.56 + tya
1.57 + .invoke pushA
1.58 txa
1.59 .invoke call remove_task
1.60 + .invoke pullA
1.61 + tay
1.62 inx
1.63 _continue:
1.64 - .invoke add16 1, $7010
1.65 + iny
1.66 + sty $7010
1.67 jmp _loop
1.68 third_task_stack:
1.69 .word 0