mirror of
https://github.com/sehugg/8bitworkshop.git
synced 2024-11-21 07:33:14 +00:00
ecs: nested labels
This commit is contained in:
parent
e86eb56570
commit
6f3affaaef
@ -765,8 +765,10 @@ class ActionEval {
|
||||
});
|
||||
return code;
|
||||
}
|
||||
private replaceLabels(code: string, label: string) {
|
||||
private replaceLabels(code: string) {
|
||||
const label_re = /@(\w+)\b/g;
|
||||
let seq = this.em.seq++;
|
||||
let label = `${this.instance.system.name}__${this.action.event}__${seq}`;
|
||||
code = code.replace(label_re, (s: string, a: string) => `${label}__${a}`);
|
||||
return code;
|
||||
}
|
||||
@ -992,7 +994,7 @@ class ActionEval {
|
||||
evalInlineCode(code: string) {
|
||||
let props = this.scope.state.props || {};
|
||||
// replace @labels
|
||||
code = this.replaceLabels(code, this.label);
|
||||
code = this.replaceLabels(code);
|
||||
// replace {{...}} tags
|
||||
// TODO: use nodes instead
|
||||
code = this.replaceTags(code, this.action, props);
|
||||
@ -1046,7 +1048,6 @@ class ActionEval {
|
||||
} else if (instance.params.query) {
|
||||
qr = qr.intersection(new EntitySet(scope, instance.params.query));
|
||||
}
|
||||
let entities = qr.entities;
|
||||
// TODO: generalize to other cpus/langs
|
||||
switch (select) {
|
||||
case 'once':
|
||||
@ -1074,13 +1075,13 @@ class ActionEval {
|
||||
state.xreg = state.xreg.narrow(qr, action);
|
||||
if (state.xreg == null || state.xreg.eset?.entities == null) {
|
||||
if (select == 'if') {
|
||||
entities = [];
|
||||
break; // "if" failed
|
||||
qr.entities = []; // "if" failed
|
||||
} else {
|
||||
throw new ECSError(`no entities in statement`, action);
|
||||
}
|
||||
} else {
|
||||
entities = state.xreg.eset.entities; // TODO?
|
||||
// TODO: must be a better way...
|
||||
qr.entities = state.xreg.eset.entities;
|
||||
}
|
||||
} else if (select == 'with') {
|
||||
if (instance.params.refEntity && instance.params.refField) {
|
||||
@ -1096,6 +1097,7 @@ class ActionEval {
|
||||
break;
|
||||
}
|
||||
//
|
||||
let entities = qr.entities;
|
||||
let code = '%%CODE%%';
|
||||
let props: { [name: string]: string } = {};
|
||||
// TODO: detect cycles
|
||||
@ -1155,7 +1157,6 @@ class ActionEval {
|
||||
props['%xofs'] = (this.scope.state.xreg?.offset() || 0).toString();
|
||||
props['%yofs'] = (this.scope.state.yreg?.offset() || 0).toString();
|
||||
let working = jr ? jr.union(qr) : qr;
|
||||
working.entities = entities; // TODO? not good...
|
||||
//console.log('working', action.event, working.entities.length, entities.length);
|
||||
return { working, oldState, props, code };
|
||||
}
|
||||
@ -1581,7 +1582,7 @@ export class EntityScope implements SourceLocated {
|
||||
}
|
||||
normalizeCode(code: string, action: Action) {
|
||||
// TODO: use dialect to help with this
|
||||
code = code.replace(/(\w+__\w+__)(\d+)(\w+)/g, (z,a,b,c) => a+c);
|
||||
code = code.replace(/\b(\w+__\w+__)(\d+)__(\w+)\b/g, (z,a,b,c) => a+c);
|
||||
return code;
|
||||
}
|
||||
getSystemStats(inst: SystemInstance) : SystemStats {
|
||||
@ -1687,7 +1688,6 @@ export class EntityScope implements SourceLocated {
|
||||
}
|
||||
let subcall = this.dialect.call(stats.labels[0]);
|
||||
for (let label of stats.labels) {
|
||||
// TODO: need to trim()?
|
||||
let startdelim = this.dialect.comment(`start action ${label}`).trim();
|
||||
let enddelim = this.dialect.comment(`end action ${label}`).trim();
|
||||
let istart = code.indexOf(startdelim);
|
||||
|
@ -23,14 +23,14 @@ __Start:
|
||||
;;; start action move__start__1
|
||||
|
||||
ldx #0
|
||||
move__start__1____each:
|
||||
move__start__2____each:
|
||||
|
||||
lda Xpos_x_b0+2,x
|
||||
|
||||
inx
|
||||
cpx #2
|
||||
jne move__start__1____each
|
||||
move__start__1____exit:
|
||||
jne move__start__2____each
|
||||
move__start__2____exit:
|
||||
|
||||
;;; end action move__start__1
|
||||
|
||||
|
@ -75,12 +75,12 @@ __BRK:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__2
|
||||
;;; start action FrameLoop__start__3
|
||||
|
||||
FrameLoop__start__2__NextFrame:
|
||||
FrameLoop__start__4__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action Kernel6Digit__preframe__3
|
||||
;;; start action Kernel6Digit__preframe__5
|
||||
|
||||
Digit0 = Kernel6Digit__2__tmp+0
|
||||
Digit1 = Kernel6Digit__2__tmp+2
|
||||
@ -88,20 +88,20 @@ Digit2 = Kernel6Digit__2__tmp+4
|
||||
Digit3 = Kernel6Digit__2__tmp+6
|
||||
Digit4 = Kernel6Digit__2__tmp+8
|
||||
Digit5 = Kernel6Digit__2__tmp+10
|
||||
Kernel6Digit__preframe__3__BCD0 = Kernel6Digit__2__tmp+12
|
||||
Kernel6Digit__preframe__3__BCD1 = Kernel6Digit__2__tmp+13
|
||||
Kernel6Digit__preframe__3__BCD2 = Kernel6Digit__2__tmp+14
|
||||
Kernel6Digit__preframe__7__BCD0 = Kernel6Digit__2__tmp+12
|
||||
Kernel6Digit__preframe__7__BCD1 = Kernel6Digit__2__tmp+13
|
||||
Kernel6Digit__preframe__7__BCD2 = Kernel6Digit__2__tmp+14
|
||||
|
||||
lda BCDScore6_digits_b0
|
||||
sta Kernel6Digit__preframe__3__BCD0
|
||||
sta Kernel6Digit__preframe__7__BCD0
|
||||
lda BCDScore6_digits_b8
|
||||
sta Kernel6Digit__preframe__3__BCD1
|
||||
sta Kernel6Digit__preframe__7__BCD1
|
||||
lda BCDScore6_digits_b16
|
||||
sta Kernel6Digit__preframe__3__BCD2
|
||||
sta Kernel6Digit__preframe__7__BCD2
|
||||
ldx #0 ; leftmost bitmap
|
||||
ldy #2 ; start from most-sigificant BCD value
|
||||
Kernel6Digit__preframe__3__Loop:
|
||||
lda Kernel6Digit__preframe__3__BCD0,y ; get BCD value
|
||||
Kernel6Digit__preframe__7__Loop:
|
||||
lda Kernel6Digit__preframe__7__BCD0,y ; get BCD value
|
||||
and #$f0 ; isolate high nibble (* 16)
|
||||
lsr ; shift right 1 bit (* 8)
|
||||
clc
|
||||
@ -112,7 +112,7 @@ Kernel6Digit__preframe__3__Loop:
|
||||
sta Digit0+1,x ; store pointer hi byte
|
||||
inx
|
||||
inx ; next bitmap pointer
|
||||
lda Kernel6Digit__preframe__3__BCD0,y ; get BCD value (again)
|
||||
lda Kernel6Digit__preframe__7__BCD0,y ; get BCD value (again)
|
||||
and #$f ; isolate low nibble
|
||||
asl
|
||||
asl
|
||||
@ -126,13 +126,13 @@ Kernel6Digit__preframe__3__Loop:
|
||||
inx
|
||||
inx ; next bitmap pointer
|
||||
dey ; next BCD value
|
||||
bpl Kernel6Digit__preframe__3__Loop ; repeat until < 0
|
||||
bpl Kernel6Digit__preframe__7__Loop ; repeat until < 0
|
||||
|
||||
;;; end action Kernel6Digit__preframe__3
|
||||
;;; end action Kernel6Digit__preframe__5
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action Kernel6Digit__kernel__4
|
||||
;;; start action Kernel6Digit__kernel__8
|
||||
|
||||
lda PFColor_pfcolor_b0
|
||||
sta COLUP0
|
||||
@ -156,23 +156,23 @@ Kernel6Digit__preframe__3__Loop:
|
||||
sta VDELP0
|
||||
sta VDELP1
|
||||
|
||||
;;; end action Kernel6Digit__kernel__4
|
||||
;;; end action Kernel6Digit__kernel__8
|
||||
|
||||
;;; start action Kernel6Digit__kernel__5
|
||||
;;; start action Kernel6Digit__kernel__11
|
||||
|
||||
; Display the resulting 48x8 bitmap
|
||||
; using the Digit0-5 pointers.
|
||||
Kernel6Digit__kernel__5__LoopCount = Kernel6Digit__2__tmp+12
|
||||
Kernel6Digit__kernel__5__Temp = Kernel6Digit__2__tmp+13
|
||||
Kernel6Digit__kernel__13__LoopCount = Kernel6Digit__2__tmp+12
|
||||
Kernel6Digit__kernel__13__Temp = Kernel6Digit__2__tmp+13
|
||||
|
||||
lda BGColor_bgcolor_b0
|
||||
sta WSYNC
|
||||
sta COLUBK
|
||||
lda #7
|
||||
sta Kernel6Digit__kernel__5__LoopCount
|
||||
sta Kernel6Digit__kernel__13__LoopCount
|
||||
SLEEPR 20 ; TODO?
|
||||
Kernel6Digit__kernel__5__BigLoop:
|
||||
ldy Kernel6Digit__kernel__5__LoopCount ; counts backwards
|
||||
Kernel6Digit__kernel__13__BigLoop:
|
||||
ldy Kernel6Digit__kernel__13__LoopCount ; counts backwards
|
||||
lda (Digit0),y ; load B0 (1st sprite byte)
|
||||
sta GRP0 ; B0 -> [GRP0]
|
||||
lda (Digit1),y ; load B1 -> A
|
||||
@ -181,17 +181,17 @@ Kernel6Digit__kernel__5__BigLoop:
|
||||
lda (Digit2),y ; load B2 -> A
|
||||
sta GRP0 ; B2 -> [GRP0], B1 -> GRP1
|
||||
lda (Digit5),y ; load B5 -> A
|
||||
sta Kernel6Digit__kernel__5__Temp ; B5 -> temp
|
||||
sta Kernel6Digit__kernel__13__Temp ; B5 -> temp
|
||||
lda (Digit4),y ; load B4
|
||||
tax ; -> X
|
||||
lda (Digit3),y ; load B3 -> A
|
||||
ldy Kernel6Digit__kernel__5__Temp ; load B5 -> Y
|
||||
ldy Kernel6Digit__kernel__13__Temp ; load B5 -> Y
|
||||
sta GRP1 ; B3 -> [GRP1]; B2 -> GRP0
|
||||
stx GRP0 ; B4 -> [GRP0]; B3 -> GRP1
|
||||
sty GRP1 ; B5 -> [GRP1]; B4 -> GRP0
|
||||
sta GRP0 ; ?? -> [GRP0]; B5 -> GRP1
|
||||
dec Kernel6Digit__kernel__5__LoopCount ; go to next line
|
||||
bpl Kernel6Digit__kernel__5__BigLoop ; repeat until < 0
|
||||
dec Kernel6Digit__kernel__13__LoopCount ; go to next line
|
||||
bpl Kernel6Digit__kernel__13__BigLoop ; repeat until < 0
|
||||
|
||||
lda #0 ; clear the sprite registers
|
||||
sta WSYNC
|
||||
@ -201,9 +201,9 @@ Kernel6Digit__kernel__5__BigLoop:
|
||||
sta GRP1
|
||||
sta COLUBK
|
||||
|
||||
;;; end action Kernel6Digit__kernel__5
|
||||
;;; end action Kernel6Digit__kernel__11
|
||||
|
||||
;;; start action Kernel2Digit__kernel__6
|
||||
;;; start action Kernel2Digit__kernel__14
|
||||
|
||||
lda #$02
|
||||
sta CTRLPF
|
||||
@ -214,17 +214,17 @@ Kernel6Digit__kernel__5__BigLoop:
|
||||
lda PFColor_pfcolor_b0+1
|
||||
sta COLUP1
|
||||
|
||||
;;; end action Kernel2Digit__kernel__6
|
||||
;;; end action Kernel2Digit__kernel__14
|
||||
|
||||
;;; start action Kernel2Digit__kernel__7
|
||||
;;; start action Kernel2Digit__kernel__17
|
||||
|
||||
lda #7
|
||||
sta Kernel2Digit__4__tmp+0
|
||||
Kernel2Digit__kernel__7__Loop:
|
||||
Kernel2Digit__kernel__19__Loop:
|
||||
ldx #0
|
||||
sta WSYNC
|
||||
|
||||
;;; start action Kernel2Digit__compute2digit__8
|
||||
;;; start action Kernel2Digit__compute2digit__20
|
||||
|
||||
lda Kernel2Digit__4__tmp+1 ; load 1st pf
|
||||
sta PF1 ; store 1st pf
|
||||
@ -236,14 +236,14 @@ Kernel2Digit__kernel__7__Loop:
|
||||
asl
|
||||
asl
|
||||
|
||||
;;; start action Kernel2Digit__fetchdigit__9
|
||||
;;; start action Kernel2Digit__fetchdigit__22
|
||||
|
||||
adc Kernel2Digit__4__tmp+0
|
||||
tay
|
||||
; TODO: select your own?
|
||||
lda FontTablePF,y
|
||||
|
||||
;;; end action Kernel2Digit__fetchdigit__9
|
||||
;;; end action Kernel2Digit__fetchdigit__22
|
||||
|
||||
and #$0f
|
||||
ldy Kernel2Digit__4__tmp+2 ; load 2nd pf
|
||||
@ -254,24 +254,24 @@ Kernel2Digit__kernel__7__Loop:
|
||||
lsr
|
||||
sty PF1 ; store 2nd pf
|
||||
|
||||
;;; start action Kernel2Digit__fetchdigit__10
|
||||
;;; start action Kernel2Digit__fetchdigit__24
|
||||
|
||||
adc Kernel2Digit__4__tmp+0
|
||||
tay
|
||||
; TODO: select your own?
|
||||
lda FontTablePF,y
|
||||
|
||||
;;; end action Kernel2Digit__fetchdigit__10
|
||||
;;; end action Kernel2Digit__fetchdigit__24
|
||||
|
||||
and #$f0
|
||||
ora Kernel2Digit__4__tmp+1 + 0
|
||||
sta Kernel2Digit__4__tmp+1 + 0
|
||||
|
||||
;;; end action Kernel2Digit__compute2digit__8
|
||||
;;; end action Kernel2Digit__compute2digit__20
|
||||
|
||||
inx
|
||||
|
||||
;;; start action Kernel2Digit__compute2digit__11
|
||||
;;; start action Kernel2Digit__compute2digit__26
|
||||
|
||||
lda Kernel2Digit__4__tmp+1 ; load 1st pf
|
||||
sta PF1 ; store 1st pf
|
||||
@ -283,14 +283,14 @@ Kernel2Digit__kernel__7__Loop:
|
||||
asl
|
||||
asl
|
||||
|
||||
;;; start action Kernel2Digit__fetchdigit__12
|
||||
;;; start action Kernel2Digit__fetchdigit__28
|
||||
|
||||
adc Kernel2Digit__4__tmp+0
|
||||
tay
|
||||
; TODO: select your own?
|
||||
lda FontTablePF,y
|
||||
|
||||
;;; end action Kernel2Digit__fetchdigit__12
|
||||
;;; end action Kernel2Digit__fetchdigit__28
|
||||
|
||||
and #$0f
|
||||
ldy Kernel2Digit__4__tmp+2 ; load 2nd pf
|
||||
@ -301,40 +301,40 @@ Kernel2Digit__kernel__7__Loop:
|
||||
lsr
|
||||
sty PF1 ; store 2nd pf
|
||||
|
||||
;;; start action Kernel2Digit__fetchdigit__13
|
||||
;;; start action Kernel2Digit__fetchdigit__30
|
||||
|
||||
adc Kernel2Digit__4__tmp+0
|
||||
tay
|
||||
; TODO: select your own?
|
||||
lda FontTablePF,y
|
||||
|
||||
;;; end action Kernel2Digit__fetchdigit__13
|
||||
;;; end action Kernel2Digit__fetchdigit__30
|
||||
|
||||
and #$f0
|
||||
ora Kernel2Digit__4__tmp+1 + 1
|
||||
sta Kernel2Digit__4__tmp+1 + 1
|
||||
|
||||
;;; end action Kernel2Digit__compute2digit__11
|
||||
;;; end action Kernel2Digit__compute2digit__26
|
||||
|
||||
; playfield
|
||||
dec Kernel2Digit__4__tmp+0
|
||||
bpl Kernel2Digit__kernel__7__Loop
|
||||
bpl Kernel2Digit__kernel__19__Loop
|
||||
; dex
|
||||
; stx PF1
|
||||
|
||||
;;; end action Kernel2Digit__kernel__7
|
||||
;;; end action Kernel2Digit__kernel__17
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action JoyButton__postframe__14
|
||||
;;; start action JoyButton__postframe__32
|
||||
|
||||
lda INPT4 ;read button input
|
||||
bmi JoyButton__postframe__14__NotPressed
|
||||
bmi JoyButton__postframe__34__NotPressed
|
||||
|
||||
;;; start action IncScore__joybutton__15
|
||||
;;; start action IncScore__joybutton__35
|
||||
|
||||
|
||||
;;; start action BCDMath__AddBCD4__16
|
||||
;;; start action BCDMath__AddBCD4__38
|
||||
|
||||
.ifnblank $0210
|
||||
lda #<$0210
|
||||
@ -355,20 +355,20 @@ Kernel2Digit__kernel__7__Loop:
|
||||
sta BCDScore6_digits_b16
|
||||
cld ; exit BCD mode
|
||||
|
||||
;;; end action BCDMath__AddBCD4__16
|
||||
;;; end action BCDMath__AddBCD4__38
|
||||
|
||||
|
||||
;;; end action IncScore__joybutton__15
|
||||
;;; end action IncScore__joybutton__35
|
||||
|
||||
JoyButton__postframe__14__NotPressed:
|
||||
JoyButton__postframe__34__NotPressed:
|
||||
|
||||
;;; end action JoyButton__postframe__14
|
||||
;;; end action JoyButton__postframe__32
|
||||
|
||||
FRAME_END
|
||||
|
||||
jmp FrameLoop__start__2__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__4__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__2
|
||||
;;; end action FrameLoop__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
@ -380,7 +380,7 @@ VecBRK: .word Main::__BRK
|
||||
|
||||
FontTable:
|
||||
|
||||
;;; start action FontTable__FontTable__17
|
||||
;;; start action FontTable__FontTable__41
|
||||
|
||||
; Font table for digits 0-9 (8x8 pixels)
|
||||
;;{w:8,h:8,count:10,brev:1,flip:1};;
|
||||
@ -390,11 +390,11 @@ FontTable:
|
||||
.byte $00,$3c,$66,$66,$7c,$60,$66,$3c,$00,$18,$18,$18,$18,$0c,$66,$7e
|
||||
.byte $00,$3c,$66,$66,$3c,$66,$66,$3c,$00,$3c,$66,$06,$3e,$66,$66,$3c
|
||||
|
||||
;;; end action FontTable__FontTable__17
|
||||
;;; end action FontTable__FontTable__41
|
||||
|
||||
FontTablePF:
|
||||
|
||||
;;; start action FontTablePF__FontTablePF__18
|
||||
;;; start action FontTablePF__FontTablePF__43
|
||||
|
||||
; Font table for digits 0-9 (4x8 pixels)
|
||||
;;{w:8,h:8,count:10,brev:1,flip:1};;
|
||||
@ -410,7 +410,7 @@ FontTablePF:
|
||||
.byte $00,$00,$EE,$22,$EE,$AA,$EE,$00
|
||||
;;
|
||||
|
||||
;;; end action FontTablePF__FontTablePF__18
|
||||
;;; end action FontTablePF__FontTablePF__43
|
||||
|
||||
.endscope
|
||||
Main__Start = Main::__Start
|
@ -142,12 +142,12 @@ __BRK:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__2
|
||||
;;; start action FrameLoop__start__3
|
||||
|
||||
FrameLoop__start__2__NextFrame:
|
||||
FrameLoop__start__4__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__3
|
||||
;;; start action Kernel2Sprite__preframe__5
|
||||
|
||||
.define KLINES #192
|
||||
.define KPAD 32
|
||||
@ -162,17 +162,17 @@ FrameLoop__start__2__NextFrame:
|
||||
sta Kernel2Sprite__2__tmp+6
|
||||
sta Kernel2Sprite__2__tmp+7
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__3
|
||||
;;; end action Kernel2Sprite__preframe__5
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__4
|
||||
;;; start action Kernel2Sprite__preframe__8
|
||||
|
||||
ldy #0
|
||||
Kernel2Sprite__preframe__4____each:
|
||||
Kernel2Sprite__preframe__9____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
; flags set according to sprite slot value
|
||||
; skip sprite if negative
|
||||
jmi Kernel2Sprite__preframe__4__nosprite
|
||||
jmi Kernel2Sprite__preframe__10__nosprite
|
||||
; set player object flags
|
||||
lda Sprite_plyrflags_b0,x
|
||||
sta NUSIZ0,y
|
||||
@ -211,16 +211,16 @@ Kernel2Sprite__preframe__4____each:
|
||||
ldx Kernel2Sprite__2__tmp+12 ; restore X
|
||||
lda HasYpos_ypos_b0,x
|
||||
sta Kernel2Sprite__2__tmp+10,y
|
||||
Kernel2Sprite__preframe__4__nosprite:
|
||||
Kernel2Sprite__preframe__10__nosprite:
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne Kernel2Sprite__preframe__4____each
|
||||
Kernel2Sprite__preframe__4____exit:
|
||||
jne Kernel2Sprite__preframe__9____each
|
||||
Kernel2Sprite__preframe__9____exit:
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__4
|
||||
;;; end action Kernel2Sprite__preframe__8
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__5
|
||||
;;; start action Kernel2Sprite__preframe__11
|
||||
|
||||
; shuffle pointers into (MSB, LSB) byte order
|
||||
; L0 L1 H0 H1 -> L0 H0 L1 H1
|
||||
@ -233,34 +233,34 @@ Kernel2Sprite__preframe__4____exit:
|
||||
sty Kernel2Sprite__2__tmp+5
|
||||
sta Kernel2Sprite__2__tmp+6
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__5
|
||||
;;; end action Kernel2Sprite__preframe__11
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__6
|
||||
;;; start action Kernel2Sprite__preframe__13
|
||||
|
||||
lda #162
|
||||
sta COLUBK
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__6
|
||||
;;; end action Kernel2Sprite__preframe__13
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__7
|
||||
;;; start action Kernel2Sprite__preframe__16
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__7
|
||||
;;; end action Kernel2Sprite__preframe__16
|
||||
|
||||
;;; start action SetXPos__preframe__8
|
||||
;;; start action SetXPos__preframe__17
|
||||
|
||||
sta HMCLR
|
||||
|
||||
;;; end action SetXPos__preframe__8
|
||||
;;; end action SetXPos__preframe__17
|
||||
|
||||
;;; start action SetXPos__preframe__9
|
||||
;;; start action SetXPos__preframe__19
|
||||
|
||||
ldy #0
|
||||
SetXPos__preframe__9____each:
|
||||
SetXPos__preframe__20____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
|
||||
;;; start action SetHorizPos__SetHorizPos__10
|
||||
;;; start action SetHorizPos__SetHorizPos__22
|
||||
|
||||
; SetHorizPos routine
|
||||
; A = X coordinate
|
||||
@ -268,9 +268,9 @@ SetXPos__preframe__9____each:
|
||||
sta WSYNC ; start a new line
|
||||
sec ; set carry flag
|
||||
nop
|
||||
SetHorizPos__SetHorizPos__10__DivideLoop:
|
||||
SetHorizPos__SetHorizPos__23__DivideLoop:
|
||||
sbc #15 ; subtract 15
|
||||
bcs SetHorizPos__SetHorizPos__10__DivideLoop ; branch until negative
|
||||
bcs SetHorizPos__SetHorizPos__23__DivideLoop ; branch until negative
|
||||
eor #7 ; calculate fine offset
|
||||
asl
|
||||
asl
|
||||
@ -279,52 +279,52 @@ SetHorizPos__SetHorizPos__10__DivideLoop:
|
||||
sta RESP0,y ; fix coarse position
|
||||
sta HMP0,y ; set fine offset
|
||||
|
||||
;;; end action SetHorizPos__SetHorizPos__10
|
||||
;;; end action SetHorizPos__SetHorizPos__22
|
||||
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne SetXPos__preframe__9____each
|
||||
SetXPos__preframe__9____exit:
|
||||
jne SetXPos__preframe__20____each
|
||||
SetXPos__preframe__20____exit:
|
||||
|
||||
;;; end action SetXPos__preframe__9
|
||||
;;; end action SetXPos__preframe__19
|
||||
|
||||
;;; start action SetXPos__preframe__11
|
||||
;;; start action SetXPos__preframe__24
|
||||
|
||||
;;; end action SetXPos__preframe__11
|
||||
;;; end action SetXPos__preframe__24
|
||||
|
||||
;;; start action SetXPos__preframe__12
|
||||
;;; start action SetXPos__preframe__25
|
||||
|
||||
sta WSYNC
|
||||
sta HMOVE
|
||||
|
||||
;;; end action SetXPos__preframe__12
|
||||
;;; end action SetXPos__preframe__25
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__13
|
||||
;;; start action Kernel2Sprite__kernel__27
|
||||
|
||||
ldy #0
|
||||
sty VDELP0
|
||||
iny
|
||||
sta VDELP1
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__13
|
||||
;;; end action Kernel2Sprite__kernel__27
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__14
|
||||
;;; start action Kernel2Sprite__kernel__30
|
||||
|
||||
ldy #192
|
||||
Kernel2Sprite__kernel__14__LVScan:
|
||||
Kernel2Sprite__kernel__32__LVScan:
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__15
|
||||
;;; start action Kernel2Sprite__scanline__33
|
||||
|
||||
; draw player 0
|
||||
lda Kernel2Sprite__2__tmp+8 ; height
|
||||
dcp Kernel2Sprite__2__tmp+10 ; ypos
|
||||
bcs Kernel2Sprite__scanline__15__DoDraw1
|
||||
bcs Kernel2Sprite__scanline__34__DoDraw1
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__15__DoDraw1:
|
||||
Kernel2Sprite__scanline__34__DoDraw1:
|
||||
lda (Kernel2Sprite__2__tmp+0),y
|
||||
.if 0 = 0
|
||||
sta WSYNC
|
||||
@ -335,32 +335,32 @@ Kernel2Sprite__scanline__15__DoDraw1:
|
||||
; draw player 1
|
||||
lda Kernel2Sprite__2__tmp+9 ; height
|
||||
dcp Kernel2Sprite__2__tmp+11 ; ypos
|
||||
bcs Kernel2Sprite__scanline__15__DoDraw2
|
||||
bcs Kernel2Sprite__scanline__34__DoDraw2
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__15__DoDraw2:
|
||||
Kernel2Sprite__scanline__34__DoDraw2:
|
||||
lda (Kernel2Sprite__2__tmp+2),y
|
||||
sta GRP1
|
||||
lda (Kernel2Sprite__2__tmp+6),y
|
||||
sta COLUP1
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__15
|
||||
;;; end action Kernel2Sprite__scanline__33
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__16
|
||||
;;; start action Kernel2Sprite__scanline__35
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__16
|
||||
;;; end action Kernel2Sprite__scanline__35
|
||||
|
||||
dey ; next scanline
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__17
|
||||
;;; start action Kernel2Sprite__scanline__36
|
||||
|
||||
; draw player 0
|
||||
lda Kernel2Sprite__2__tmp+8 ; height
|
||||
dcp Kernel2Sprite__2__tmp+10 ; ypos
|
||||
bcs Kernel2Sprite__scanline__17__DoDraw1
|
||||
bcs Kernel2Sprite__scanline__37__DoDraw1
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__17__DoDraw1:
|
||||
Kernel2Sprite__scanline__37__DoDraw1:
|
||||
lda (Kernel2Sprite__2__tmp+0),y
|
||||
.if 1 = 0
|
||||
sta WSYNC
|
||||
@ -371,27 +371,27 @@ Kernel2Sprite__scanline__17__DoDraw1:
|
||||
; draw player 1
|
||||
lda Kernel2Sprite__2__tmp+9 ; height
|
||||
dcp Kernel2Sprite__2__tmp+11 ; ypos
|
||||
bcs Kernel2Sprite__scanline__17__DoDraw2
|
||||
bcs Kernel2Sprite__scanline__37__DoDraw2
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__17__DoDraw2:
|
||||
Kernel2Sprite__scanline__37__DoDraw2:
|
||||
lda (Kernel2Sprite__2__tmp+2),y
|
||||
sta GRP1
|
||||
lda (Kernel2Sprite__2__tmp+6),y
|
||||
sta COLUP1
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__17
|
||||
;;; end action Kernel2Sprite__scanline__36
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__18
|
||||
;;; start action Kernel2Sprite__scanline__38
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__18
|
||||
;;; end action Kernel2Sprite__scanline__38
|
||||
|
||||
dey ; next scanline
|
||||
bne Kernel2Sprite__kernel__14__LVScan ; repeat until out of lines
|
||||
bne Kernel2Sprite__kernel__32__LVScan ; repeat until out of lines
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__14
|
||||
;;; end action Kernel2Sprite__kernel__30
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__19
|
||||
;;; start action Kernel2Sprite__kernel__39
|
||||
|
||||
lda #0
|
||||
sta GRP0
|
||||
@ -399,94 +399,94 @@ Kernel2Sprite__scanline__17__DoDraw2:
|
||||
sta GRP0
|
||||
sta GRP1
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__19
|
||||
;;; end action Kernel2Sprite__kernel__39
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action Joystick__postframe__20
|
||||
;;; start action Joystick__postframe__41
|
||||
|
||||
; 2 control inputs share a single byte, 4 bits each
|
||||
lda SWCHA
|
||||
sta Joystick__3__tmp+0
|
||||
|
||||
;;; end action Joystick__postframe__20
|
||||
;;; end action Joystick__postframe__41
|
||||
|
||||
;;; start action Joystick__postframe__21
|
||||
;;; start action Joystick__postframe__43
|
||||
|
||||
ldx #0
|
||||
Joystick__postframe__21____each:
|
||||
Joystick__postframe__44____each:
|
||||
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__21__SkipMoveRight
|
||||
bcs Joystick__postframe__45__SkipMoveRight
|
||||
|
||||
;;; start action MoveJoyX__joyright__22
|
||||
;;; start action MoveJoyX__joyright__46
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
clc
|
||||
adc #1
|
||||
cmp #152
|
||||
bcs MoveJoyX__joyright__22__nomove
|
||||
bcs MoveJoyX__joyright__48__nomove
|
||||
sta HasXpos_xpos_b0,x
|
||||
MoveJoyX__joyright__22__nomove:
|
||||
MoveJoyX__joyright__48__nomove:
|
||||
|
||||
;;; end action MoveJoyX__joyright__22
|
||||
;;; end action MoveJoyX__joyright__46
|
||||
|
||||
Joystick__postframe__21__SkipMoveRight:
|
||||
Joystick__postframe__45__SkipMoveRight:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__21__SkipMoveLeft
|
||||
bcs Joystick__postframe__45__SkipMoveLeft
|
||||
|
||||
;;; start action MoveJoyX__joyleft__23
|
||||
;;; start action MoveJoyX__joyleft__49
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
sec
|
||||
sbc #1
|
||||
bcc MoveJoyX__joyleft__23__nomove
|
||||
bcc MoveJoyX__joyleft__51__nomove
|
||||
sta HasXpos_xpos_b0,x
|
||||
MoveJoyX__joyleft__23__nomove:
|
||||
MoveJoyX__joyleft__51__nomove:
|
||||
|
||||
;;; end action MoveJoyX__joyleft__23
|
||||
;;; end action MoveJoyX__joyleft__49
|
||||
|
||||
Joystick__postframe__21__SkipMoveLeft:
|
||||
Joystick__postframe__45__SkipMoveLeft:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__21__SkipMoveDown
|
||||
bcs Joystick__postframe__45__SkipMoveDown
|
||||
|
||||
;;; start action MoveJoyY__joydown__24
|
||||
;;; start action MoveJoyY__joydown__52
|
||||
|
||||
lda HasYpos_ypos_b0,x
|
||||
clc
|
||||
adc #1
|
||||
cmp #220
|
||||
bcs MoveJoyY__joydown__24__nomove
|
||||
bcs MoveJoyY__joydown__54__nomove
|
||||
sta HasYpos_ypos_b0,x
|
||||
MoveJoyY__joydown__24__nomove:
|
||||
MoveJoyY__joydown__54__nomove:
|
||||
|
||||
;;; end action MoveJoyY__joydown__24
|
||||
;;; end action MoveJoyY__joydown__52
|
||||
|
||||
Joystick__postframe__21__SkipMoveDown:
|
||||
Joystick__postframe__45__SkipMoveDown:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__21__SkipMoveUp
|
||||
bcs Joystick__postframe__45__SkipMoveUp
|
||||
|
||||
;;; start action MoveJoyY__joyup__25
|
||||
;;; start action MoveJoyY__joyup__55
|
||||
|
||||
lda HasYpos_ypos_b0,x
|
||||
sec
|
||||
sbc #1
|
||||
bcc MoveJoyY__joyup__25__nomove
|
||||
bcc MoveJoyY__joyup__57__nomove
|
||||
sta HasYpos_ypos_b0,x
|
||||
MoveJoyY__joyup__25__nomove:
|
||||
MoveJoyY__joyup__57__nomove:
|
||||
|
||||
;;; end action MoveJoyY__joyup__25
|
||||
;;; end action MoveJoyY__joyup__55
|
||||
|
||||
Joystick__postframe__21__SkipMoveUp:
|
||||
Joystick__postframe__45__SkipMoveUp:
|
||||
|
||||
inx
|
||||
cpx #4
|
||||
jne Joystick__postframe__21____each
|
||||
Joystick__postframe__21____exit:
|
||||
jne Joystick__postframe__44____each
|
||||
Joystick__postframe__44____exit:
|
||||
|
||||
;;; end action Joystick__postframe__21
|
||||
;;; end action Joystick__postframe__43
|
||||
|
||||
;;; start action SpriteShuffler__postframe__26
|
||||
;;; start action SpriteShuffler__postframe__58
|
||||
|
||||
; load two sprite slots at left side of array
|
||||
lda SpriteSlot_sprite_b0
|
||||
@ -495,36 +495,36 @@ Joystick__postframe__21____exit:
|
||||
sta SpriteShuffler__8__tmp+1
|
||||
; move two slots to the left
|
||||
ldx #0
|
||||
SpriteShuffler__postframe__26__loop:
|
||||
SpriteShuffler__postframe__60__loop:
|
||||
lda SpriteSlot_sprite_b0+2,x
|
||||
sta SpriteSlot_sprite_b0,x
|
||||
inx
|
||||
cpx #4-2
|
||||
bne SpriteShuffler__postframe__26__loop
|
||||
bne SpriteShuffler__postframe__60__loop
|
||||
; store two sprite slots at right side of array
|
||||
lda SpriteShuffler__8__tmp+0
|
||||
sta SpriteSlot_sprite_b0+4-2
|
||||
lda SpriteShuffler__8__tmp+1
|
||||
sta SpriteSlot_sprite_b0+4-1
|
||||
|
||||
;;; end action SpriteShuffler__postframe__26
|
||||
;;; end action SpriteShuffler__postframe__58
|
||||
|
||||
;;; start action SpriteHider__postframe__27
|
||||
;;; start action SpriteHider__postframe__61
|
||||
|
||||
lda #4-1
|
||||
sta SpriteHider__9__tmp+0
|
||||
|
||||
;;; end action SpriteHider__postframe__27
|
||||
;;; end action SpriteHider__postframe__61
|
||||
|
||||
;;; start action SpriteHider__postframe__28
|
||||
;;; start action SpriteHider__postframe__64
|
||||
|
||||
ldy #0
|
||||
SpriteHider__postframe__28____each:
|
||||
SpriteHider__postframe__65____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
lda HasYpos_ypos_b0,x
|
||||
cmp #192
|
||||
bcc SpriteHider__postframe__28__skip
|
||||
bcc SpriteHider__postframe__66__skip
|
||||
; swap this sprite slot with slot at end of array
|
||||
lda SpriteSlot_sprite_b0,y
|
||||
pha
|
||||
@ -534,20 +534,20 @@ SpriteHider__postframe__28____each:
|
||||
pla
|
||||
sta SpriteSlot_sprite_b0,x
|
||||
dec SpriteHider__9__tmp+0
|
||||
SpriteHider__postframe__28__skip:
|
||||
SpriteHider__postframe__66__skip:
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne SpriteHider__postframe__28____each
|
||||
SpriteHider__postframe__28____exit:
|
||||
jne SpriteHider__postframe__65____each
|
||||
SpriteHider__postframe__65____exit:
|
||||
|
||||
;;; end action SpriteHider__postframe__28
|
||||
;;; end action SpriteHider__postframe__64
|
||||
|
||||
FRAME_END
|
||||
|
||||
jmp FrameLoop__start__2__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__4__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__2
|
||||
;;; end action FrameLoop__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
|
@ -142,22 +142,22 @@ __BRK:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__2
|
||||
;;; start action FrameLoop__start__3
|
||||
|
||||
FrameLoop__start__2__NextFrame:
|
||||
FrameLoop__start__4__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__3
|
||||
;;; start action Kernel2Sprite__preframe__5
|
||||
|
||||
.define KLINES #192
|
||||
.define KPAD 32
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__3
|
||||
;;; end action Kernel2Sprite__preframe__5
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__4
|
||||
;;; start action Kernel2Sprite__preframe__8
|
||||
|
||||
ldy #0
|
||||
Kernel2Sprite__preframe__4____each:
|
||||
Kernel2Sprite__preframe__9____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
; set player object flags
|
||||
@ -201,12 +201,12 @@ Kernel2Sprite__preframe__4____each:
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne Kernel2Sprite__preframe__4____each
|
||||
Kernel2Sprite__preframe__4____exit:
|
||||
jne Kernel2Sprite__preframe__9____each
|
||||
Kernel2Sprite__preframe__9____exit:
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__4
|
||||
;;; end action Kernel2Sprite__preframe__8
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__5
|
||||
;;; start action Kernel2Sprite__preframe__11
|
||||
|
||||
; L0 L1 H0 H1 -> L0 H0 L1 H1
|
||||
lda Kernel2Sprite__2__tmp+1
|
||||
@ -218,34 +218,34 @@ Kernel2Sprite__preframe__4____exit:
|
||||
sty Kernel2Sprite__2__tmp+5
|
||||
sta Kernel2Sprite__2__tmp+6
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__5
|
||||
;;; end action Kernel2Sprite__preframe__11
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__6
|
||||
;;; start action Kernel2Sprite__preframe__13
|
||||
|
||||
lda #162
|
||||
sta COLUBK
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__6
|
||||
;;; end action Kernel2Sprite__preframe__13
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__7
|
||||
;;; start action Kernel2Sprite__preframe__16
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__7
|
||||
;;; end action Kernel2Sprite__preframe__16
|
||||
|
||||
;;; start action SetXPos__preframe__8
|
||||
;;; start action SetXPos__preframe__17
|
||||
|
||||
sta HMCLR
|
||||
|
||||
;;; end action SetXPos__preframe__8
|
||||
;;; end action SetXPos__preframe__17
|
||||
|
||||
;;; start action SetXPos__preframe__9
|
||||
;;; start action SetXPos__preframe__19
|
||||
|
||||
ldy #0
|
||||
SetXPos__preframe__9____each:
|
||||
SetXPos__preframe__20____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
|
||||
;;; start action SetHorizPos__SetHorizPos__10
|
||||
;;; start action SetHorizPos__SetHorizPos__22
|
||||
|
||||
; SetHorizPos routine
|
||||
; A = X coordinate
|
||||
@ -253,9 +253,9 @@ SetXPos__preframe__9____each:
|
||||
sta WSYNC ; start a new line
|
||||
sec ; set carry flag
|
||||
nop
|
||||
SetHorizPos__SetHorizPos__10__DivideLoop:
|
||||
SetHorizPos__SetHorizPos__23__DivideLoop:
|
||||
sbc #15 ; subtract 15
|
||||
bcs SetHorizPos__SetHorizPos__10__DivideLoop ; branch until negative
|
||||
bcs SetHorizPos__SetHorizPos__23__DivideLoop ; branch until negative
|
||||
eor #7 ; calculate fine offset
|
||||
asl
|
||||
asl
|
||||
@ -264,42 +264,42 @@ SetHorizPos__SetHorizPos__10__DivideLoop:
|
||||
sta RESP0,y ; fix coarse position
|
||||
sta HMP0,y ; set fine offset
|
||||
|
||||
;;; end action SetHorizPos__SetHorizPos__10
|
||||
;;; end action SetHorizPos__SetHorizPos__22
|
||||
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne SetXPos__preframe__9____each
|
||||
SetXPos__preframe__9____exit:
|
||||
jne SetXPos__preframe__20____each
|
||||
SetXPos__preframe__20____exit:
|
||||
|
||||
;;; end action SetXPos__preframe__9
|
||||
;;; end action SetXPos__preframe__19
|
||||
|
||||
;;; start action SetXPos__preframe__11
|
||||
;;; start action SetXPos__preframe__24
|
||||
|
||||
;;; end action SetXPos__preframe__11
|
||||
;;; end action SetXPos__preframe__24
|
||||
|
||||
;;; start action SetXPos__preframe__12
|
||||
;;; start action SetXPos__preframe__25
|
||||
|
||||
sta WSYNC
|
||||
sta HMOVE
|
||||
|
||||
;;; end action SetXPos__preframe__12
|
||||
;;; end action SetXPos__preframe__25
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__13
|
||||
;;; start action Kernel2Sprite__kernel__27
|
||||
|
||||
ldy #0
|
||||
sty VDELP0
|
||||
iny
|
||||
sta VDELP1
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__13
|
||||
;;; end action Kernel2Sprite__kernel__27
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__14
|
||||
;;; start action Kernel2Sprite__kernel__30
|
||||
|
||||
; define macro for each line
|
||||
.macro Kernel2Sprite__kernel__14__DrawLine do_wsync
|
||||
.macro Kernel2Sprite__kernel__32__DrawLine do_wsync
|
||||
.local DoDraw1
|
||||
.local DoDraw2
|
||||
; draw player 0
|
||||
@ -330,22 +330,22 @@ DoDraw2:
|
||||
.endmacro
|
||||
|
||||
ldy #192
|
||||
Kernel2Sprite__kernel__14__LVScan:
|
||||
Kernel2Sprite__kernel__32__LVScan:
|
||||
|
||||
;;; start action Kernel2Sprite__scanline1__15
|
||||
;;; start action Kernel2Sprite__scanline1__33
|
||||
|
||||
;;; end action Kernel2Sprite__scanline1__15
|
||||
;;; end action Kernel2Sprite__scanline1__33
|
||||
|
||||
Kernel2Sprite__kernel__14__DrawLine 1 ; macro: draw scanline w/ WSYNC
|
||||
Kernel2Sprite__kernel__32__DrawLine 1 ; macro: draw scanline w/ WSYNC
|
||||
dey ; next scanline
|
||||
|
||||
Kernel2Sprite__kernel__14__DrawLine 0 ; macro: draw scanline no WSYNC
|
||||
Kernel2Sprite__kernel__32__DrawLine 0 ; macro: draw scanline no WSYNC
|
||||
dey ; next scanline
|
||||
bne Kernel2Sprite__kernel__14__LVScan ; repeat until out of lines
|
||||
bne Kernel2Sprite__kernel__32__LVScan ; repeat until out of lines
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__14
|
||||
;;; end action Kernel2Sprite__kernel__30
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__16
|
||||
;;; start action Kernel2Sprite__kernel__34
|
||||
|
||||
lda #0
|
||||
sta GRP0
|
||||
@ -353,94 +353,94 @@ Kernel2Sprite__kernel__14__LVScan:
|
||||
sta GRP0
|
||||
sta GRP1
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__16
|
||||
;;; end action Kernel2Sprite__kernel__34
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action Joystick__postframe__17
|
||||
;;; start action Joystick__postframe__37
|
||||
|
||||
; 2 control inputs share a single byte, 4 bits each
|
||||
lda SWCHA
|
||||
sta Joystick__3__tmp+0
|
||||
|
||||
;;; end action Joystick__postframe__17
|
||||
;;; end action Joystick__postframe__37
|
||||
|
||||
;;; start action Joystick__postframe__18
|
||||
;;; start action Joystick__postframe__39
|
||||
|
||||
ldx #0
|
||||
Joystick__postframe__18____each:
|
||||
Joystick__postframe__40____each:
|
||||
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__18__SkipMoveRight
|
||||
bcs Joystick__postframe__41__SkipMoveRight
|
||||
|
||||
;;; start action MoveJoyX__joyright__19
|
||||
;;; start action MoveJoyX__joyright__42
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
clc
|
||||
adc #1
|
||||
cmp #152
|
||||
bcs MoveJoyX__joyright__19__nomove
|
||||
bcs MoveJoyX__joyright__44__nomove
|
||||
sta HasXpos_xpos_b0,x
|
||||
MoveJoyX__joyright__19__nomove:
|
||||
MoveJoyX__joyright__44__nomove:
|
||||
|
||||
;;; end action MoveJoyX__joyright__19
|
||||
;;; end action MoveJoyX__joyright__42
|
||||
|
||||
Joystick__postframe__18__SkipMoveRight:
|
||||
Joystick__postframe__41__SkipMoveRight:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__18__SkipMoveLeft
|
||||
bcs Joystick__postframe__41__SkipMoveLeft
|
||||
|
||||
;;; start action MoveJoyX__joyleft__20
|
||||
;;; start action MoveJoyX__joyleft__45
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
sec
|
||||
sbc #1
|
||||
bcc MoveJoyX__joyleft__20__nomove
|
||||
bcc MoveJoyX__joyleft__47__nomove
|
||||
sta HasXpos_xpos_b0,x
|
||||
MoveJoyX__joyleft__20__nomove:
|
||||
MoveJoyX__joyleft__47__nomove:
|
||||
|
||||
;;; end action MoveJoyX__joyleft__20
|
||||
;;; end action MoveJoyX__joyleft__45
|
||||
|
||||
Joystick__postframe__18__SkipMoveLeft:
|
||||
Joystick__postframe__41__SkipMoveLeft:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__18__SkipMoveDown
|
||||
bcs Joystick__postframe__41__SkipMoveDown
|
||||
|
||||
;;; start action MoveJoyY__joydown__21
|
||||
;;; start action MoveJoyY__joydown__48
|
||||
|
||||
lda HasYpos_ypos_b0,x
|
||||
clc
|
||||
adc #1
|
||||
cmp #220
|
||||
bcs MoveJoyY__joydown__21__nomove
|
||||
bcs MoveJoyY__joydown__50__nomove
|
||||
sta HasYpos_ypos_b0,x
|
||||
MoveJoyY__joydown__21__nomove:
|
||||
MoveJoyY__joydown__50__nomove:
|
||||
|
||||
;;; end action MoveJoyY__joydown__21
|
||||
;;; end action MoveJoyY__joydown__48
|
||||
|
||||
Joystick__postframe__18__SkipMoveDown:
|
||||
Joystick__postframe__41__SkipMoveDown:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__18__SkipMoveUp
|
||||
bcs Joystick__postframe__41__SkipMoveUp
|
||||
|
||||
;;; start action MoveJoyY__joyup__22
|
||||
;;; start action MoveJoyY__joyup__51
|
||||
|
||||
lda HasYpos_ypos_b0,x
|
||||
sec
|
||||
sbc #1
|
||||
bcc MoveJoyY__joyup__22__nomove
|
||||
bcc MoveJoyY__joyup__53__nomove
|
||||
sta HasYpos_ypos_b0,x
|
||||
MoveJoyY__joyup__22__nomove:
|
||||
MoveJoyY__joyup__53__nomove:
|
||||
|
||||
;;; end action MoveJoyY__joyup__22
|
||||
;;; end action MoveJoyY__joyup__51
|
||||
|
||||
Joystick__postframe__18__SkipMoveUp:
|
||||
Joystick__postframe__41__SkipMoveUp:
|
||||
|
||||
inx
|
||||
cpx #4
|
||||
jne Joystick__postframe__18____each
|
||||
Joystick__postframe__18____exit:
|
||||
jne Joystick__postframe__40____each
|
||||
Joystick__postframe__40____exit:
|
||||
|
||||
;;; end action Joystick__postframe__18
|
||||
;;; end action Joystick__postframe__39
|
||||
|
||||
;;; start action SpriteShuffler__postframe__23
|
||||
;;; start action SpriteShuffler__postframe__54
|
||||
|
||||
; load two sprite slots at left side of array
|
||||
lda SpriteSlot_sprite_b0
|
||||
@ -449,36 +449,36 @@ Joystick__postframe__18____exit:
|
||||
sta SpriteShuffler__8__tmp+1
|
||||
; move two slots to the left
|
||||
ldx #0
|
||||
SpriteShuffler__postframe__23__loop:
|
||||
SpriteShuffler__postframe__56__loop:
|
||||
lda SpriteSlot_sprite_b0+2,x
|
||||
sta SpriteSlot_sprite_b0,x
|
||||
inx
|
||||
cpx #4-2
|
||||
bne SpriteShuffler__postframe__23__loop
|
||||
bne SpriteShuffler__postframe__56__loop
|
||||
; store two sprite slots at right side of array
|
||||
lda SpriteShuffler__8__tmp+0
|
||||
sta SpriteSlot_sprite_b0+4-2
|
||||
lda SpriteShuffler__8__tmp+1
|
||||
sta SpriteSlot_sprite_b0+4-1
|
||||
|
||||
;;; end action SpriteShuffler__postframe__23
|
||||
;;; end action SpriteShuffler__postframe__54
|
||||
|
||||
;;; start action SpriteHider__postframe__24
|
||||
;;; start action SpriteHider__postframe__57
|
||||
|
||||
lda #4-1
|
||||
sta SpriteHider__9__tmp+0
|
||||
|
||||
;;; end action SpriteHider__postframe__24
|
||||
;;; end action SpriteHider__postframe__57
|
||||
|
||||
;;; start action SpriteHider__postframe__25
|
||||
;;; start action SpriteHider__postframe__60
|
||||
|
||||
ldy #0
|
||||
SpriteHider__postframe__25____each:
|
||||
SpriteHider__postframe__61____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
lda HasYpos_ypos_b0,x
|
||||
cmp #192
|
||||
bcc SpriteHider__postframe__25__skip
|
||||
bcc SpriteHider__postframe__62__skip
|
||||
; swap this sprite slot with slot at end of array
|
||||
lda SpriteSlot_sprite_b0,y
|
||||
pha
|
||||
@ -488,20 +488,20 @@ SpriteHider__postframe__25____each:
|
||||
pla
|
||||
sta SpriteSlot_sprite_b0,x
|
||||
dec SpriteHider__9__tmp+0
|
||||
SpriteHider__postframe__25__skip:
|
||||
SpriteHider__postframe__62__skip:
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne SpriteHider__postframe__25____each
|
||||
SpriteHider__postframe__25____exit:
|
||||
jne SpriteHider__postframe__61____each
|
||||
SpriteHider__postframe__61____exit:
|
||||
|
||||
;;; end action SpriteHider__postframe__25
|
||||
;;; end action SpriteHider__postframe__60
|
||||
|
||||
FRAME_END
|
||||
|
||||
jmp FrameLoop__start__2__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__4__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__2
|
||||
;;; end action FrameLoop__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
|
@ -658,12 +658,12 @@ __BRK:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__2
|
||||
;;; start action FrameLoop__start__3
|
||||
|
||||
FrameLoop__start__2__NextFrame:
|
||||
FrameLoop__start__4__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__3
|
||||
;;; start action Kernel2Sprite__preframe__5
|
||||
|
||||
.define KLINES #192
|
||||
.define KPAD 32
|
||||
@ -678,17 +678,17 @@ FrameLoop__start__2__NextFrame:
|
||||
sta Kernel2Sprite__2__tmp+6
|
||||
sta Kernel2Sprite__2__tmp+7
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__3
|
||||
;;; end action Kernel2Sprite__preframe__5
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__4
|
||||
;;; start action Kernel2Sprite__preframe__8
|
||||
|
||||
ldy #0
|
||||
Kernel2Sprite__preframe__4____each:
|
||||
Kernel2Sprite__preframe__9____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
; flags set according to sprite slot value
|
||||
; skip sprite if negative
|
||||
jmi Kernel2Sprite__preframe__4__nosprite
|
||||
jmi Kernel2Sprite__preframe__10__nosprite
|
||||
; set player object flags
|
||||
lda Sprite_plyrflags_b0,x
|
||||
sta NUSIZ0,y
|
||||
@ -727,16 +727,16 @@ Kernel2Sprite__preframe__4____each:
|
||||
ldx Kernel2Sprite__2__tmp+12 ; restore X
|
||||
lda HasYpos_ypos_b0,x
|
||||
sta Kernel2Sprite__2__tmp+10,y
|
||||
Kernel2Sprite__preframe__4__nosprite:
|
||||
Kernel2Sprite__preframe__10__nosprite:
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne Kernel2Sprite__preframe__4____each
|
||||
Kernel2Sprite__preframe__4____exit:
|
||||
jne Kernel2Sprite__preframe__9____each
|
||||
Kernel2Sprite__preframe__9____exit:
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__4
|
||||
;;; end action Kernel2Sprite__preframe__8
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__5
|
||||
;;; start action Kernel2Sprite__preframe__11
|
||||
|
||||
; shuffle pointers into (MSB, LSB) byte order
|
||||
; L0 L1 H0 H1 -> L0 H0 L1 H1
|
||||
@ -749,34 +749,34 @@ Kernel2Sprite__preframe__4____exit:
|
||||
sty Kernel2Sprite__2__tmp+5
|
||||
sta Kernel2Sprite__2__tmp+6
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__5
|
||||
;;; end action Kernel2Sprite__preframe__11
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__6
|
||||
;;; start action Kernel2Sprite__preframe__13
|
||||
|
||||
lda #162
|
||||
sta COLUBK
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__6
|
||||
;;; end action Kernel2Sprite__preframe__13
|
||||
|
||||
;;; start action Kernel2Sprite__preframe__7
|
||||
;;; start action Kernel2Sprite__preframe__16
|
||||
|
||||
;;; end action Kernel2Sprite__preframe__7
|
||||
;;; end action Kernel2Sprite__preframe__16
|
||||
|
||||
;;; start action SetXPos__preframe__8
|
||||
;;; start action SetXPos__preframe__17
|
||||
|
||||
sta HMCLR
|
||||
|
||||
;;; end action SetXPos__preframe__8
|
||||
;;; end action SetXPos__preframe__17
|
||||
|
||||
;;; start action SetXPos__preframe__9
|
||||
;;; start action SetXPos__preframe__19
|
||||
|
||||
ldy #0
|
||||
SetXPos__preframe__9____each:
|
||||
SetXPos__preframe__20____each:
|
||||
ldx SpriteSlot_sprite_b0,y
|
||||
|
||||
lda HasXpos_xpos_b0,x
|
||||
|
||||
;;; start action SetHorizPos__SetHorizPos__10
|
||||
;;; start action SetHorizPos__SetHorizPos__22
|
||||
|
||||
; SetHorizPos routine
|
||||
; A = X coordinate
|
||||
@ -784,9 +784,9 @@ SetXPos__preframe__9____each:
|
||||
sta WSYNC ; start a new line
|
||||
sec ; set carry flag
|
||||
nop
|
||||
SetHorizPos__SetHorizPos__10__DivideLoop:
|
||||
SetHorizPos__SetHorizPos__23__DivideLoop:
|
||||
sbc #15 ; subtract 15
|
||||
bcs SetHorizPos__SetHorizPos__10__DivideLoop ; branch until negative
|
||||
bcs SetHorizPos__SetHorizPos__23__DivideLoop ; branch until negative
|
||||
eor #7 ; calculate fine offset
|
||||
asl
|
||||
asl
|
||||
@ -795,28 +795,28 @@ SetHorizPos__SetHorizPos__10__DivideLoop:
|
||||
sta RESP0,y ; fix coarse position
|
||||
sta HMP0,y ; set fine offset
|
||||
|
||||
;;; end action SetHorizPos__SetHorizPos__10
|
||||
;;; end action SetHorizPos__SetHorizPos__22
|
||||
|
||||
|
||||
iny
|
||||
cpy #2
|
||||
jne SetXPos__preframe__9____each
|
||||
SetXPos__preframe__9____exit:
|
||||
jne SetXPos__preframe__20____each
|
||||
SetXPos__preframe__20____exit:
|
||||
|
||||
;;; end action SetXPos__preframe__9
|
||||
;;; end action SetXPos__preframe__19
|
||||
|
||||
;;; start action SetXPos__preframe__11
|
||||
;;; start action SetXPos__preframe__24
|
||||
|
||||
;;; end action SetXPos__preframe__11
|
||||
;;; end action SetXPos__preframe__24
|
||||
|
||||
;;; start action SetXPos__preframe__12
|
||||
;;; start action SetXPos__preframe__25
|
||||
|
||||
sta WSYNC
|
||||
sta HMOVE
|
||||
|
||||
;;; end action SetXPos__preframe__12
|
||||
;;; end action SetXPos__preframe__25
|
||||
|
||||
;;; start action VersatilePlayfield__preframe__13
|
||||
;;; start action VersatilePlayfield__preframe__27
|
||||
|
||||
ldx Location_room_b0+0
|
||||
|
||||
@ -826,33 +826,33 @@ SetXPos__preframe__9____exit:
|
||||
sta VersatilePlayfield__10__tmp+1
|
||||
|
||||
|
||||
;;; end action VersatilePlayfield__preframe__13
|
||||
;;; end action VersatilePlayfield__preframe__27
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__14
|
||||
;;; start action Kernel2Sprite__kernel__30
|
||||
|
||||
ldy #0
|
||||
sty VDELP0
|
||||
iny
|
||||
sta VDELP1
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__14
|
||||
;;; end action Kernel2Sprite__kernel__30
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__15
|
||||
;;; start action Kernel2Sprite__kernel__33
|
||||
|
||||
ldy #192
|
||||
Kernel2Sprite__kernel__15__LVScan:
|
||||
Kernel2Sprite__kernel__35__LVScan:
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__16
|
||||
;;; start action Kernel2Sprite__scanline__36
|
||||
|
||||
; draw player 0
|
||||
lda Kernel2Sprite__2__tmp+8 ; height
|
||||
dcp Kernel2Sprite__2__tmp+10 ; ypos
|
||||
bcs Kernel2Sprite__scanline__16__DoDraw1
|
||||
bcs Kernel2Sprite__scanline__37__DoDraw1
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__16__DoDraw1:
|
||||
Kernel2Sprite__scanline__37__DoDraw1:
|
||||
lda (Kernel2Sprite__2__tmp+0),y
|
||||
.if 0 = 0
|
||||
sta WSYNC
|
||||
@ -863,50 +863,50 @@ Kernel2Sprite__scanline__16__DoDraw1:
|
||||
; draw player 1
|
||||
lda Kernel2Sprite__2__tmp+9 ; height
|
||||
dcp Kernel2Sprite__2__tmp+11 ; ypos
|
||||
bcs Kernel2Sprite__scanline__16__DoDraw2
|
||||
bcs Kernel2Sprite__scanline__37__DoDraw2
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__16__DoDraw2:
|
||||
Kernel2Sprite__scanline__37__DoDraw2:
|
||||
lda (Kernel2Sprite__2__tmp+2),y
|
||||
sta GRP1
|
||||
lda (Kernel2Sprite__2__tmp+6),y
|
||||
sta COLUP1
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__16
|
||||
;;; end action Kernel2Sprite__scanline__36
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__17
|
||||
;;; start action Kernel2Sprite__scanline__38
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__17
|
||||
;;; end action Kernel2Sprite__scanline__38
|
||||
|
||||
;;; start action VersatilePlayfield__scanline__18
|
||||
;;; start action VersatilePlayfield__scanline__39
|
||||
|
||||
.if 0 = 0
|
||||
lda (VersatilePlayfield__10__tmp+0),y
|
||||
tax
|
||||
.endif
|
||||
|
||||
;;; end action VersatilePlayfield__scanline__18
|
||||
;;; end action VersatilePlayfield__scanline__39
|
||||
|
||||
;;; start action VersatilePlayfield__scanline__19
|
||||
;;; start action VersatilePlayfield__scanline__41
|
||||
|
||||
.if 0 = 1
|
||||
lda (VersatilePlayfield__10__tmp+0),y
|
||||
sta $00,x
|
||||
.endif
|
||||
|
||||
;;; end action VersatilePlayfield__scanline__19
|
||||
;;; end action VersatilePlayfield__scanline__41
|
||||
|
||||
dey ; next scanline
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__20
|
||||
;;; start action Kernel2Sprite__scanline__43
|
||||
|
||||
; draw player 0
|
||||
lda Kernel2Sprite__2__tmp+8 ; height
|
||||
dcp Kernel2Sprite__2__tmp+10 ; ypos
|
||||
bcs Kernel2Sprite__scanline__20__DoDraw1
|
||||
bcs Kernel2Sprite__scanline__44__DoDraw1
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__20__DoDraw1:
|
||||
Kernel2Sprite__scanline__44__DoDraw1:
|
||||
lda (Kernel2Sprite__2__tmp+0),y
|
||||
.if 1 = 0
|
||||
sta WSYNC
|
||||
@ -917,45 +917,45 @@ Kernel2Sprite__scanline__20__DoDraw1:
|
||||
; draw player 1
|
||||
lda Kernel2Sprite__2__tmp+9 ; height
|
||||
dcp Kernel2Sprite__2__tmp+11 ; ypos
|
||||
bcs Kernel2Sprite__scanline__20__DoDraw2
|
||||
bcs Kernel2Sprite__scanline__44__DoDraw2
|
||||
lda #0
|
||||
.byte $2C
|
||||
Kernel2Sprite__scanline__20__DoDraw2:
|
||||
Kernel2Sprite__scanline__44__DoDraw2:
|
||||
lda (Kernel2Sprite__2__tmp+2),y
|
||||
sta GRP1
|
||||
lda (Kernel2Sprite__2__tmp+6),y
|
||||
sta COLUP1
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__20
|
||||
;;; end action Kernel2Sprite__scanline__43
|
||||
|
||||
;;; start action Kernel2Sprite__scanline__21
|
||||
;;; start action Kernel2Sprite__scanline__45
|
||||
|
||||
;;; end action Kernel2Sprite__scanline__21
|
||||
;;; end action Kernel2Sprite__scanline__45
|
||||
|
||||
;;; start action VersatilePlayfield__scanline__22
|
||||
;;; start action VersatilePlayfield__scanline__46
|
||||
|
||||
.if 1 = 0
|
||||
lda (VersatilePlayfield__10__tmp+0),y
|
||||
tax
|
||||
.endif
|
||||
|
||||
;;; end action VersatilePlayfield__scanline__22
|
||||
;;; end action VersatilePlayfield__scanline__46
|
||||
|
||||
;;; start action VersatilePlayfield__scanline__23
|
||||
;;; start action VersatilePlayfield__scanline__48
|
||||
|
||||
.if 1 = 1
|
||||
lda (VersatilePlayfield__10__tmp+0),y
|
||||
sta $00,x
|
||||
.endif
|
||||
|
||||
;;; end action VersatilePlayfield__scanline__23
|
||||
;;; end action VersatilePlayfield__scanline__48
|
||||
|
||||
dey ; next scanline
|
||||
bne Kernel2Sprite__kernel__15__LVScan ; repeat until out of lines
|
||||
bne Kernel2Sprite__kernel__35__LVScan ; repeat until out of lines
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__15
|
||||
;;; end action Kernel2Sprite__kernel__33
|
||||
|
||||
;;; start action Kernel2Sprite__kernel__24
|
||||
;;; start action Kernel2Sprite__kernel__50
|
||||
|
||||
lda #0
|
||||
sta GRP0
|
||||
@ -963,223 +963,223 @@ Kernel2Sprite__scanline__20__DoDraw2:
|
||||
sta GRP0
|
||||
sta GRP1
|
||||
|
||||
;;; end action Kernel2Sprite__kernel__24
|
||||
;;; end action Kernel2Sprite__kernel__50
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action Joystick__postframe__25
|
||||
;;; start action Joystick__postframe__52
|
||||
|
||||
; 2 control inputs share a single byte, 4 bits each
|
||||
lda SWCHA
|
||||
sta Joystick__3__tmp+0
|
||||
|
||||
;;; end action Joystick__postframe__25
|
||||
;;; end action Joystick__postframe__52
|
||||
|
||||
;;; start action Joystick__postframe__26
|
||||
;;; start action Joystick__postframe__54
|
||||
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__26__SkipMoveRight
|
||||
bcs Joystick__postframe__56__SkipMoveRight
|
||||
|
||||
;;; start action JoyFaceDirection__joyright__27
|
||||
;;; start action JoyFaceDirection__joyright__57
|
||||
|
||||
lda Sprite_plyrflags_b0
|
||||
and #$f7
|
||||
sta Sprite_plyrflags_b0
|
||||
|
||||
;;; end action JoyFaceDirection__joyright__27
|
||||
;;; end action JoyFaceDirection__joyright__57
|
||||
|
||||
;;; start action SuperFly__joyright__28
|
||||
;;; start action SuperFly__joyright__60
|
||||
|
||||
lda HasXpos_xpos_b0
|
||||
clc
|
||||
adc #2
|
||||
cmp #142
|
||||
jcc SuperFly__joyright__28__nomove
|
||||
jcc SuperFly__joyright__62__nomove
|
||||
|
||||
;;; start action SuperFly__goeast__29
|
||||
;;; start action SuperFly__goeast__63
|
||||
|
||||
ldy Location_room_b0
|
||||
lda Room_east_b0,y
|
||||
sta Location_room_b0
|
||||
|
||||
;;; end action SuperFly__goeast__29
|
||||
;;; end action SuperFly__goeast__63
|
||||
|
||||
lda #2
|
||||
SuperFly__joyright__28__nomove:
|
||||
SuperFly__joyright__62__nomove:
|
||||
sta HasXpos_xpos_b0
|
||||
|
||||
;;; end action SuperFly__joyright__28
|
||||
;;; end action SuperFly__joyright__60
|
||||
|
||||
Joystick__postframe__26__SkipMoveRight:
|
||||
Joystick__postframe__56__SkipMoveRight:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__26__SkipMoveLeft
|
||||
bcs Joystick__postframe__56__SkipMoveLeft
|
||||
|
||||
;;; start action JoyFaceDirection__joyleft__30
|
||||
;;; start action JoyFaceDirection__joyleft__66
|
||||
|
||||
lda Sprite_plyrflags_b0
|
||||
ora #$08
|
||||
sta Sprite_plyrflags_b0
|
||||
|
||||
;;; end action JoyFaceDirection__joyleft__30
|
||||
;;; end action JoyFaceDirection__joyleft__66
|
||||
|
||||
;;; start action SuperFly__joyleft__31
|
||||
;;; start action SuperFly__joyleft__69
|
||||
|
||||
lda HasXpos_xpos_b0
|
||||
sec
|
||||
sbc #2
|
||||
jcs SuperFly__joyleft__31__nomove
|
||||
jcs SuperFly__joyleft__71__nomove
|
||||
|
||||
;;; start action SuperFly__gowest__32
|
||||
;;; start action SuperFly__gowest__72
|
||||
|
||||
ldy Location_room_b0
|
||||
lda Room_west_b0,y
|
||||
sta Location_room_b0
|
||||
|
||||
;;; end action SuperFly__gowest__32
|
||||
;;; end action SuperFly__gowest__72
|
||||
|
||||
lda #142
|
||||
SuperFly__joyleft__31__nomove:
|
||||
SuperFly__joyleft__71__nomove:
|
||||
sta HasXpos_xpos_b0
|
||||
|
||||
;;; end action SuperFly__joyleft__31
|
||||
;;; end action SuperFly__joyleft__69
|
||||
|
||||
Joystick__postframe__26__SkipMoveLeft:
|
||||
Joystick__postframe__56__SkipMoveLeft:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__26__SkipMoveDown
|
||||
bcs Joystick__postframe__56__SkipMoveDown
|
||||
|
||||
;;; start action SuperFly__joydown__33
|
||||
;;; start action SuperFly__joydown__75
|
||||
|
||||
lda HasYpos_ypos_b0
|
||||
clc
|
||||
adc #2
|
||||
cmp #220
|
||||
jcc SuperFly__joydown__33__nomove
|
||||
jcc SuperFly__joydown__77__nomove
|
||||
|
||||
;;; start action SuperFly__gosouth__34
|
||||
;;; start action SuperFly__gosouth__78
|
||||
|
||||
ldy Location_room_b0
|
||||
lda Room_south_b0,y
|
||||
sta Location_room_b0
|
||||
|
||||
;;; end action SuperFly__gosouth__34
|
||||
;;; end action SuperFly__gosouth__78
|
||||
|
||||
lda #2
|
||||
SuperFly__joydown__33__nomove:
|
||||
SuperFly__joydown__77__nomove:
|
||||
sta HasYpos_ypos_b0
|
||||
|
||||
;;; end action SuperFly__joydown__33
|
||||
;;; end action SuperFly__joydown__75
|
||||
|
||||
Joystick__postframe__26__SkipMoveDown:
|
||||
Joystick__postframe__56__SkipMoveDown:
|
||||
asl Joystick__3__tmp+0
|
||||
bcs Joystick__postframe__26__SkipMoveUp
|
||||
bcs Joystick__postframe__56__SkipMoveUp
|
||||
|
||||
;;; start action SuperFly__joyup__35
|
||||
;;; start action SuperFly__joyup__81
|
||||
|
||||
lda HasYpos_ypos_b0
|
||||
sec
|
||||
sbc #2
|
||||
jcs SuperFly__joyup__35__nomove
|
||||
jcs SuperFly__joyup__83__nomove
|
||||
|
||||
;;; start action SuperFly__gonorth__36
|
||||
;;; start action SuperFly__gonorth__84
|
||||
|
||||
ldy Location_room_b0
|
||||
lda Room_north_b0,y
|
||||
sta Location_room_b0
|
||||
|
||||
;;; end action SuperFly__gonorth__36
|
||||
;;; end action SuperFly__gonorth__84
|
||||
|
||||
lda #200
|
||||
SuperFly__joyup__35__nomove:
|
||||
SuperFly__joyup__83__nomove:
|
||||
sta HasYpos_ypos_b0
|
||||
|
||||
;;; end action SuperFly__joyup__35
|
||||
;;; end action SuperFly__joyup__81
|
||||
|
||||
Joystick__postframe__26__SkipMoveUp:
|
||||
Joystick__postframe__56__SkipMoveUp:
|
||||
|
||||
;;; end action Joystick__postframe__26
|
||||
;;; end action Joystick__postframe__54
|
||||
|
||||
;;; start action BadMove__postframe__37
|
||||
;;; start action BadMove__postframe__87
|
||||
|
||||
ldx #0
|
||||
BadMove__postframe__37____each:
|
||||
BadMove__postframe__88____each:
|
||||
|
||||
|
||||
;;; start action JoyFaceDirection__joyright__38
|
||||
;;; start action JoyFaceDirection__joyright__90
|
||||
|
||||
lda Sprite_plyrflags_b0+1,x
|
||||
and #$f7
|
||||
sta Sprite_plyrflags_b0+1,x
|
||||
|
||||
;;; end action JoyFaceDirection__joyright__38
|
||||
;;; end action JoyFaceDirection__joyright__90
|
||||
|
||||
;;; start action SuperFly__joyright__39
|
||||
;;; start action SuperFly__joyright__93
|
||||
|
||||
lda HasXpos_xpos_b0+1,x
|
||||
clc
|
||||
adc #1
|
||||
cmp #142
|
||||
jcc SuperFly__joyright__39__nomove
|
||||
jcc SuperFly__joyright__95__nomove
|
||||
|
||||
;;; start action SuperFly__goeast__40
|
||||
;;; start action SuperFly__goeast__96
|
||||
|
||||
ldy Location_room_b0+1,x
|
||||
lda Room_east_b0,y
|
||||
sta Location_room_b0+1,x
|
||||
|
||||
;;; end action SuperFly__goeast__40
|
||||
;;; end action SuperFly__goeast__96
|
||||
|
||||
lda #2
|
||||
SuperFly__joyright__39__nomove:
|
||||
SuperFly__joyright__95__nomove:
|
||||
sta HasXpos_xpos_b0+1,x
|
||||
|
||||
;;; end action SuperFly__joyright__39
|
||||
;;; end action SuperFly__joyright__93
|
||||
|
||||
|
||||
inx
|
||||
cpx #3
|
||||
jne BadMove__postframe__37____each
|
||||
BadMove__postframe__37____exit:
|
||||
jne BadMove__postframe__88____each
|
||||
BadMove__postframe__88____exit:
|
||||
|
||||
;;; end action BadMove__postframe__37
|
||||
;;; end action BadMove__postframe__87
|
||||
|
||||
;;; start action RoomShuffle__postframe__41
|
||||
;;; start action RoomShuffle__postframe__99
|
||||
|
||||
ldy 4
|
||||
ldx SpriteSlot_sprite_b0+1
|
||||
bmi RoomShuffle__postframe__41__empty ; empty slot, load 1st entry
|
||||
RoomShuffle__postframe__41__loop:
|
||||
bmi RoomShuffle__postframe__101__empty ; empty slot, load 1st entry
|
||||
RoomShuffle__postframe__101__loop:
|
||||
inx
|
||||
cpx 4
|
||||
bcc RoomShuffle__postframe__41__norecycle
|
||||
bcc RoomShuffle__postframe__101__norecycle
|
||||
; TODO: need to get index of specific entity
|
||||
RoomShuffle__postframe__41__empty:
|
||||
RoomShuffle__postframe__101__empty:
|
||||
ldx #1 ; skip null sprite and super dude?
|
||||
RoomShuffle__postframe__41__norecycle:
|
||||
RoomShuffle__postframe__101__norecycle:
|
||||
lda Location_room_b0,x
|
||||
cmp Location_room_b0
|
||||
beq RoomShuffle__postframe__41__exit
|
||||
beq RoomShuffle__postframe__101__exit
|
||||
dey
|
||||
bne RoomShuffle__postframe__41__loop
|
||||
bne RoomShuffle__postframe__101__loop
|
||||
ldx #$ff
|
||||
RoomShuffle__postframe__41__exit:
|
||||
RoomShuffle__postframe__101__exit:
|
||||
stx SpriteSlot_sprite_b0+1
|
||||
|
||||
;;; end action RoomShuffle__postframe__41
|
||||
;;; end action RoomShuffle__postframe__99
|
||||
|
||||
;;; start action VersatilePlayfield__postframe__42
|
||||
;;; start action VersatilePlayfield__postframe__102
|
||||
|
||||
lda #0
|
||||
sta PF0
|
||||
sta PF1
|
||||
sta PF2
|
||||
|
||||
;;; end action VersatilePlayfield__postframe__42
|
||||
;;; end action VersatilePlayfield__postframe__102
|
||||
|
||||
FRAME_END
|
||||
|
||||
jmp FrameLoop__start__2__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__4__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__2
|
||||
;;; end action FrameLoop__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
|
@ -20,11 +20,11 @@ __Reset:
|
||||
__BRK:
|
||||
CLEAN_START
|
||||
|
||||
;;; start action Demo__start__2
|
||||
;;; start action Demo__start__3
|
||||
|
||||
jmp Title__Start
|
||||
|
||||
;;; end action Demo__start__2
|
||||
;;; end action Demo__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
@ -311,56 +311,56 @@ Bitmap48_height_b0:
|
||||
.byte 36
|
||||
__Start:
|
||||
|
||||
;;; start action FrameLoop__start__3
|
||||
;;; start action FrameLoop__start__5
|
||||
|
||||
FrameLoop__start__3__NextFrame:
|
||||
FrameLoop__start__6__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action StaticKernel__preframe__4
|
||||
;;; start action StaticKernel__preframe__7
|
||||
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__5
|
||||
;;; start action Kernel48Pixel__kernelsetup__10
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__5
|
||||
;;; end action Kernel48Pixel__kernelsetup__10
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__6
|
||||
;;; start action Kernel48Pixel__kernelsetup__11
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__6
|
||||
;;; end action Kernel48Pixel__kernelsetup__11
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__7
|
||||
;;; start action StaticKernel__kernelsetup__12
|
||||
|
||||
lda #160
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__7
|
||||
;;; end action StaticKernel__kernelsetup__12
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__8
|
||||
;;; start action StaticKernel__kernelsetup__15
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__8
|
||||
;;; end action StaticKernel__kernelsetup__15
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__9
|
||||
;;; start action StaticKernel__kernelsetup__16
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__9
|
||||
;;; end action StaticKernel__kernelsetup__16
|
||||
|
||||
|
||||
;;; end action StaticKernel__preframe__4
|
||||
;;; end action StaticKernel__preframe__7
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action StaticKernel__kernel__10
|
||||
;;; start action StaticKernel__kernel__17
|
||||
|
||||
ldx #0
|
||||
StaticKernel__kernel__10____each:
|
||||
StaticKernel__kernel__18____each:
|
||||
|
||||
sta WSYNC
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__11
|
||||
;;; start action Kernel48Pixel__kernelsetup__20
|
||||
|
||||
cpx #2+1
|
||||
jcs Kernel48Pixel__kernelsetup__11____skipxhi
|
||||
jcs Kernel48Pixel__kernelsetup__21____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc Kernel48Pixel__kernelsetup__11____skipxlo
|
||||
jcc Kernel48Pixel__kernelsetup__21____skipxlo
|
||||
|
||||
lda #36
|
||||
sta Kernel48Pixel__2__tmp+0 ; scanline counter
|
||||
@ -385,117 +385,117 @@ StaticKernel__kernel__10____each:
|
||||
SLEEPH 24-8 ; sleep 24 cycles
|
||||
sta HMCLR ; clear HMOVE registers
|
||||
|
||||
Kernel48Pixel__kernelsetup__11____skipxlo:
|
||||
Kernel48Pixel__kernelsetup__21____skipxlo:
|
||||
|
||||
Kernel48Pixel__kernelsetup__11____skipxhi:
|
||||
Kernel48Pixel__kernelsetup__21____skipxhi:
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__11
|
||||
;;; end action Kernel48Pixel__kernelsetup__20
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__12
|
||||
;;; start action Kernel48Pixel__kernelsetup__23
|
||||
|
||||
cpx #2+1
|
||||
jcs Kernel48Pixel__kernelsetup__12____skipxhi
|
||||
jcs Kernel48Pixel__kernelsetup__24____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc Kernel48Pixel__kernelsetup__12____skipxlo
|
||||
jcc Kernel48Pixel__kernelsetup__24____skipxlo
|
||||
|
||||
lda #252
|
||||
sta COLUP0
|
||||
sta COLUP1
|
||||
|
||||
Kernel48Pixel__kernelsetup__12____skipxlo:
|
||||
Kernel48Pixel__kernelsetup__24____skipxlo:
|
||||
|
||||
Kernel48Pixel__kernelsetup__12____skipxhi:
|
||||
Kernel48Pixel__kernelsetup__24____skipxhi:
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__12
|
||||
;;; end action Kernel48Pixel__kernelsetup__23
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__13
|
||||
;;; start action StaticKernel__kernelsetup__26
|
||||
|
||||
lda BGColor_bgcolor_b0,x
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__13
|
||||
;;; end action StaticKernel__kernelsetup__26
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__14
|
||||
;;; start action StaticKernel__kernelsetup__29
|
||||
|
||||
cpx #2+1
|
||||
jcs StaticKernel__kernelsetup__14____skipxhi
|
||||
jcs StaticKernel__kernelsetup__30____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc StaticKernel__kernelsetup__14____skipxlo
|
||||
jcc StaticKernel__kernelsetup__30____skipxlo
|
||||
|
||||
lda #252
|
||||
sta COLUPF
|
||||
|
||||
StaticKernel__kernelsetup__14____skipxlo:
|
||||
StaticKernel__kernelsetup__30____skipxlo:
|
||||
|
||||
StaticKernel__kernelsetup__14____skipxhi:
|
||||
StaticKernel__kernelsetup__30____skipxhi:
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__14
|
||||
;;; end action StaticKernel__kernelsetup__29
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__15
|
||||
;;; start action StaticKernel__kernelsetup__32
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__15
|
||||
;;; end action StaticKernel__kernelsetup__32
|
||||
|
||||
|
||||
jsr Kernel48Pixel__kerneldraw__16
|
||||
jsr Kernel48Pixel__kerneldraw__33
|
||||
|
||||
;;; start action StaticKernel__kerneldraw__17
|
||||
;;; start action StaticKernel__kerneldraw__36
|
||||
|
||||
ldy KernelSection_lines_b0,x
|
||||
StaticKernel__kerneldraw__17__loop:
|
||||
StaticKernel__kerneldraw__38__loop:
|
||||
sta WSYNC
|
||||
|
||||
dey
|
||||
bne StaticKernel__kerneldraw__17__loop
|
||||
bne StaticKernel__kerneldraw__38__loop
|
||||
|
||||
;;; end action StaticKernel__kerneldraw__17
|
||||
;;; end action StaticKernel__kerneldraw__36
|
||||
|
||||
|
||||
|
||||
inx
|
||||
cpx #5
|
||||
jne StaticKernel__kernel__10____each
|
||||
StaticKernel__kernel__10____exit:
|
||||
jne StaticKernel__kernel__18____each
|
||||
StaticKernel__kernel__18____exit:
|
||||
|
||||
;;; end action StaticKernel__kernel__10
|
||||
;;; end action StaticKernel__kernel__17
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action JoyButton__postframe__18
|
||||
;;; start action JoyButton__postframe__39
|
||||
|
||||
lda INPT4 ;read button input
|
||||
bmi JoyButton__postframe__18__NotPressed
|
||||
bmi JoyButton__postframe__41__NotPressed
|
||||
|
||||
;;; start action Advance__joybutton__19
|
||||
;;; start action Advance__joybutton__42
|
||||
|
||||
jmp Title2__Start
|
||||
|
||||
;;; end action Advance__joybutton__19
|
||||
;;; end action Advance__joybutton__42
|
||||
|
||||
JoyButton__postframe__18__NotPressed:
|
||||
JoyButton__postframe__41__NotPressed:
|
||||
|
||||
;;; end action JoyButton__postframe__18
|
||||
;;; end action JoyButton__postframe__39
|
||||
|
||||
FRAME_END
|
||||
|
||||
jmp FrameLoop__start__3__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__6__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__3
|
||||
;;; end action FrameLoop__start__5
|
||||
.rodata
|
||||
__ALIGNORIGIN:
|
||||
.rodata
|
||||
Kernel48Pixel__kerneldraw__16:
|
||||
Kernel48Pixel__kerneldraw__33:
|
||||
|
||||
cpx #2+1
|
||||
jcs Kernel48Pixel__kerneldraw__16____skipxhi
|
||||
jcs Kernel48Pixel__kerneldraw__34____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc Kernel48Pixel__kerneldraw__16____skipxlo
|
||||
jcc Kernel48Pixel__kerneldraw__34____skipxlo
|
||||
|
||||
txa
|
||||
pha
|
||||
Kernel48Pixel__kerneldraw__16__Loop:
|
||||
Kernel48Pixel__kerneldraw__35__Loop:
|
||||
ldy Kernel48Pixel__2__tmp+0 ; counts backwards
|
||||
sta WSYNC ; sync to next scanline
|
||||
lda Bitmap48_bitmap0_e3_b0,y ; load B0 (1st sprite byte)
|
||||
@ -514,19 +514,19 @@ Kernel48Pixel__kerneldraw__16__Loop:
|
||||
sty GRP1 ; B5 -> [GRP1]; B4 -> GRP0
|
||||
sta GRP0 ; ?? -> [GRP0]; B5 -> GRP1
|
||||
dec Kernel48Pixel__2__tmp+0 ; go to next line
|
||||
bpl Kernel48Pixel__kerneldraw__16__Loop ; repeat until < 0
|
||||
bpl Kernel48Pixel__kerneldraw__35__Loop ; repeat until < 0
|
||||
pla
|
||||
tax
|
||||
|
||||
Kernel48Pixel__kerneldraw__16____skipxlo:
|
||||
Kernel48Pixel__kerneldraw__34____skipxlo:
|
||||
|
||||
Kernel48Pixel__kerneldraw__16____skipxhi:
|
||||
Kernel48Pixel__kerneldraw__34____skipxhi:
|
||||
|
||||
rts
|
||||
|
||||
.assert >(Kernel48Pixel__kerneldraw__16) = >(*), error, "Kernel48Pixel__kerneldraw__16 crosses a page boundary!"
|
||||
.assert >(Kernel48Pixel__kerneldraw__33) = >(*), error, "Kernel48Pixel__kerneldraw__33 crosses a page boundary!"
|
||||
|
||||
.assert (* - Kernel48Pixel__kerneldraw__16) <= 63, error, .sprintf("Kernel48Pixel__kerneldraw__16 does not fit in 63 bytes, it took %d!", (* - Kernel48Pixel__kerneldraw__16))
|
||||
.assert (* - Kernel48Pixel__kerneldraw__33) <= 63, error, .sprintf("Kernel48Pixel__kerneldraw__33 does not fit in 63 bytes, it took %d!", (* - Kernel48Pixel__kerneldraw__33))
|
||||
.endscope
|
||||
Title__Start = Title::__Start
|
||||
.scope Title2
|
||||
@ -861,56 +861,56 @@ __Start:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__20
|
||||
;;; start action FrameLoop__start__44
|
||||
|
||||
FrameLoop__start__20__NextFrame:
|
||||
FrameLoop__start__45__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action StaticKernel__preframe__21
|
||||
;;; start action StaticKernel__preframe__46
|
||||
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__22
|
||||
;;; start action Kernel48Pixel__kernelsetup__49
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__22
|
||||
;;; end action Kernel48Pixel__kernelsetup__49
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__23
|
||||
;;; start action Kernel48Pixel__kernelsetup__50
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__23
|
||||
;;; end action Kernel48Pixel__kernelsetup__50
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__24
|
||||
;;; start action StaticKernel__kernelsetup__51
|
||||
|
||||
lda BGColor_bgcolor_b0
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__24
|
||||
;;; end action StaticKernel__kernelsetup__51
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__25
|
||||
;;; start action StaticKernel__kernelsetup__54
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__25
|
||||
;;; end action StaticKernel__kernelsetup__54
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__26
|
||||
;;; start action StaticKernel__kernelsetup__55
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__26
|
||||
;;; end action StaticKernel__kernelsetup__55
|
||||
|
||||
|
||||
;;; end action StaticKernel__preframe__21
|
||||
;;; end action StaticKernel__preframe__46
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action StaticKernel__kernel__27
|
||||
;;; start action StaticKernel__kernel__56
|
||||
|
||||
ldx #0
|
||||
StaticKernel__kernel__27____each:
|
||||
StaticKernel__kernel__57____each:
|
||||
|
||||
sta WSYNC
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__28
|
||||
;;; start action Kernel48Pixel__kernelsetup__59
|
||||
|
||||
cpx #2+1
|
||||
jcs Kernel48Pixel__kernelsetup__28____skipxhi
|
||||
jcs Kernel48Pixel__kernelsetup__60____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc Kernel48Pixel__kernelsetup__28____skipxlo
|
||||
jcc Kernel48Pixel__kernelsetup__60____skipxlo
|
||||
|
||||
lda #43
|
||||
sta Kernel48Pixel__2__tmp+0 ; scanline counter
|
||||
@ -935,84 +935,84 @@ StaticKernel__kernel__27____each:
|
||||
SLEEPH 24-8 ; sleep 24 cycles
|
||||
sta HMCLR ; clear HMOVE registers
|
||||
|
||||
Kernel48Pixel__kernelsetup__28____skipxlo:
|
||||
Kernel48Pixel__kernelsetup__60____skipxlo:
|
||||
|
||||
Kernel48Pixel__kernelsetup__28____skipxhi:
|
||||
Kernel48Pixel__kernelsetup__60____skipxhi:
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__28
|
||||
;;; end action Kernel48Pixel__kernelsetup__59
|
||||
|
||||
;;; start action Kernel48Pixel__kernelsetup__29
|
||||
;;; start action Kernel48Pixel__kernelsetup__62
|
||||
|
||||
cpx #2+1
|
||||
jcs Kernel48Pixel__kernelsetup__29____skipxhi
|
||||
jcs Kernel48Pixel__kernelsetup__63____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc Kernel48Pixel__kernelsetup__29____skipxlo
|
||||
jcc Kernel48Pixel__kernelsetup__63____skipxlo
|
||||
|
||||
lda PFColor_pfcolor_b0
|
||||
sta COLUP0
|
||||
sta COLUP1
|
||||
|
||||
Kernel48Pixel__kernelsetup__29____skipxlo:
|
||||
Kernel48Pixel__kernelsetup__63____skipxlo:
|
||||
|
||||
Kernel48Pixel__kernelsetup__29____skipxhi:
|
||||
Kernel48Pixel__kernelsetup__63____skipxhi:
|
||||
|
||||
;;; end action Kernel48Pixel__kernelsetup__29
|
||||
;;; end action Kernel48Pixel__kernelsetup__62
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__30
|
||||
;;; start action StaticKernel__kernelsetup__65
|
||||
|
||||
lda BGColor_bgcolor_b0,x
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__30
|
||||
;;; end action StaticKernel__kernelsetup__65
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__31
|
||||
;;; start action StaticKernel__kernelsetup__68
|
||||
|
||||
cpx #2+1
|
||||
jcs StaticKernel__kernelsetup__31____skipxhi
|
||||
jcs StaticKernel__kernelsetup__69____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc StaticKernel__kernelsetup__31____skipxlo
|
||||
jcc StaticKernel__kernelsetup__69____skipxlo
|
||||
|
||||
lda PFColor_pfcolor_b0
|
||||
sta COLUPF
|
||||
|
||||
StaticKernel__kernelsetup__31____skipxlo:
|
||||
StaticKernel__kernelsetup__69____skipxlo:
|
||||
|
||||
StaticKernel__kernelsetup__31____skipxhi:
|
||||
StaticKernel__kernelsetup__69____skipxhi:
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__31
|
||||
;;; end action StaticKernel__kernelsetup__68
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__32
|
||||
;;; start action StaticKernel__kernelsetup__71
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__32
|
||||
;;; end action StaticKernel__kernelsetup__71
|
||||
|
||||
|
||||
jsr Kernel48Pixel__kerneldraw__33
|
||||
jsr Kernel48Pixel__kerneldraw__72
|
||||
|
||||
;;; start action StaticKernel__kerneldraw__34
|
||||
;;; start action StaticKernel__kerneldraw__75
|
||||
|
||||
ldy KernelSection_lines_b0,x
|
||||
StaticKernel__kerneldraw__34__loop:
|
||||
StaticKernel__kerneldraw__77__loop:
|
||||
sta WSYNC
|
||||
|
||||
dey
|
||||
bne StaticKernel__kerneldraw__34__loop
|
||||
bne StaticKernel__kerneldraw__77__loop
|
||||
|
||||
;;; end action StaticKernel__kerneldraw__34
|
||||
;;; end action StaticKernel__kerneldraw__75
|
||||
|
||||
|
||||
|
||||
inx
|
||||
cpx #5
|
||||
jne StaticKernel__kernel__27____each
|
||||
StaticKernel__kernel__27____exit:
|
||||
jne StaticKernel__kernel__57____each
|
||||
StaticKernel__kernel__57____exit:
|
||||
|
||||
;;; end action StaticKernel__kernel__27
|
||||
;;; end action StaticKernel__kernel__56
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action Colors__postframe__35
|
||||
;;; start action Colors__postframe__78
|
||||
|
||||
inc PFColor_pfcolor_b0
|
||||
bne :+
|
||||
@ -1020,27 +1020,27 @@ StaticKernel__kernel__27____exit:
|
||||
inc BGColor_bgcolor_b0+2
|
||||
:
|
||||
|
||||
;;; end action Colors__postframe__35
|
||||
;;; end action Colors__postframe__78
|
||||
|
||||
FRAME_END
|
||||
|
||||
jmp FrameLoop__start__20__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__45__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__20
|
||||
;;; end action FrameLoop__start__44
|
||||
.rodata
|
||||
__ALIGNORIGIN:
|
||||
.rodata
|
||||
Kernel48Pixel__kerneldraw__33:
|
||||
Kernel48Pixel__kerneldraw__72:
|
||||
|
||||
cpx #2+1
|
||||
jcs Kernel48Pixel__kerneldraw__33____skipxhi
|
||||
jcs Kernel48Pixel__kerneldraw__73____skipxhi
|
||||
|
||||
cpx #2
|
||||
jcc Kernel48Pixel__kerneldraw__33____skipxlo
|
||||
jcc Kernel48Pixel__kerneldraw__73____skipxlo
|
||||
|
||||
txa
|
||||
pha
|
||||
Kernel48Pixel__kerneldraw__33__Loop:
|
||||
Kernel48Pixel__kerneldraw__74__Loop:
|
||||
ldy Kernel48Pixel__2__tmp+0 ; counts backwards
|
||||
sta WSYNC ; sync to next scanline
|
||||
lda Bitmap48_bitmap0_e2_b0,y ; load B0 (1st sprite byte)
|
||||
@ -1059,19 +1059,19 @@ Kernel48Pixel__kerneldraw__33__Loop:
|
||||
sty GRP1 ; B5 -> [GRP1]; B4 -> GRP0
|
||||
sta GRP0 ; ?? -> [GRP0]; B5 -> GRP1
|
||||
dec Kernel48Pixel__2__tmp+0 ; go to next line
|
||||
bpl Kernel48Pixel__kerneldraw__33__Loop ; repeat until < 0
|
||||
bpl Kernel48Pixel__kerneldraw__74__Loop ; repeat until < 0
|
||||
pla
|
||||
tax
|
||||
|
||||
Kernel48Pixel__kerneldraw__33____skipxlo:
|
||||
Kernel48Pixel__kerneldraw__73____skipxlo:
|
||||
|
||||
Kernel48Pixel__kerneldraw__33____skipxhi:
|
||||
Kernel48Pixel__kerneldraw__73____skipxhi:
|
||||
|
||||
rts
|
||||
|
||||
.assert >(Kernel48Pixel__kerneldraw__33) = >(*), error, "Kernel48Pixel__kerneldraw__33 crosses a page boundary!"
|
||||
.assert >(Kernel48Pixel__kerneldraw__72) = >(*), error, "Kernel48Pixel__kerneldraw__72 crosses a page boundary!"
|
||||
|
||||
.assert (* - Kernel48Pixel__kerneldraw__33) <= 63, error, .sprintf("Kernel48Pixel__kerneldraw__33 does not fit in 63 bytes, it took %d!", (* - Kernel48Pixel__kerneldraw__33))
|
||||
.assert (* - Kernel48Pixel__kerneldraw__72) <= 63, error, .sprintf("Kernel48Pixel__kerneldraw__72 does not fit in 63 bytes, it took %d!", (* - Kernel48Pixel__kerneldraw__72))
|
||||
.endscope
|
||||
Title2__Start = Title2::__Start
|
||||
.endscope
|
||||
|
@ -68,69 +68,69 @@ __BRK:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__2
|
||||
;;; start action FrameLoop__start__3
|
||||
|
||||
FrameLoop__start__2__NextFrame:
|
||||
FrameLoop__start__4__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action StaticKernel__preframe__3
|
||||
;;; start action StaticKernel__preframe__5
|
||||
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__4
|
||||
;;; start action StaticKernel__kernelsetup__8
|
||||
|
||||
lda #24
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__4
|
||||
;;; end action StaticKernel__kernelsetup__8
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__5
|
||||
;;; start action StaticKernel__kernelsetup__11
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__5
|
||||
;;; end action StaticKernel__kernelsetup__11
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__6
|
||||
;;; start action StaticKernel__kernelsetup__12
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__6
|
||||
;;; end action StaticKernel__kernelsetup__12
|
||||
|
||||
|
||||
;;; end action StaticKernel__preframe__3
|
||||
;;; end action StaticKernel__preframe__5
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action StaticKernel__kernel__7
|
||||
;;; start action StaticKernel__kernel__13
|
||||
|
||||
ldx #0
|
||||
StaticKernel__kernel__7____each:
|
||||
StaticKernel__kernel__14____each:
|
||||
|
||||
sta WSYNC
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__8
|
||||
;;; start action StaticKernel__kernelsetup__16
|
||||
|
||||
lda BGColor_bgcolor_b0,x
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__8
|
||||
;;; end action StaticKernel__kernelsetup__16
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__9
|
||||
;;; start action StaticKernel__kernelsetup__19
|
||||
|
||||
cpx #5+2
|
||||
jcs StaticKernel__kernelsetup__9____skipxhi
|
||||
jcs StaticKernel__kernelsetup__20____skipxhi
|
||||
|
||||
cpx #5
|
||||
jcc StaticKernel__kernelsetup__9____skipxlo
|
||||
jcc StaticKernel__kernelsetup__20____skipxlo
|
||||
|
||||
lda PFColor_pfcolor_b0-5,x
|
||||
sta COLUPF
|
||||
|
||||
StaticKernel__kernelsetup__9____skipxlo:
|
||||
StaticKernel__kernelsetup__20____skipxlo:
|
||||
|
||||
StaticKernel__kernelsetup__9____skipxhi:
|
||||
StaticKernel__kernelsetup__20____skipxhi:
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__9
|
||||
;;; end action StaticKernel__kernelsetup__19
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__10
|
||||
;;; start action StaticKernel__kernelsetup__22
|
||||
|
||||
cpx #4
|
||||
jcc StaticKernel__kernelsetup__10____skipxlo
|
||||
jcc StaticKernel__kernelsetup__23____skipxlo
|
||||
|
||||
lda Playfield_pf_b0-4,x
|
||||
sta PF0
|
||||
@ -139,63 +139,63 @@ StaticKernel__kernelsetup__9____skipxhi:
|
||||
lda Playfield_pf_b16-4,x
|
||||
sta PF2
|
||||
|
||||
StaticKernel__kernelsetup__10____skipxlo:
|
||||
StaticKernel__kernelsetup__23____skipxlo:
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__10
|
||||
;;; end action StaticKernel__kernelsetup__22
|
||||
|
||||
ldy KernelSection_lines_b0,x
|
||||
StaticKernel__kernel__7__loop:
|
||||
StaticKernel__kernel__15__loop:
|
||||
sta WSYNC
|
||||
|
||||
dey
|
||||
bne StaticKernel__kernel__7__loop
|
||||
bne StaticKernel__kernel__15__loop
|
||||
|
||||
|
||||
inx
|
||||
cpx #8
|
||||
jne StaticKernel__kernel__7____each
|
||||
StaticKernel__kernel__7____exit:
|
||||
jne StaticKernel__kernel__14____each
|
||||
StaticKernel__kernel__14____exit:
|
||||
|
||||
;;; end action StaticKernel__kernel__7
|
||||
;;; end action StaticKernel__kernel__13
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action JoyButton__postframe__11
|
||||
;;; start action JoyButton__postframe__25
|
||||
|
||||
lda INPT4 ;read button input
|
||||
bmi JoyButton__postframe__11__NotPressed
|
||||
bmi JoyButton__postframe__27__NotPressed
|
||||
|
||||
;;; start action Local__joybutton__12
|
||||
;;; start action Local__joybutton__28
|
||||
|
||||
inc Local__6__tmp+0
|
||||
inc PFColor_pfcolor_b0
|
||||
|
||||
;;; end action Local__joybutton__12
|
||||
;;; end action Local__joybutton__28
|
||||
|
||||
JoyButton__postframe__11__NotPressed:
|
||||
JoyButton__postframe__27__NotPressed:
|
||||
|
||||
;;; end action JoyButton__postframe__11
|
||||
;;; end action JoyButton__postframe__25
|
||||
|
||||
FRAME_END
|
||||
|
||||
;;; start action ResetSwitch__nextframe__13
|
||||
;;; start action ResetSwitch__nextframe__31
|
||||
|
||||
lsr SWCHB ; test Game Reset switch
|
||||
bcs ResetSwitch__nextframe__13__NoStart
|
||||
bcs ResetSwitch__nextframe__32__NoStart
|
||||
|
||||
;;; start action ResetConsole__resetswitch__14
|
||||
;;; start action ResetConsole__resetswitch__33
|
||||
|
||||
jmp Main::__Reset ; jump to Reset handler
|
||||
|
||||
;;; end action ResetConsole__resetswitch__14
|
||||
;;; end action ResetConsole__resetswitch__33
|
||||
|
||||
ResetSwitch__nextframe__13__NoStart:
|
||||
ResetSwitch__nextframe__32__NoStart:
|
||||
|
||||
;;; end action ResetSwitch__nextframe__13
|
||||
;;; end action ResetSwitch__nextframe__31
|
||||
|
||||
jmp FrameLoop__start__2__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__4__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__2
|
||||
;;; end action FrameLoop__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
|
@ -70,69 +70,69 @@ __BRK:
|
||||
dey
|
||||
bne :-
|
||||
|
||||
;;; start action FrameLoop__start__2
|
||||
;;; start action FrameLoop__start__3
|
||||
|
||||
FrameLoop__start__2__NextFrame:
|
||||
FrameLoop__start__4__NextFrame:
|
||||
FRAME_START
|
||||
|
||||
;;; start action StaticKernel__preframe__3
|
||||
;;; start action StaticKernel__preframe__5
|
||||
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__4
|
||||
;;; start action StaticKernel__kernelsetup__8
|
||||
|
||||
lda #24
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__4
|
||||
;;; end action StaticKernel__kernelsetup__8
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__5
|
||||
;;; start action StaticKernel__kernelsetup__11
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__5
|
||||
;;; end action StaticKernel__kernelsetup__11
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__6
|
||||
;;; start action StaticKernel__kernelsetup__12
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__6
|
||||
;;; end action StaticKernel__kernelsetup__12
|
||||
|
||||
|
||||
;;; end action StaticKernel__preframe__3
|
||||
;;; end action StaticKernel__preframe__5
|
||||
|
||||
KERNEL_START
|
||||
|
||||
;;; start action StaticKernel__kernel__7
|
||||
;;; start action StaticKernel__kernel__13
|
||||
|
||||
ldx #0
|
||||
StaticKernel__kernel__7____each:
|
||||
StaticKernel__kernel__14____each:
|
||||
|
||||
sta WSYNC
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__8
|
||||
;;; start action StaticKernel__kernelsetup__16
|
||||
|
||||
lda BGColor_bgcolor_b0,x
|
||||
sta COLUBK
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__8
|
||||
;;; end action StaticKernel__kernelsetup__16
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__9
|
||||
;;; start action StaticKernel__kernelsetup__19
|
||||
|
||||
cpx #5+2
|
||||
jcs StaticKernel__kernelsetup__9____skipxhi
|
||||
jcs StaticKernel__kernelsetup__20____skipxhi
|
||||
|
||||
cpx #5
|
||||
jcc StaticKernel__kernelsetup__9____skipxlo
|
||||
jcc StaticKernel__kernelsetup__20____skipxlo
|
||||
|
||||
lda PFColor_pfcolor_b0-5,x
|
||||
sta COLUPF
|
||||
|
||||
StaticKernel__kernelsetup__9____skipxlo:
|
||||
StaticKernel__kernelsetup__20____skipxlo:
|
||||
|
||||
StaticKernel__kernelsetup__9____skipxhi:
|
||||
StaticKernel__kernelsetup__20____skipxhi:
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__9
|
||||
;;; end action StaticKernel__kernelsetup__19
|
||||
|
||||
;;; start action StaticKernel__kernelsetup__10
|
||||
;;; start action StaticKernel__kernelsetup__22
|
||||
|
||||
cpx #4
|
||||
jcc StaticKernel__kernelsetup__10____skipxlo
|
||||
jcc StaticKernel__kernelsetup__23____skipxlo
|
||||
|
||||
lda Playfield_pf_b0-4,x
|
||||
sta PF0
|
||||
@ -141,69 +141,69 @@ StaticKernel__kernelsetup__9____skipxhi:
|
||||
lda Playfield_pf_b16-4,x
|
||||
sta PF2
|
||||
|
||||
StaticKernel__kernelsetup__10____skipxlo:
|
||||
StaticKernel__kernelsetup__23____skipxlo:
|
||||
|
||||
;;; end action StaticKernel__kernelsetup__10
|
||||
;;; end action StaticKernel__kernelsetup__22
|
||||
|
||||
|
||||
;;; start action StaticKernel__kerneldraw__11
|
||||
;;; start action StaticKernel__kerneldraw__25
|
||||
|
||||
ldy KernelSection_lines_b0,x
|
||||
StaticKernel__kerneldraw__11__loop:
|
||||
StaticKernel__kerneldraw__27__loop:
|
||||
sta WSYNC
|
||||
|
||||
dey
|
||||
bne StaticKernel__kerneldraw__11__loop
|
||||
bne StaticKernel__kerneldraw__27__loop
|
||||
|
||||
;;; end action StaticKernel__kerneldraw__11
|
||||
;;; end action StaticKernel__kerneldraw__25
|
||||
|
||||
|
||||
|
||||
inx
|
||||
cpx #8
|
||||
jne StaticKernel__kernel__7____each
|
||||
StaticKernel__kernel__7____exit:
|
||||
jne StaticKernel__kernel__14____each
|
||||
StaticKernel__kernel__14____exit:
|
||||
|
||||
;;; end action StaticKernel__kernel__7
|
||||
;;; end action StaticKernel__kernel__13
|
||||
|
||||
KERNEL_END
|
||||
|
||||
;;; start action JoyButton__postframe__12
|
||||
;;; start action JoyButton__postframe__28
|
||||
|
||||
lda INPT4 ;read button input
|
||||
bmi JoyButton__postframe__12__NotPressed
|
||||
bmi JoyButton__postframe__30__NotPressed
|
||||
|
||||
;;; start action Local__joybutton__13
|
||||
;;; start action Local__joybutton__31
|
||||
|
||||
inc Local__6__tmp+0
|
||||
inc PFColor_pfcolor_b0
|
||||
|
||||
;;; end action Local__joybutton__13
|
||||
;;; end action Local__joybutton__31
|
||||
|
||||
JoyButton__postframe__12__NotPressed:
|
||||
JoyButton__postframe__30__NotPressed:
|
||||
|
||||
;;; end action JoyButton__postframe__12
|
||||
;;; end action JoyButton__postframe__28
|
||||
|
||||
FRAME_END
|
||||
|
||||
;;; start action ResetSwitch__nextframe__14
|
||||
;;; start action ResetSwitch__nextframe__34
|
||||
|
||||
lsr SWCHB ; test Game Reset switch
|
||||
bcs ResetSwitch__nextframe__14__NoStart
|
||||
bcs ResetSwitch__nextframe__35__NoStart
|
||||
|
||||
;;; start action ResetConsole__resetswitch__15
|
||||
;;; start action ResetConsole__resetswitch__36
|
||||
|
||||
jmp Main::__Reset ; jump to Reset handler
|
||||
|
||||
;;; end action ResetConsole__resetswitch__15
|
||||
;;; end action ResetConsole__resetswitch__36
|
||||
|
||||
ResetSwitch__nextframe__14__NoStart:
|
||||
ResetSwitch__nextframe__35__NoStart:
|
||||
|
||||
;;; end action ResetSwitch__nextframe__14
|
||||
;;; end action ResetSwitch__nextframe__34
|
||||
|
||||
jmp FrameLoop__start__2__NextFrame ; loop to next frame
|
||||
jmp FrameLoop__start__4__NextFrame ; loop to next frame
|
||||
|
||||
;;; end action FrameLoop__start__2
|
||||
;;; end action FrameLoop__start__3
|
||||
; start main routine
|
||||
.segment "VECTORS"
|
||||
Return: .word $6060
|
||||
|
Loading…
Reference in New Issue
Block a user