From e8a46cf2b9b817a061076baeabc875debdab6248 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Thu, 5 Dec 2024 09:13:34 +0100 Subject: [PATCH] Audio init after IO and ATR --- AB.ATR | Bin 0 -> 92176 bytes averybreakout.asm | 33 +++++++++++++++++++++------------ averybreakout.xex | Bin 10377 -> 10384 bytes 3 files changed, 21 insertions(+), 12 deletions(-) create mode 100644 AB.ATR diff --git a/AB.ATR b/AB.ATR new file mode 100644 index 0000000000000000000000000000000000000000..4c941056dabf995909bf6a59a310ecb1402a4a9e GIT binary patch literal 92176 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 literal 0 HcmV?d00001 diff --git a/averybreakout.asm b/averybreakout.asm index 698c405..86d59f4 100644 --- a/averybreakout.asm +++ b/averybreakout.asm @@ -363,6 +363,8 @@ gameloop jsr MakeDarkScreen jsr NextLevel jsr LevelScreen + ; RMTSong song_ingame + jsr AudioInit ; after I/O jmp gameloop EndOfLife dec Lives ; decrease Lives @@ -1262,6 +1264,23 @@ colorCycleTabReset .by 14,2,4,6,8,10,12 brickcolorTab .by 0 + +;-------------------------------------------------- +.proc AudioInit +;-------------------------------------------------- + ; pokeys init + lda #3 + sta skctl ; put Pokey into Init + sta skctl+$10 + ldx #8 + lda #0 +@ + sta $D200,x ; clear all voices, set AUDCTL to 00 + sta $D210,x ; clear all voices, set AUDCTL to 00 + dex + bpl @- + rts +.endp ;-------------------------------------------------- .proc initialize ;-------------------------------------------------- @@ -1276,18 +1295,8 @@ brickcolorTab lda #$ff sta sfx_effect - - ; pokeys init - lda #3 - sta skctl ; put Pokey into Init - sta skctl+$10 - ldx #8 - lda #0 -@ - sta $D200,x ; clear all voices, set AUDCTL to 00 - sta $D210,x ; clear all voices, set AUDCTL to 00 - dex - bpl @- + + JSR AudioInit ;RMT INIT ldx #`S+j zsChL;Z;f7}ZQ(#dPx=a17W!o!Jy@X*;!qChhYmLApl00{$)Kez+v=Vq-TG(yIM{u7 z@A?0{&+mDjcf2pr_odlpe0t4dyIIlruH0oNNDi2ZMea2dgZ!SE{or2ONy_DeX0jpO zbA7mJR8T~>gBtLNV^UvrOSrj>ZefUlw)^Sd575nR#DM4MH+^KAXm6!2`G`T}5q-Op zj(JIW!RRbQKl0K&ZM#n(j|1%KQ(n-~+Zk3puwrjj?X6j7-bx?!0#95853i5D=~Zp3 z?kcfXR~vP=DL<|{^?a0FJ3v=M#tl3NN&d=6->bHhd#LAcxA~|t2MXq&Wm3nlHLn!`OXY~l$NN_Q{m zf3Wrrm~P;dNbi;T;pgoF+#`UyEt7nPdI+cz%pnCDJ3so|_QlqQ($>)n^B4YgEG`yi z!kU@Jqx7uw1GN^eVJ=oOG3O)Lw`eX3NLA<-V#Luo>-9?J;!P8%u2wUuixJ`6%!n>V zbu!{+Ms+ZvlToV}(ZQ&dj9A5dQOSg=OcrZ}&Hn6XAZF3ADmJdBD`2n;tFm(ywjo43 z;sY36@f#EQTxzbXG{e?PY~7yl4IgocK7pJRy9KgKJS>n?;&CBuprDk2CYcdn$OjDa zA%TKH2f+~mW*r3Y3-|9@_3zV$IJ6be2kZfPz#SS4?SD$1f&UKk`@U0;)HBKI^dVN z(0Tx=0hIOXTcOYZTJJ(?SAnenwhOKMQSsU6^BgTa2uMCwcp>2JNs>c2H7Cu~R~!A( zLVcb0r6;85LwPoV;S3ngvQIk6b|C#F@+Tkzcy`V(8AOwu^t7H5PNKYZ$@!SI_^X2G z4X&^cIH__7r%HV3q?F`f5J7=TYLG)vBNZ?43G+IKSmVJ-gfcU^8Qqkd&F;y~b}rgl6kCht$XOUJFVpJ0`wlB#ZOt~?|q34FVp9|F-t9TkJ{9TT@F0QTFzOR_x0=YS_CoE$JhupLY|CC^&`0rEjS)>y&gCoDB47+=51qxc&+9gpnui` zqu2a1qw3|bZsrd8)Y>qPslG5CP!EUkpn58dht%UCJglAz;eXk@Q zNn(A&SiG^;Yit$mwGFmAVYn0|yd36ki5<1O_dE-miIV}BQD2{x@R-ZK@d!kdF;`BD z<;>hIFL$M_V90IkEgI}vdBH%2w0BeBA>OFn5bg7}P{aLUJPb5}6I`Fy*_UuQURCDh z5j+AkiId<&l8(*K9A7lN8hAC4DkS?CAMwb#s_1Q>5bNIn&Y>2Z|NRry>XMHC_gaGyE(-1kM~BN@xdGc#xYaca)y zN5+z!z$Y0=yyLtdeT_Y9WfP8vu#54fICQF9FQG;ppSH|d*|S$nV7lmF6+0^ctzrc` zt5mW=6|2}-p^{Z9Si#0BR#vEBPg&VWm8ry1ZnZuAGf=m%0y8XpZ=xrJYrx?zu}oL- zSJW)nZwmD{Gvbyyn;59u8lCgga-oH%9}9k-GC~(mKN0rw8G{q9(cdWVAB?nBF7qgph3}?orB}q3e zrAb;tdI^!VHZi-QF8b1AQ%K=-S3uk(#7%L(wbQl0?kciB0^5nFrVV2OG!{hJ$)!oi zIHgtQRYBU$}Z#t^fc4