diff --git a/artwork/dino1.fnt b/artwork/dino1.fnt new file mode 100644 index 0000000..6fa08d7 Binary files /dev/null and b/artwork/dino1.fnt differ diff --git a/artwork/dino2.fnt b/artwork/dino2.fnt new file mode 100644 index 0000000..db870d8 Binary files /dev/null and b/artwork/dino2.fnt differ diff --git a/artwork/dino3.fnt b/artwork/dino3.fnt new file mode 100644 index 0000000..c4ae0bf Binary files /dev/null and b/artwork/dino3.fnt differ diff --git a/artwork/dino4.fnt b/artwork/dino4.fnt new file mode 100644 index 0000000..9a597e6 Binary files /dev/null and b/artwork/dino4.fnt differ diff --git a/dino.asm b/dino.asm index df1f493..02f6015 100644 --- a/dino.asm +++ b/dino.asm @@ -25,10 +25,13 @@ ;--------------------------------------------------- ; 4 charsets for fine scroll font1 - ins 'artwork/dino.fnt' ; first charset + ins 'artwork/dino1.fnt' ; 1 charset font2 = font1+$400 + ins 'artwork/dino2.fnt' ; 2 charset font3 = font2+$400 + ins 'artwork/dino3.fnt' ; 3 charset font4 = font3+$400 + ins 'artwork/dino4.fnt' ; 4 charset org font4+$400 ; screen data ; 8 lines 256bytes each @@ -66,7 +69,7 @@ line8_addr ;--------------------------------------------------- FirstSTART - jsr GenerateCharsets + ;jsr GenerateCharsets jsr SetGameScreen ldx #5 ; position ldy #0 ; shape @@ -84,6 +87,20 @@ FirstSTART ldy #4 ; shape jsr ShowDino +EndLoop + wait ; or waitRTC ? + wait ; or waitRTC ? + mva #>font2 chbas + wait ; or waitRTC ? + wait ; or waitRTC ? + mva #>font3 chbas + wait ; or waitRTC ? + wait ; or waitRTC ? + mva #>font4 chbas + wait ; or waitRTC ? + wait ; or waitRTC ? + mva #>font1 chbas + jmp EndLoop halt rts diff --git a/dino.lab b/dino.lab index 45e76e6..d7820cc 100644 --- a/dino.lab +++ b/dino.lab @@ -589,19 +589,20 @@ FFFD 0000 @KBCODE 00 3818 LINE7_ADDR 00 381B LINE8_ADDR 00 3820 FIRSTSTART -00 3855 GENERATECHARSETS -00 3857 GENERATECHARSETS.COPYLOOP -00 388B SHOWDINO -00 3897 SHOWDINO.DINOLOOP -00 389E SHOWDINO.0@ -00 38B0 SHOWDINO.1@ -00 38C2 SHOWDINO.2@ -00 38D4 SHOWDINO.3@ -00 38E6 SETGAMESCREEN -00 38FB DINO_RUN_0 -00 390F DINO_RUN_1 -00 3923 DINO_RUN_2 -00 3937 DINO_CROUCH_1 -00 394B DINO_CROUCH_2 -00 395F SHAPESTABLEL -00 3964 SHAPESTABLEH +00 3846 ENDLOOP +00 3901 GENERATECHARSETS +00 3903 GENERATECHARSETS.COPYLOOP +00 3937 SHOWDINO +00 3943 SHOWDINO.DINOLOOP +00 394A SHOWDINO.0@ +00 395C SHOWDINO.1@ +00 396E SHOWDINO.2@ +00 3980 SHOWDINO.3@ +00 3992 SETGAMESCREEN +00 39A7 DINO_RUN_0 +00 39BB DINO_RUN_1 +00 39CF DINO_RUN_2 +00 39E3 DINO_CROUCH_1 +00 39F7 DINO_CROUCH_2 +00 3A0B SHAPESTABLEL +00 3A10 SHAPESTABLEH diff --git a/dino.lst b/dino.lst index f7e4696..0ed6fd3 100644 --- a/dino.lst +++ b/dino.lst @@ -947,198 +947,295 @@ Source: dino.asm 25 ;--------------------------------------------------- 26 ; 4 charsets for fine scroll 27 2000 font1 - 28 2000-23FF> 00 00 00 00 + ins 'artwork/dino.fnt' ; first charset + 28 2000-2FFF> 00 00 00 00 + ins 'artwork/dino1.fnt' ; 1 charset 29 = 2400 font2 = font1+$400 - 30 = 2800 font3 = font2+$400 - 31 = 2C00 font4 = font3+$400 - 32 org font4+$400 - 33 ; screen data - 34 ; 8 lines 256bytes each - 35 3000 screen - 36 org screen+($100*8) - 37 ; display list - 38 3800 GameDL - 39 3800-3968> 70 70 70 70 + .byte $70,$70,$70,$70,$70 ; empty lines - 40 3805 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 41 3806 line1_addr - 42 3806 00 30 .word screen - 43 3808 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 44 3809 line2_addr - 45 3809 00 31 .word screen+$100 - 46 380B 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 47 380C line3_addr - 48 380C 00 32 .word screen+$200 - 49 380E 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 50 380F line4_addr - 51 380F 00 33 .word screen+$300 - 52 3811 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 53 3812 line5_addr - 54 3812 00 34 .word screen+$400 - 55 3814 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 56 3815 line6_addr - 57 3815 00 35 .word screen+$500 - 58 3817 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 59 3818 line7_addr - 60 3818 00 36 .word screen+$600 - 61 381A 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL - 62 381B line8_addr - 63 381B 00 37 .word screen+$700 - 64 381D 41 .byte $41 ;JVB - 65 381E 00 38 .word GameDL - 66 - 67 ;--------------------------------------------------- - 68 3820 FirstSTART - 69 3820 20 55 38 jsr GenerateCharsets - 70 3823 20 E6 38 jsr SetGameScreen - 71 3826 A2 05 ldx #5 ; position - 72 3828 A0 00 ldy #0 ; shape - 73 382A 20 8B 38 jsr ShowDino - 74 382D A2 0A ldx #10 ; position - 75 382F A0 01 ldy #1 ; shape - 76 3831 20 8B 38 jsr ShowDino - 77 3834 A2 0F ldx #15 ; position - 78 3836 A0 02 ldy #2 ; shape - 79 3838 20 8B 38 jsr ShowDino - 80 383B A2 14 ldx #20 ; position - 81 383D A0 03 ldy #3 ; shape - 82 383F 20 8B 38 jsr ShowDino - 83 3842 A2 19 ldx #25 ; position - 84 3844 A0 04 ldy #4 ; shape - 85 3846 20 8B 38 jsr ShowDino - 86 - 87 3849 halt -Macro: HALT [Source: MACRO.ASM] - 1 3849 ?stop - 2 3849 AD 0A D2 lda RANDOM - 3 384C 29 05 and #$05 - 4 384E 8D 1A D0 sta COLBAK - 5 3851 4C 49 38 jmp ?stop + 30 2400 00 00 00 00 00 00 + ins 'artwork/dino2.fnt' ; 2 charset + 31 = 2800 font3 = font2+$400 + 32 2800 00 00 00 00 00 00 + ins 'artwork/dino3.fnt' ; 3 charset + 33 = 2C00 font4 = font3+$400 + 34 2C00 00 00 00 00 00 00 + ins 'artwork/dino4.fnt' ; 4 charset + 35 org font4+$400 + 36 ; screen data + 37 ; 8 lines 256bytes each + 38 3000 screen + 39 org screen+($100*8) + 40 ; display list + 41 3800 GameDL + 42 3800-3A14> 70 70 70 70 + .byte $70,$70,$70,$70,$70 ; empty lines + 43 3805 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 44 3806 line1_addr + 45 3806 00 30 .word screen + 46 3808 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 47 3809 line2_addr + 48 3809 00 31 .word screen+$100 + 49 380B 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 50 380C line3_addr + 51 380C 00 32 .word screen+$200 + 52 380E 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 53 380F line4_addr + 54 380F 00 33 .word screen+$300 + 55 3811 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 56 3812 line5_addr + 57 3812 00 34 .word screen+$400 + 58 3814 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 59 3815 line6_addr + 60 3815 00 35 .word screen+$500 + 61 3817 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 62 3818 line7_addr + 63 3818 00 36 .word screen+$600 + 64 381A 52 .byte $02+$40+$10 ; gr.0+LMS+HSCRL + 65 381B line8_addr + 66 381B 00 37 .word screen+$700 + 67 381D 41 .byte $41 ;JVB + 68 381E 00 38 .word GameDL + 69 + 70 ;--------------------------------------------------- + 71 3820 FirstSTART + 72 ;jsr GenerateCharsets + 73 3820 20 92 39 jsr SetGameScreen + 74 3823 A2 05 ldx #5 ; position + 75 3825 A0 00 ldy #0 ; shape + 76 3827 20 37 39 jsr ShowDino + 77 382A A2 0A ldx #10 ; position + 78 382C A0 01 ldy #1 ; shape + 79 382E 20 37 39 jsr ShowDino + 80 3831 A2 0F ldx #15 ; position + 81 3833 A0 02 ldy #2 ; shape + 82 3835 20 37 39 jsr ShowDino + 83 3838 A2 14 ldx #20 ; position + 84 383A A0 03 ldy #3 ; shape + 85 383C 20 37 39 jsr ShowDino + 86 383F A2 19 ldx #25 ; position + 87 3841 A0 04 ldy #4 ; shape + 88 3843 20 37 39 jsr ShowDino + 89 + 90 3846 EndLoop + 91 3846 wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 3846 AD 0B D4 ?ze LDA VCOUNT + 4 3849 C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 384B 90 F9 bcc ?ze + 6 384D E9 0A sbc #10 ; last lines correction + 7 384F CD 0B D4 ?wa cmp VCOUNT + 8 3852 90 FB bcc ?wa + 9 3854 CD 0B D4 ?wf cmp VCOUNT + 10 3857 B0 FB bcs ?wf Source: dino.asm - 88 3854 60 rts - 89 - 90 ;----------------------------------------------- - 91 ; Generation of character sets 2,3 and 4 of 1 - 92 ; By copying and horizontal shift dino - 93 ;----------------------------------------------- - 94 3855 .proc GenerateCharsets - 95 ; copy charset 1 to 2,3 and 4 - 96 3855 A0 00 ldy #0 - 97 3857 CopyLoop - 98 3857 B9 00 20 lda font1,y - 99 385A 99 00 24 sta font2,y - 100 385D 99 00 28 sta font3,y - 101 3860 99 00 2C sta font4,y - 102 3863 B9 00 21 lda font1+$100,y - 103 3866 99 00 25 sta font2+$100,y - 104 3869 99 00 29 sta font3+$100,y - 105 386C 99 00 2D sta font4+$100,y - 106 386F B9 00 22 lda font1+$200,y - 107 3872 99 00 26 sta font2+$200,y - 108 3875 99 00 2A sta font3+$200,y - 109 3878 99 00 2E sta font4+$200,y - 110 387B B9 00 23 lda font1+$300,y - 111 387E 99 00 27 sta font2+$300,y - 112 3881 99 00 2B sta font3+$300,y - 113 3884 99 00 2F sta font4+$300,y - 114 3887 C8 iny - 115 3888 D0 CD bne CopyLoop - 116 ; and shifting dino shape - 117 - 118 388A 60 rts - 119 .endp - 120 - 121 ;----------------------------------------------- - 122 ; Show Dino on screen (test) - 123 ; X - y position - 124 ; Y - shape nr - 125 ;----------------------------------------------- - 126 388B .proc ShowDino - 127 388B B9 5F 39 lda ShapesTableL,y - 128 388E 85 80 sta temp_w - 129 3890 B9 64 39 lda ShapesTableH,y - 130 3893 85 81 sta temp_w+1 - 131 3895 A0 00 ldy #0 - 132 3897 DinoLoop - 133 3897 B1 80 lda (temp_w),y - 134 3899 30 03 bmi @+ - 135 389B 9D 00 34 sta screen+$400,x - 136 389E 18 A5 80 69 05 85 + @ adw temp_w #5 - 137 38A9 B1 80 lda (temp_w),y - 138 38AB 30 03 bmi @+ - 139 38AD 9D 00 35 sta screen+$500,x - 140 38B0 18 A5 80 69 05 85 + @ adw temp_w #5 - 141 38BB B1 80 lda (temp_w),y - 142 38BD 30 03 bmi @+ - 143 38BF 9D 00 36 sta screen+$600,x - 144 38C2 18 A5 80 69 05 85 + @ adw temp_w #5 - 145 38CD B1 80 lda (temp_w),y - 146 38CF 30 03 bmi @+ - 147 38D1 9D 00 37 sta screen+$700,x - 148 38D4 38 A5 80 E9 0F 85 + @ sbw temp_w #15 - 149 38DF E8 inx - 150 38E0 C8 iny - 151 38E1 C0 05 cpy #5 ; dino width - 152 38E3 D0 B2 bne DinoLoop - 153 38E5 60 rts - 154 .endp - 155 ;----------------------------------------------- - 156 ; Generation of character sets 2,3 and 4 of 1 - 157 ; By copying and horizontal shift dino - 158 ;----------------------------------------------- - 159 38E6 .proc SetGameScreen - 160 38E6 A9 00 8D 30 02 A9 + mwa #GameDL dlptrs - 161 38F0 A9 3E lda #%00111110 ; normal screen width, DL on, P/M on - 162 38F2 8D 2F 02 sta dmactls - 163 38F5 A9 20 8D F4 02 mva #>font1 chbas - 164 38FA 60 rts - 165 .endp - 166 ;-------------------------------------------------- - 167 38FB icl 'artwork/shapes.asm' + 92 3859 wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 3859 AD 0B D4 ?ze LDA VCOUNT + 4 385C C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 385E 90 F9 bcc ?ze + 6 3860 E9 0A sbc #10 ; last lines correction + 7 3862 CD 0B D4 ?wa cmp VCOUNT + 8 3865 90 FB bcc ?wa + 9 3867 CD 0B D4 ?wf cmp VCOUNT + 10 386A B0 FB bcs ?wf +Source: dino.asm + 93 386C A9 24 8D F4 02 mva #>font2 chbas + 94 3871 wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 3871 AD 0B D4 ?ze LDA VCOUNT + 4 3874 C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 3876 90 F9 bcc ?ze + 6 3878 E9 0A sbc #10 ; last lines correction + 7 387A CD 0B D4 ?wa cmp VCOUNT + 8 387D 90 FB bcc ?wa + 9 387F CD 0B D4 ?wf cmp VCOUNT + 10 3882 B0 FB bcs ?wf +Source: dino.asm + 95 3884 wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 3884 AD 0B D4 ?ze LDA VCOUNT + 4 3887 C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 3889 90 F9 bcc ?ze + 6 388B E9 0A sbc #10 ; last lines correction + 7 388D CD 0B D4 ?wa cmp VCOUNT + 8 3890 90 FB bcc ?wa + 9 3892 CD 0B D4 ?wf cmp VCOUNT + 10 3895 B0 FB bcs ?wf +Source: dino.asm + 96 3897 A9 28 8D F4 02 mva #>font3 chbas + 97 389C wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 389C AD 0B D4 ?ze LDA VCOUNT + 4 389F C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 38A1 90 F9 bcc ?ze + 6 38A3 E9 0A sbc #10 ; last lines correction + 7 38A5 CD 0B D4 ?wa cmp VCOUNT + 8 38A8 90 FB bcc ?wa + 9 38AA CD 0B D4 ?wf cmp VCOUNT + 10 38AD B0 FB bcs ?wf +Source: dino.asm + 98 38AF wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 38AF AD 0B D4 ?ze LDA VCOUNT + 4 38B2 C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 38B4 90 F9 bcc ?ze + 6 38B6 E9 0A sbc #10 ; last lines correction + 7 38B8 CD 0B D4 ?wa cmp VCOUNT + 8 38BB 90 FB bcc ?wa + 9 38BD CD 0B D4 ?wf cmp VCOUNT + 10 38C0 B0 FB bcs ?wf +Source: dino.asm + 99 38C2 A9 2C 8D F4 02 mva #>font4 chbas + 100 38C7 wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 38C7 AD 0B D4 ?ze LDA VCOUNT + 4 38CA C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 38CC 90 F9 bcc ?ze + 6 38CE E9 0A sbc #10 ; last lines correction + 7 38D0 CD 0B D4 ?wa cmp VCOUNT + 8 38D3 90 FB bcc ?wa + 9 38D5 CD 0B D4 ?wf cmp VCOUNT + 10 38D8 B0 FB bcs ?wf +Source: dino.asm + 101 38DA wait ; or waitRTC ? +Macro: WAIT [Source: MACRO.ASM] + 3 38DA AD 0B D4 ?ze LDA VCOUNT + 4 38DD C9 10 cmp #16 ; if line<16 then wait for line>15 (long VBI protection) + 5 38DF 90 F9 bcc ?ze + 6 38E1 E9 0A sbc #10 ; last lines correction + 7 38E3 CD 0B D4 ?wa cmp VCOUNT + 8 38E6 90 FB bcc ?wa + 9 38E8 CD 0B D4 ?wf cmp VCOUNT + 10 38EB B0 FB bcs ?wf +Source: dino.asm + 102 38ED A9 20 8D F4 02 mva #>font1 chbas + 103 38F2 4C 46 38 jmp EndLoop + 104 38F5 halt +Macro: HALT [Source: MACRO.ASM] + 1 38F5 ?stop + 2 38F5 AD 0A D2 lda RANDOM + 3 38F8 29 05 and #$05 + 4 38FA 8D 1A D0 sta COLBAK + 5 38FD 4C F5 38 jmp ?stop +Source: dino.asm + 105 3900 60 rts + 106 + 107 ;----------------------------------------------- + 108 ; Generation of character sets 2,3 and 4 of 1 + 109 ; By copying and horizontal shift dino + 110 ;----------------------------------------------- + 111 3901 .proc GenerateCharsets + 112 ; copy charset 1 to 2,3 and 4 + 113 3901 A0 00 ldy #0 + 114 3903 CopyLoop + 115 3903 B9 00 20 lda font1,y + 116 3906 99 00 24 sta font2,y + 117 3909 99 00 28 sta font3,y + 118 390C 99 00 2C sta font4,y + 119 390F B9 00 21 lda font1+$100,y + 120 3912 99 00 25 sta font2+$100,y + 121 3915 99 00 29 sta font3+$100,y + 122 3918 99 00 2D sta font4+$100,y + 123 391B B9 00 22 lda font1+$200,y + 124 391E 99 00 26 sta font2+$200,y + 125 3921 99 00 2A sta font3+$200,y + 126 3924 99 00 2E sta font4+$200,y + 127 3927 B9 00 23 lda font1+$300,y + 128 392A 99 00 27 sta font2+$300,y + 129 392D 99 00 2B sta font3+$300,y + 130 3930 99 00 2F sta font4+$300,y + 131 3933 C8 iny + 132 3934 D0 CD bne CopyLoop + 133 ; and shifting dino shape + 134 + 135 3936 60 rts + 136 .endp + 137 + 138 ;----------------------------------------------- + 139 ; Show Dino on screen (test) + 140 ; X - y position + 141 ; Y - shape nr + 142 ;----------------------------------------------- + 143 3937 .proc ShowDino + 144 3937 B9 0B 3A lda ShapesTableL,y + 145 393A 85 80 sta temp_w + 146 393C B9 10 3A lda ShapesTableH,y + 147 393F 85 81 sta temp_w+1 + 148 3941 A0 00 ldy #0 + 149 3943 DinoLoop + 150 3943 B1 80 lda (temp_w),y + 151 3945 30 03 bmi @+ + 152 3947 9D 00 34 sta screen+$400,x + 153 394A 18 A5 80 69 05 85 + @ adw temp_w #5 + 154 3955 B1 80 lda (temp_w),y + 155 3957 30 03 bmi @+ + 156 3959 9D 00 35 sta screen+$500,x + 157 395C 18 A5 80 69 05 85 + @ adw temp_w #5 + 158 3967 B1 80 lda (temp_w),y + 159 3969 30 03 bmi @+ + 160 396B 9D 00 36 sta screen+$600,x + 161 396E 18 A5 80 69 05 85 + @ adw temp_w #5 + 162 3979 B1 80 lda (temp_w),y + 163 397B 30 03 bmi @+ + 164 397D 9D 00 37 sta screen+$700,x + 165 3980 38 A5 80 E9 0F 85 + @ sbw temp_w #15 + 166 398B E8 inx + 167 398C C8 iny + 168 398D C0 05 cpy #5 ; dino width + 169 398F D0 B2 bne DinoLoop + 170 3991 60 rts + 171 .endp + 172 ;----------------------------------------------- + 173 ; Generation of character sets 2,3 and 4 of 1 + 174 ; By copying and horizontal shift dino + 175 ;----------------------------------------------- + 176 3992 .proc SetGameScreen + 177 3992 A9 00 8D 30 02 A9 + mwa #GameDL dlptrs + 178 399C A9 3E lda #%00111110 ; normal screen width, DL on, P/M on + 179 399E 8D 2F 02 sta dmactls + 180 39A1 A9 20 8D F4 02 mva #>font1 chbas + 181 39A6 60 rts + 182 .endp + 183 ;-------------------------------------------------- + 184 39A7 icl 'artwork/shapes.asm' Source: shapes.asm 1 ; @com.wudsn.ide.asm.mainsourcefile=scorch.asm 2 3 .IF *>0 ;this is a trick that prevents compiling this file alone 4 5 ; dno run - 6 38FB dino_run_0 ; anly '0' jumps - 7 38FB FF 23 27 2B FF .by $ff, $23, $27, $2b, $ff ; '. ' - 8 3900 20 24 28 2C FF .by $20, $24, $28, $2c, $ff ; ' ## ' - 9 3905 21 25 29 FF FF .by $21, $25, $29, $ff, $ff ; '## .' - 10 390A 22 26 2A FF FF .by $22, $26, $2a, $ff, $ff ; '## .' - 11 390F dino_run_1 - 12 390F FF 23 27 2B FF .by $ff, $23, $27, $2b, $ff ; '. ' - 13 3914 20 24 28 2C FF .by $20, $24, $28, $2c, $ff ; ' ## ' - 14 3919 21 25 29 FF FF .by $21, $25, $29, $ff, $ff ; '## .' - 15 391E 2D 2E 2F FF FF .by $2d, $2e, $2f, $ff, $ff ; '## .' - 16 3923 dino_run_2 - 17 3923 FF 23 27 2B FF .by $ff, $23, $27, $2b, $ff ; '. ' - 18 3928 20 24 28 2C FF .by $20, $24, $28, $2c, $ff ; ' ## ' - 19 392D 21 25 29 FF FF .by $21, $25, $29, $ff, $ff ; '## .' - 20 3932 30 31 32 FF FF .by $30, $31, $32, $ff, $ff ; '## .' - 21 3937 dino_crouch_1 - 22 3937 FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff - 23 393C FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff - 24 3941 33 34 35 36 37 .by $33, $34, $35, $36, $37 ; '#### ' - 25 3946 38 39 3A 3B 3C .by $38, $39, $3a, $3b, $3c ; '#### ' - 26 394B dino_crouch_2 - 27 394B FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff - 28 3950 FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff - 29 3955 33 34 35 36 37 .by $33, $34, $35, $36, $37 ; '#### ' - 30 395A 3D 3E 3F 3B 3C .by $3d, $3e, $3f, $3b, $3c ; '#### ' - 31 395F ShapesTableL - 32 395F FB .by dino_run_0 - 39 3965 39 .by >dino_run_1 - 40 3966 39 .by >dino_run_2 - 41 3967 39 .by >dino_crouch_1 - 42 3968 39 .by >dino_crouch_2 + 6 39A7 dino_run_0 ; anly '0' jumps + 7 39A7 FF 23 27 2B FF .by $ff, $23, $27, $2b, $ff ; '. ' + 8 39AC 20 24 28 2C FF .by $20, $24, $28, $2c, $ff ; ' ## ' + 9 39B1 21 25 29 FF FF .by $21, $25, $29, $ff, $ff ; '## .' + 10 39B6 22 26 2A FF FF .by $22, $26, $2a, $ff, $ff ; '## .' + 11 39BB dino_run_1 + 12 39BB FF 23 27 2B FF .by $ff, $23, $27, $2b, $ff ; '. ' + 13 39C0 20 24 28 2C FF .by $20, $24, $28, $2c, $ff ; ' ## ' + 14 39C5 21 25 29 FF FF .by $21, $25, $29, $ff, $ff ; '## .' + 15 39CA 2D 2E 2F FF FF .by $2d, $2e, $2f, $ff, $ff ; '## .' + 16 39CF dino_run_2 + 17 39CF FF 23 27 2B FF .by $ff, $23, $27, $2b, $ff ; '. ' + 18 39D4 20 24 28 2C FF .by $20, $24, $28, $2c, $ff ; ' ## ' + 19 39D9 21 25 29 FF FF .by $21, $25, $29, $ff, $ff ; '## .' + 20 39DE 30 31 32 FF FF .by $30, $31, $32, $ff, $ff ; '## .' + 21 39E3 dino_crouch_1 + 22 39E3 FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff + 23 39E8 FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff + 24 39ED 33 34 35 36 37 .by $33, $34, $35, $36, $37 ; '#### ' + 25 39F2 38 39 3A 3B 3C .by $38, $39, $3a, $3b, $3c ; '#### ' + 26 39F7 dino_crouch_2 + 27 39F7 FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff + 28 39FC FF FF FF FF FF .by $ff, $ff, $ff, $ff, $ff + 29 3A01 33 34 35 36 37 .by $33, $34, $35, $36, $37 ; '#### ' + 30 3A06 3D 3E 3F 3B 3C .by $3d, $3e, $3f, $3b, $3c ; '#### ' + 31 3A0B ShapesTableL + 32 3A0B A7 .by dino_run_0 + 39 3A11 39 .by >dino_run_1 + 40 3A12 39 .by >dino_run_2 + 41 3A13 39 .by >dino_crouch_1 + 42 3A14 39 .by >dino_crouch_2 43 44 .endif ; .IF *>0 - 168 ;-------------------------------------------------- - 169 - 170 02E0-02E1> 20 38 run FirstSTART + 185 ;-------------------------------------------------- + 186 + 187 02E0-02E1> 20 38 run FirstSTART diff --git a/dino.xex b/dino.xex index aab280e..3bedfe5 100644 Binary files a/dino.xex and b/dino.xex differ