From 8a3cc576877b1af5d7d142de27785df37370826e Mon Sep 17 00:00:00 2001 From: Pecusx Date: Fri, 28 Jul 2023 10:08:38 +0200 Subject: [PATCH] Return of first Splash --- artwork/splash_v1/Scorch50.fnt | Bin 0 -> 9216 bytes artwork/splash_v1/Scorch50.scr | Bin 0 -> 1200 bytes artwork/splash_v1/splash.asm | 748 +++++++++++++++++++++++++++++++++ artwork/splash_v2/splash.asm | 2 +- scorch.asm | 1 + scorch.xex | Bin 56649 -> 56645 bytes 6 files changed, 750 insertions(+), 1 deletion(-) create mode 100644 artwork/splash_v1/Scorch50.fnt create mode 100644 artwork/splash_v1/Scorch50.scr create mode 100644 artwork/splash_v1/splash.asm diff --git a/artwork/splash_v1/Scorch50.fnt b/artwork/splash_v1/Scorch50.fnt new file mode 100644 index 0000000000000000000000000000000000000000..e4fced42e789ac9a438caee1dd7ddc56e8a639d4 GIT binary patch literal 9216 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 a{QRqLe)>!gj0z+Eh5mxTUl9011pWstHv;Vd literal 0 HcmV?d00001 diff --git a/artwork/splash_v1/Scorch50.scr b/artwork/splash_v1/Scorch50.scr new file mode 100644 index 0000000000000000000000000000000000000000..b1b3d7f69359c24dfa8604d3c97ae9f797c9705e GIT binary patch literal 1200 zcmbtU=~og_6n`zR=@mBxLLhCT(hA6=XmMewKuasN&{kUvTG)Ik0@`-`GKWw83-h=3 zmRT5t6X$rp%=VkP_x_eaM~)slj!!5j$*I#WI5RNl_IS_whWvrxx#5xX>V?q7OP5E- zu3Wtqjzq7I-4C9OL=!dS$3mEZR0dRQAUJ literal 0 HcmV?d00001 diff --git a/artwork/splash_v1/splash.asm b/artwork/splash_v1/splash.asm new file mode 100644 index 0000000..8cd18f8 --- /dev/null +++ b/artwork/splash_v1/splash.asm @@ -0,0 +1,748 @@ +/***************************************/ +/* Use MADS http://mads.atari8.info/ */ +/* Mode: DLI (char mode) */ +/***************************************/ + + ;icl "Scorch50.h" + ;icl "../lib/ATARISYS.ASM" + ;icl "../lib/macro.hea" + +; --- dmsc LZSS player routine on zero page + org $80 + +chn_copy .ds 9 +chn_pos .ds 9 +bptr .ds 2 +cur_pos .ds 1 +chn_bits .ds 1 + +bit_data .ds 1 + + org $00 + +fcnt .ds 2 +fadr .ds 2 +fhlp .ds 2 +cloc .ds 1 +regA .ds 1 +regX .ds 1 +regY .ds 1 + +WIDTH = 40 +HEIGHT = 30 + +; --- BASIC switch OFF + org $2000\ mva #$ff portb\ rts\ ini $2000 + +; --- MAIN PROGRAM + org $2000 +ant dta $C2,a(scr) + dta $02,$82,$02,$02,$82,$02,$82,$02,$82,$02,$02,$02,$82,$02,$82,$82 + dta $02,$02,$82,$02,$02,$82,$02,$02,$82,$82,$02,$82,$22 + ;dta $42,a(verline) + dta $41,a(ant) + +;verline +; :37 dta d" " +; dta build + +scr ins "Scorch50.scr" + + .ds 0*40 + + .ALIGN $0400 +fnt ins "Scorch50.fnt" + + ift USESPRITES + .ALIGN $0800 +pmg .ds $0300 + ift FADECHR = 0 + SPRITES + els + .ds $500 + eif + eif + +main + + jsr init_song + +; ; copy system font to $a000 +; ldx #0 +;@ lda $e000,x +; sta $a000,x +; ;lda $e100,x ; i need digits only :] +; ;sta $a100,x +; ;lda $e200,x +; ;sta $a200,x +; ;lda $e300,x +; ;sta $a300,x +; inx +; bne @- + +; --- init PMG + + ift USESPRITES + mva >pmg pmbase ;missiles and players data address + mva #$03 GRACTL ;enable players and missiles + eif + + lda:cmp:req $14 ;wait 1 frame + + sei ;stop IRQ interrupts + mva #$00 nmien ;stop NMI interrupts + sta dmactl + ;mva #$fe portb ;switch off ROM to get 16k more ram + + ;mwa #NMI $fffa ;new NMI handler + + sta COLOR4 + lda #$0E + sta COLOR1 + lda #$84 + sta COLOR2 + lda #$0E + sta COLOR3 + lda #$02 + + + + VMAIN NMI.vbl,6 ;jsr SetVBL + VDLI DLI.dli_start + + + mva #1 vscrol + + mva #$c0 nmien ;switch on NMI+DLI again + +_lp lda trig0 ; FIRE #0 + beq stop + + lda trig1 ; FIRE #1 + beq stop + + lda consol ; START + and #1 + beq stop + + lda skctl + and #$04 + bne _lp ;wait to press any key; here you can put any own routine + + +stop + + cli + vmain sysvbv,6 + + mva #$00 GRACTL ;PMG disabled + tax + sta:rne hposp0,x+ + + ;mva #$ff portb ;ROM switch on + mva #$40 nmien ;only NMI interrupts, DLI disabled + ;cli ;IRQ enabled + + lda #0 + ldx #8 +@ sta POKEY,x + dex + bpl @- + + + ;no glitching please (issue #67) + lda #0 + sta $D400 ;dmactl + sta $022F ;dmactls + rts ;return to ... DOS + +; --- DLI PROGRAM + +.local DLI + + ?old_dli = * + +dli_start + +dli13 + sta regA + + sta wsync ;line=8 + sta wsync ;line=9 + sta wsync ;line=10 + sta wsync ;line=11 + sta wsync ;line=12 + sta wsync ;line=13 +c9 lda #$14 + sta wsync ;line=14 + sta colpm3 + DLINEW DLI.dli2 1 0 0 + +dli2 + sta regA + lda >fnt+$400*$01 + sta wsync ;line=24 + sta chbase + DLINEW dli3 1 0 0 + +dli3 + sta regA + lda >fnt+$400*$02 + sta wsync ;line=48 + sta chbase + sta wsync ;line=49 + sta wsync ;line=50 + sta wsync ;line=51 +s3 lda #$07 + sta wsync ;line=52 + sta sizem + DLINEW dli14 1 0 0 + +dli14 + sta regA + stx regX + sty regY + +x8 lda #$A3 + sta wsync ;line=64 + sta hposp3 +x9 lda #$AB + sta wsync ;line=65 + sta hposm3 + sta wsync ;line=66 + sta wsync ;line=67 + sta wsync ;line=68 + sta wsync ;line=69 + sta wsync ;line=70 +s4 lda #$13 +x10 ldx #$A6 + sta wsync ;line=71 + sta sizem + stx hposm2 +s5 lda #$01 +x11 ldx #$72 +x12 ldy #$62 + sta wsync ;line=72 + sta sizep2 + sta sizep3 + stx hposp2 + sty hposp3 +x13 lda #$A9 + sta wsync ;line=73 + sta hposp1 + DLINEW dli4 1 1 1 + +dli4 + sta regA + lda >fnt+$400*$03 + sta wsync ;line=80 + sta chbase + DLINEW dli5 1 0 0 + +dli5 + sta regA + stx regX + lda >fnt+$400*$04 + sta wsync ;line=112 + sta chbase + sta wsync ;line=113 + sta wsync ;line=114 + sta wsync ;line=115 + sta wsync ;line=116 + sta wsync ;line=117 + sta wsync ;line=118 +s6 lda #$07 +x14 ldx #$A3 + sta wsync ;line=119 + sta sizem + stx hposm1 +s7 lda #$01 +x15 ldx #$93 + sta wsync ;line=120 + sta sizep1 + stx hposp1 + DLINEW dli15 1 1 0 + +dli15 + sta regA + stx regX + + sta wsync ;line=128 + sta wsync ;line=129 + sta wsync ;line=130 + sta wsync ;line=131 +x16 lda #$4A + sta wsync ;line=132 + sta hposp1 +c10 lda #$D4 + sta wsync ;line=133 + sta colpf2 +s8 lda #$C3 +x17 ldx #$5A + sta wsync ;line=134 + sta sizem + stx hposm3 + DLINEW dli6 1 1 0 + +dli6 + sta regA + stx regX + sty regY + lda >fnt+$400*$05 + sta wsync ;line=136 + sta chbase + sta wsync ;line=137 + sta wsync ;line=138 + sta wsync ;line=139 + sta wsync ;line=140 + sta wsync ;line=141 + sta wsync ;line=142 +s9 lda #$C7 +x18 ldx #$A9 + sta wsync ;line=143 + sta sizem + stx hposm1 +s10 lda #$D7 +x19 ldx #$9E +c11 ldy #$02 + sta wsync ;line=144 + sta sizem + stx hposm2 + sty colpm2 + sta wsync ;line=145 +c12 lda #$04 + sta wsync ;line=146 + sta colpm1 + sta wsync ;line=147 + sta wsync ;line=148 + sta wsync ;line=149 +s11 lda #$00 +x20 ldx #$74 +c13 ldy #$02 + sta wsync ;line=150 + sta sizep3 + stx hposp3 + sty colpm3 + sta wsync ;line=151 + sta wsync ;line=152 + sta wsync ;line=153 + sta wsync ;line=154 + sta wsync ;line=155 + sta wsync ;line=156 + sta wsync ;line=157 +c14 lda #$04 + sta wsync ;line=158 + sta colpf0 + DLINEW dli7 1 1 1 + +dli7 + sta regA + lda >fnt+$400*$06 + sta wsync ;line=160 + sta chbase + DLINEW dli8 1 0 0 + +dli8 + sta regA + stx regX + sty regY + lda >fnt+$400*$07 + sta wsync ;line=184 + sta chbase + sta wsync ;line=185 +s12 lda #$00 +x21 ldx #$8E +c15 ldy #$08 + sta wsync ;line=186 + sta sizep2 + stx hposp2 + sty colpm2 +x22 lda #$4C +c16 ldx #$0E + sta wsync ;line=187 + sta hposp3 + stx colpm3 +c17 lda #$0A +c18 ldx #$34 + sta wsync ;line=188 + sta colpf1 + stx colpm3 +s13 lda #$43 +x23 ldx #$49 + sta wsync ;line=189 + sta sizem + stx hposm3 +c19 lda #$08 +c20 ldx #$34 + sta wsync ;line=190 + sta colpf1 + stx colpm2 + sta wsync ;line=191 +c21 lda #$0A + sta wsync ;line=192 + sta colpf1 +c22 lda #$08 + sta wsync ;line=193 + sta colpf1 +c23 lda #$0A + sta wsync ;line=194 + sta colpf1 +c24 lda #$34 + sta wsync ;line=195 + sta colpf2 +c25 lda #$0C + sta wsync ;line=196 + sta colpf1 +c26 lda #$0A + sta wsync ;line=197 + sta colpf1 +c27 lda #$0C + sta wsync ;line=198 + sta colpf1 + sta wsync ;line=199 + sta wsync ;line=200 +c28 lda #$0E + sta wsync ;line=201 + sta colpf1 +c29 lda #$0C + sta wsync ;line=202 + sta colpf1 +c30 lda #$0E + sta wsync ;line=203 + sta colpf1 +c31 lda #$0C + sta wsync ;line=204 + sta colpf1 +c32 lda #$0E + sta wsync ;line=205 + sta colpf1 + DLINEW dli16 1 1 1 + +dli16 + sta regA + + sta wsync ;line=208 + sta wsync ;line=209 +c33 lda #$0C + sta wsync ;line=210 + sta colpf1 +c34 lda #$0E + sta wsync ;line=211 + sta colpf1 +c35 lda #$0C + sta wsync ;line=212 + sta colpf1 + DLINEW dli9 1 0 0 + +dli9 + sta regA + stx regX + sty regY + lda >fnt+$400*$08 +c36 ldx #$0A + sta wsync ;line=216 + sta chbase + stx colpf1 +c37 lda #$0C + sta wsync ;line=217 + sta colpf1 +c38 lda #$0A +x24 ldx #$9D +c39 ldy #$34 + sta wsync ;line=218 + sta colpf1 + stx hposm1 + sty colpm1 +s14 lda #$03 +x25 ldx #$7D + sta wsync ;line=219 + sta sizep3 + stx hposp3 +c40 lda #$08 +s15 ldx #$13 +x26 ldy #$45 + sta wsync ;line=220 + sta colpf1 + stx sizem + sty hposm2 +s16 lda #$03 +x27 ldx #$59 + sta wsync ;line=221 + sta sizep2 + stx hposp2 +s17 lda #$53 +x28 ldx #$49 +x29 ldy #$79 + sta wsync ;line=222 + sta sizem + stx hposp1 + sty hposm3 +c41 lda #$06 +c42 ldx #$00 + sta wsync ;line=223 + sta colpf1 + stx colpf2 + lda >fnt+$400*$01 +s18 ldx #$50 +x30 ldy #$44 + sta wsync ;line=224 + sta chbase + stx sizem + sty hposm0 + sta wsync ;line=225 +c43 lda #$08 + sta wsync ;line=226 + sta colpf1 +c44 lda #$0C + sta wsync ;line=227 + sta colpf1 + sta wsync ;line=228 + sta wsync ;line=229 +c45 lda #$0E + sta wsync ;line=230 + sta colpf1 + DLINEW dli10 1 1 1 + +dli10 + sta regA + lda >fnt+$400*$00 + sta wsync ;line=232 + sta chbase + ;DLINEW dli11 1 0 0 + + lda regA + rti + +;dli11 +; sta regA +; +; lda #>$a000 ; system font +; sta wsync ;line=232 +; sta chbase +; lda #$01 +; sta gtictl +; +; lda regA +; rti + + +.endl + +; --- + +CHANGES = 1 +FADECHR = 0 + +SCHR = 127 + +dliv = $0200 + +; --- + +.proc NMI + + bit nmist + bpl VBL + + jmp DLI.dli_start + + +VBL + sta regA + stx regX + sty regY + + ;sta nmist ;reset NMI flag + + mwa #ant dlptr ;ANTIC address program + + mva #@dmactl(standard|dma|lineX1|players|missiles) dmactl ;set new screen width + + inc cloc ;little timer + +; Initial values + + lda >fnt+$400*$00 + sta chbase +c0 lda #$00 + sta colbak +c1 lda #$0E + sta colpf1 +c2 lda #$84 + sta colpf2 +c3 lda #$0E + sta colpf3 + lda #$02 + sta CHACTL + lda #$01 + sta PRIOR + sta sizep0 +s0 lda #$03 + sta sizem +x0 lda #$D0 + sta hposp0 +x1 lda #$28 + sta hposm0 +c4 lda #$00 + sta colpm0 +x2 lda #$A2 + sta hposm3 +c5 lda #$0E + sta colpm3 +s1 lda #$00 + sta sizep2 + sta sizep3 +x3 lda #$92 + sta hposp2 +x4 lda #$8A + sta hposp3 +c6 lda #$14 + sta colpm2 +s2 lda #$00 + sta sizep1 +x5 lda #$9A + sta hposp1 +c7 lda #$14 + sta colpm1 +x6 lda #$A4 + sta hposm2 +x7 lda #$A6 + sta hposm1 +c8 lda #$00 + sta colpf0 + + mwa #DLI.dli_start dliv ;set the first address of DLI interrupt + +;this area is for yours routines + jsr play_frame + +quit + lda regA + ldx regX + ldy regY + jmp sysvbv + +.endp + + icl "..\splash_v2\lzss_player.asm" ; player (and data) for splash music + + +; --- + ini main +; --- + + opt l- + +.MACRO SPRITES +missiles + .he 00 00 00 00 00 00 00 00 03 03 C3 03 03 03 03 03 + .he 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 + .he 03 03 03 03 03 03 03 03 03 83 83 83 C3 C3 C3 C3 + .he C3 C3 C3 C3 C3 E3 E3 E3 E3 E3 E3 F3 F3 F3 F3 FB + .he FB FB FB FB FF FF FF FF F3 33 83 83 83 83 C3 D3 + .he D3 D3 13 03 03 03 03 03 03 03 03 03 03 03 03 03 + .he 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 + .he 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 0F + .he 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 03 03 03 03 C3 C3 + .he C3 C3 C3 C3 C3 C3 C3 C3 C3 D3 FF FF 3F 3F 3F 3F + .he 3F 3F 33 13 03 03 03 03 03 03 03 03 03 03 03 03 + .he 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 + .he 03 03 03 03 03 03 03 43 43 C3 C3 C3 C3 03 03 03 + .he 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 + .he 03 03 0F 0F 3F 3F FF FC FE FE FF DB 03 03 03 03 + .he 03 03 03 03 03 03 03 03 00 00 00 00 00 00 00 00 +player0 + .he 00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 +player1 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 F0 FC FE FE FF FF FF FF + .he FF 0F 0F 0F 0F 0F 0F 0F 0F 0F 07 07 07 07 07 07 + .he 03 03 03 FF FF FF FF FF CF CF FF FF FF FF FF 9F + .he 9F FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 + .he 00 F0 F0 F0 F0 78 F8 78 78 78 78 38 78 38 3C 3C + .he 3C 3C 1C 3C 1C 1C 1C 1C 1E 1E 1E 1E 0E 1E 0E 0E + .he 0E 0F 07 0F 07 0F 07 07 07 07 07 07 06 06 06 06 + .he FF FF FF FF FF FF FF FF FF FF FF 00 00 3E 3F 7F + .he 7F 7F 7F 7F 7F 7F 7F 3F 3F 3F 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 FF FF FF FF FF FF 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +player2 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 FF FF FF FF FF FF FF FF + .he FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 FF FF FF FF FF 99 99 FF FF FF FF FF 33 + .he 33 FF FF FF FF FF FF FF 00 00 00 00 00 00 00 00 + .he 00 00 80 F0 F8 F8 F8 FC FC FC FC FC FC FC FC FC + .he FC FE FE FE FE FE FE FF FF FF FF FF FF FF FE FC + .he F8 F8 F8 F8 F0 F0 F0 F0 F0 F0 F0 F0 E0 E0 E0 E0 + .he E0 E0 E0 FC FE FE FF FF 8F 87 87 87 07 07 07 07 + .he 07 07 07 07 07 07 07 03 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 F8 FC FC FE FE FF FF 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 FF FF FF FF FF FF 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +player3 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 01 07 0F 1F 1F 3F 3F 7F + .he 7F 78 78 F0 F0 F0 F0 F8 F8 F8 78 7C 7C 7C 3C 3E + .he 3E 3E 1E 1F 1F 1F 0F 0F 0F 0F 0F 1F 1F 1F 1F 1F + .he 1F 3F 3F 3F 3F 3F 3F 3F FF 7F 7F 3F 3F 1F 1F 0F + .he 1F 1F 1F 3F 3F 3F 3F 3F 3F 3B 30 30 30 30 30 30 + .he 30 30 30 30 38 3E 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F + .he 7F 7F 7F 7F 7F 7F 7F FF FF FF FF FF FF FF FF FF + .he FF FF FF FF FF FF FF FF 7F 7F 7F 7F 7F 7F FF FF + .he FF FF FF FF FE FE FE FE FE FE FE FE FC 1C FF 7E + .he 7E FE FE FE FE FF FF FF 7F 7E 7E 3C 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 00 00 7C FE FE FF FF FF 00 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + .he 00 00 00 FF FF FF FF FF FF FF FF FF 00 00 00 00 + .he 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +.ENDM + +USESPRITES = 1 + +.MACRO DLINEW + mva <:1 dliv + ift [>?old_dli]<>[>:1] + mva >:1 dliv+1 + eif + + ift :2 + lda regA + eif + + ift :3 + ldx regX + eif + + ift :4 + ldy regY + eif + + rti + + .def ?old_dli = * +.ENDM + diff --git a/artwork/splash_v2/splash.asm b/artwork/splash_v2/splash.asm index 99a1c7c..47d4e14 100644 --- a/artwork/splash_v2/splash.asm +++ b/artwork/splash_v2/splash.asm @@ -67,7 +67,6 @@ FontSplash mother ; dta d" The Mother of All Games " dta d" Father Unknown of All Games " - icl "lzss_player.asm" ; player (and data) for splash music main mva #00 ManualLangFlag ; no manual page @@ -260,6 +259,7 @@ _rts rts byt3 brk + icl "lzss_player.asm" ; player (and data) for splash music ;--- diff --git a/scorch.asm b/scorch.asm index 262c429..b3d55a4 100644 --- a/scorch.asm +++ b/scorch.asm @@ -160,6 +160,7 @@ FirstZpageVariable = $54 icl 'Atari/lib/ATARISYS.ASM' icl 'Atari/lib/MACRO.ASM' icl 'artwork/splash_v2/splash.asm' ; splash screen and musix +; icl 'artwork/splash_v1/splash.asm' ; splash screen and musix ; icl 'Atari/Manual/manual.asm' ; manuals display .ELIF TARGET = 5200 OPT h-f+ ; no headers, single block --> cart bin file diff --git a/scorch.xex b/scorch.xex index a57a4239a1ae060760f6803f8b26149e9fe5d2ef..711df389490e55d20ce12568012b77e767078198 100644 GIT binary patch delta 252 zcmVp&}Tw*C7xH2&n*#00tm0kdr7l90JRDlSVj|3W#~l ziFrt9Aa{AQ@jStd| zAJVA-g_fcSpa3ARkevY1oe4cJmlwhS4#T4-Tq6odakev|H z$`JRdhlP`^ig|^Vq6kKnuq?HJ&=y9P&;}r{kZOgNAg_?H50!}^uaK31)`0ejw285j zq?DZi(w)1Ik&@<<${P^N=9FNqi+S#_kkA9}v5;Wm0^RjStd|AJVA-g_fcS zpa39EYn=enoe1?P|&p>4cJmlwhS4#T4-Tq6ocNYn>3%$`JRdVTF^e zC{%@&q6kKnuq?HJ&=y9P&;}q)Yifm-AWdtq50!}^O>32a)`0ejw285jq?DZi(w$jr zk&@<<${i5P=9FNqDOB!GYtRGkPitUeYr~MK0F3|!AkAu%?XYD|c0<_hKt?!%Dk?!%BE!jSI6kYE7f0^