From 57248e86759025bfcf088341e8c8c93aad8f0fe4 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Sun, 25 Aug 2024 12:18:11 +0200 Subject: [PATCH] PAL/NTSC version --- dino.asm | 33 +++++++++++++++++++++++++-------- dino.xex | Bin 8774 -> 8775 bytes intro/tech_diff.asm | 19 +++++++++++++++++++ intro/tech_diff.xex | Bin 29239 -> 29275 bytes tdc.xex | Bin 37764 -> 38050 bytes 5 files changed, 44 insertions(+), 8 deletions(-) diff --git a/dino.asm b/dino.asm index 504c958..5407814 100644 --- a/dino.asm +++ b/dino.asm @@ -1,5 +1,5 @@ SCR_HEIGHT = 8 -WORLD_LENGTH = 64 +WORLD_LENGTH = 48 DIFF_LEVELS = 20 .IFNDEF ALONE .def ALONE = 1 ; standalone version @@ -25,6 +25,7 @@ swap_table=$0600 ; table for swap bytes in left characters :) .zpvar Hit .byte .zpvar Level .byte .zpvar play_flag .byte + .zpvar NTSCounter .byte ;--------------------------------------------------- icl 'lib/ATARISYS.ASM' icl 'lib/MACRO.ASM' @@ -72,12 +73,12 @@ status_line_addr :4 .byte SKIP8 .byte MODE2 - .byte SKIP8,SKIP8 ; empty lines + .byte SKIP8,SKIP8,SKIP8 ; empty lines - .rept SCR_HEIGHT, # + .rept SCR_HEIGHT-1, # .byte MODE2+LMS+SCH ; gr.0+LMS+HSCRL line:1_addr - .word screen+$100*# + .word screen+$100*(#+1) .endr .byte JVB .word GameDL @@ -400,18 +401,19 @@ SwapLoop bpl @- rts .endp +;----------------------------------------------- .proc ClearScreen ldy #44 ; visible screen len lda #0 ClearLoop - sta screen+$0700,y + ;sta screen+$0700,y sta screen+$0600,y sta screen+$0500,y sta screen+$0400,y sta screen+$0300,y sta screen+$0200,y sta screen+$0100,y - sta screen+$0000,y + ;sta screen+$0000,y dey bne ClearLoop rts @@ -1324,6 +1326,7 @@ pressed .proc PrepareMusicPlayer jsr StopMusic VMAIN VBLinterrupt,7 ; jsr SetVBL + mva #0 NTSCounter rts .endp .proc PlayInGameMusic @@ -1348,9 +1351,23 @@ pressed .endp .proc VBLinterrupt lda play_flag - beq @+ + beq NoMusic + ; music - PAL/NTSC check + lda PAL + and #%00001110 + beq IsPAL + ; NTSC ... + inc NTSCounter + lda NTSCounter + cmp #5 + bne PlayMusic + mva #0 NTSCounter + beq NoMusic +PlayMusic +IsPAL jsr PLAYER -@ pla +NoMusic + pla tay pla tax diff --git a/dino.xex b/dino.xex index 009f35457c52f68e48ab5c1f489e8129027495c1..eed003225d06f2cf6016798e9b0978f9052393ec 100644 GIT binary patch delta 1240 zcmYk3e`p(J7{@QUEKOq5W|FmbO!iLkN4FJ%LwvF{miAtB!+^qcYTJzywOu>g4NZSQ z#gw+!){eu#i+>zaIU*T*DWnw*H``O?nGbS8x`5@0zANxc8p- zeLmms^WO8^!r$ZM_JKUUTzXoLffYH~OM;H=1X3fY_athMppOLP77#?yoo4iHguW_o zI?*>R=o0~53ZutQq8R}_E1+Bpy5Ec%cByyvC_Ri`e1LkhC3ZM0GAFbZO-~pvBhpM` zj7|sVgT?5Wj4L8~aOGyVyBD0a6+T&g9D0Yb%{uDtAO*@8U)%jS0 ziF+EUb&rzRA}#S7dq;_9s=FowTiP!m*Ys$=f?V69{l?;6ZHdLbj7f2f zny&83O$P2+7y}r_V20J&SPjFt40lT5Vq}6}_vNs>hUIlE=gE-kcp^kOWf>*||BC8y z7IM7`*Q0RnDcnVc>sGj~Nh2?^zNfhHk?YG4a$Q40bamwF$V$k#yPKd#rBN&CzIJsK zeIC6vS^}7oG_v9=z)IY{88ZH{i)EI;*suA1tZy=WPf@?J1m0l=d{w|S1lxD;4D&Lc z&#?;kEXq-QMk|mr`|1<^uyL;z zg$Cq7Fb6;zu(l`Ib^y!*)(TiZVDQ-jHv2*Aw{o>C*AHeNXnoe!!?t~3#zA$Zxa%Ep zP|{#^T2w=sWtgc?6n(nqYxmS?huy<`dhE1A8cR#M%kZSf^@?KE>bS~ha#-OEHb;?i z(zqlQ3v@{K0tMLzB0W|PGqYG4&U{DSa=+#-g>&v!_jA^1lpLz)tl7Z2vl!QTgO4>e zu_AozN|VZw{hkvf;5|&{yp?3D;_qF>UC+BaiuY|rWwWg~+pM~F6|-~R21nx42)oyq zB*_IVP0&EfH64fPG%N(RRGtk$$zgVPR2LPs4p@vsvfg-7>x9KVNIqd4(k{SaKO~PB z4{KepH~`5<4Ug6hi-VA?6SX+V9ab;pPOHK41#1Lymo*o;yVO(=mD!!9YOQ7awz7SD z+5TMF{`>>>t+sueZQpL&pR?`H@7TA3a)aD{Xx0%UA66c0m>1NAlt3#``(Nyzr$jU_ zuDd*(5SCsgPclF>H7?~B_qp~XWjRGbx#)x oB;xO{7KE4HK6A0{gDYfc^s_I%Bscv>`3<}|yWxL5=nRDa2bYW_DF6Tf delta 1196 zcmYk3ZD?Cn7{_m3nl@Q$Vpmt4&Yg{^WUS&8<;jw)X>x>Bq8rmOU%Krg6O+DKho)^n z)26#y7+eXvAiF{#WOVIqIWpEMCw`D*e#VK`tP*>ei&P&K5zJoM>zh8g!!1edtLaI^agj zU1-s%ydnOrM?ZPdc^?{gpcnU`Z+z%gAL4vyqZhq=pE|xy-Eg3{9-uz-`gc2cWW>EG}op089mkZU0eBI#UL85DF;O9GyOx*>_X>Ul>=)-9UCH(TiLhH8`&rSI1`qf z=vHS{C|%QUkFd>xOVRF8+pLk=<~P?rX+HlA2cNK}G9X)nG21Hn1;kAQBgnF>2BpEW~VgG>icZV=%+oE7&H6aVc(}%=x8{4Mj^Hiv=t$W3ea&jk_Wq zg_Cm-v)$tpyI9G6AajEBm&a?EB+^Oi596V>7LGQT#h+c>; zdFY?_2g*)iLK~W9E=-`W-B%}SK#50lE_Q`mzz+K1TMxZmIWn~b^kLFrS+sXji_#)5 zfq9GpUzV`qfi;R}nTzf%uoLbO2ICM)RD zt!-lMFsLC&7?a$UEg_JnLCc#@cv3l-wMWX9bkjxCnQon&J8OFU**umx%6=QKaKb4; zD6c4=h-Oegv;ePk)XUT*ER3ZVq;Aup4b>70;|ZPgnyI@rX1mNM8>WPYlQXH8G|VL# z8{gl!g46o)M`;5!_z!ocjqG)P{?o?Sb*38gbJKfO=0t_r(N$pv=l7eVy2!MX-RGnr zh$SqXR%}V*WC$jw;YZtQ!oU)i^O)Tk?RN7d0GSZP?eu99gv>C+pQ2BYUdW6d^g zeUKT2_!ink`XLjB_+vZ?ff&%j5`$WTVy~95*rx?A_E%F2055-4O^x)_^+)RZqjmkU zx}JYP-&4^aspyYZ^v5cCzN+s5c|p3kVcve+N4C;*BfU$ki|N(!-SmI-HnGw2KRmkb zOWaKQlt$F^8*8L^^Jd+3X|8#jlxsd@x@Ug$nNmq|wS=r*?O7s**^ Tp=GCG1^+d#wj6HLZ+H9;wv-b0 diff --git a/intro/tech_diff.asm b/intro/tech_diff.asm index ae0e9fd..e1e5095 100644 --- a/intro/tech_diff.asm +++ b/intro/tech_diff.asm @@ -8,6 +8,7 @@ .zpvar temp_b .byte .zpvar temp_w2 .word .zpvar temp_w3 .word + .zpvar NTSCounter .byte ;--------------------------------------------------- icl '../lib/ATARISYS.ASM' icl '../lib/MACRO.ASM' @@ -86,6 +87,9 @@ next_letter leet_end jsr StopMusic jsr wait_for_releasing_keyz + mva #0 dmactls ; dark screen + ; and wait one frame :) + waitRTC rts @@ -152,6 +156,7 @@ leet_speeks_h mwa #MUSIC_DATA_END song_end_ptr jsr init_song VMAIN VBLinterrupt,7 ; jsr SetVBL + mva #0 NTSCounter rts .endp .proc StopMusic @@ -166,7 +171,21 @@ leet_speeks_h rts .endp .proc VBLinterrupt + ; music - PAL/NTSC check + lda PAL + and #%00001110 + beq IsPAL + ; NTSC ... + inc NTSCounter + lda NTSCounter + cmp #5 + bne PlayMusic + mva #0 NTSCounter + beq NoMusic +PlayMusic +IsPAL jsr PLAYER +NoMusic jmp XITVBV .endp leet_screen diff --git a/intro/tech_diff.xex b/intro/tech_diff.xex index 9def45200c6dcded0c879ec2bc979b7393666e98..d0c2aa2cb8b5910bb9a7ac10cd6578dcc6238546 100644 GIT binary patch delta 212 zcmdn~gz@$h#tA<-kLs=b-^+M;<=)ARjM6Mibrfpx@O1;*$ z1q>S-J}8__oFH?udV|CVF^iXpE7o#d(qvw>H&w5-d2i$j0g(6!p)RTajRDiCvXcP;8w8pxAYzjs0U0pTg@CCng@LJ}g@vgu zg@&L2v4HR($zhNj$$PLE@D@1fVW_PN(kTO~y;?4XgS}ppX#pM#^6-~TP%I#SE+CpL zlb!)00iu(^0TcnUv(^EL0VMJaCO|DNE-tA6h2W_$h2g1xh2p6-h2tOtAfTM0E~y6~ OT;!9710J)w1EFpf@~4OI0kyiIw=0!EUv$eFxA-v?*zy(~tV|f$N?Rb% z3OryePrKZxc`;~H?c}mNGt)mzmoyp^h-HDiIsY*_z|Aa$cC|4$3={RfM+1$f^GLKT=2p4Nm4CJNI3 zAVlvjnlw_HcJ-k&*}FCxzDA#?_pBB_bEwj2G-8UM$0q(a?B#FaD*iTLK;UxFh&O@8 z--&Msd6?2dsX#8vOXuAg3Jt{`l6A^_nhAfze9?BX^ylYHg(fw!`crG+Rg=4=xvim0 z6il$~nX9fGDwc-4=#{gpUJ$T=w*8>d0(xygX9Lg*uGfOA7W|s9qygX5fe&opj2S$( zAB@{Tl?}w}!2McKnMJ*`fr^>IOAnyls6ONt@R!C}J+7a%)Aq}oKPRixe(sna6W zB2tcFIl+;<2dTln=o~a@$AHaxr|(kVyh;8e>%e=-1|v@0*rk5(sdchH10YOPO@hxu z65@yNO!8l9u*fWwA6E8ejjVqPZxLrP;~lPDTyw+ z%Dh|5xjrG!%%$RNYJp8HvZ+Mo%gw~unFV%ck)26ozFf)!B@c{klk2cS@W7NCN^WJi zj||-~m1LzP8!MEVnIxNXLCK}~iiyt!Qyoz1P=+~V*a1^c7|;f(Xp<9)A*f`U3z#Bv zaJ+%ij@{Q~A$JXVK zKOkSP$~UO;jjH@HRsQ&zd_5GuMY^6aZAVvowpC8p0#iX-wq1>IV8TZJeIB=ymi8iP zY29i|!!&=MxX^0Pu7a)EZZ;Ac$#k<3w4?W^?!LZcPcn%*dtLc9+o88#J>78b0_yJn X5M$X&AA9GYHT-D(3hgw(xy8!t>b54~D5v zf@u&t9V&_S+$>5Lz{Kfs$uw7{pO~(<@&nV2$U~QIT}xkf*I58(1tS&~-Rdnebz~lA z1kKR-^yJh}^n3K)wJrM`sP+Mb=4qI3+AfutHR$p@VygU zae+P?I8+I~aDkUyfO3KDPVnLeb#{}wZ3C}ALcQ&DAF#1R3FIBVHYC3SZq#Bop|9nC zouB>>>jlG)xK2Qc&TVju9eiNd8fJ<#DFS0PKC;Oh$d`+tdi>C*EY9QJ@;)J8_tWyp_u0xHs6zehC)HRbO#EB?b0tK_DTyR_7WyS5o$Eg zvodVHt6~Ho7=Z~^s9^;JqoULik#ZyXeA2Yc2rG<`V1y+4%4gvmm=YJ^u=ze4wvdo| zOQgIa)h<$PBGoEVEh6O+spet%cb2#xp$7Y>7h#2A9GtBFqyKvUfB$)3)580Bme(nMtiMsRWZsW>$7~nVDT-W)sY8GPAO& z0F(kSRxCTQSqQ*XH1Dn9L`}> z@