From eddd518a2cb6014478a33cb911d94a5de5b1e250 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Mon, 7 Mar 2022 17:32:55 -0800 Subject: [PATCH] CInema: Integrate most blargg tests --- .../cgb_sound/01-registers/baseline_0000.png | Bin 0 -> 699 bytes cinema/gb/blargg/cgb_sound/01-registers/test.gb | Bin 0 -> 32768 bytes .../cgb_sound/02-len ctr/baseline_0000.png | Bin 0 -> 729 bytes .../gb/blargg/cgb_sound/02-len ctr/config.ini | 2 ++ cinema/gb/blargg/cgb_sound/02-len ctr/test.gb | Bin 0 -> 32768 bytes .../cgb_sound/03-trigger/baseline_0000.png | Bin 0 -> 751 bytes .../gb/blargg/cgb_sound/03-trigger/config.ini | 2 ++ cinema/gb/blargg/cgb_sound/03-trigger/test.gb | Bin 0 -> 32768 bytes .../blargg/cgb_sound/04-sweep/baseline_0000.png | Bin 0 -> 663 bytes cinema/gb/blargg/cgb_sound/04-sweep/test.gb | Bin 0 -> 32768 bytes .../05-sweep details/baseline_0000.png | Bin 0 -> 729 bytes .../blargg/cgb_sound/05-sweep details/test.gb | Bin 0 -> 32768 bytes .../06-overflow on trigger/baseline_0000.png | Bin 0 -> 1252 bytes .../cgb_sound/06-overflow on trigger/test.gb | Bin 0 -> 32768 bytes .../07-len sweep period sync/config.ini | 2 ++ .../cgb_sound/07-len sweep period sync/test.gb | Bin 0 -> 32768 bytes .../07-len sweep period sync/xbaseline_0000.png | Bin 0 -> 1260 bytes .../08-len ctr during power/config.ini | 2 ++ .../cgb_sound/08-len ctr during power/test.gb | Bin 0 -> 32768 bytes .../08-len ctr during power/xbaseline_0000.png | Bin 0 -> 968 bytes .../09-wave read while on/baseline_0000.png | Bin 0 -> 1412 bytes .../cgb_sound/09-wave read while on/test.gb | Bin 0 -> 32768 bytes .../10-wave trigger while on/baseline_0000.png | Bin 0 -> 1498 bytes .../cgb_sound/10-wave trigger while on/test.gb | Bin 0 -> 32768 bytes .../11-regs after power/baseline_0000.png | Bin 0 -> 737 bytes .../cgb_sound/11-regs after power/test.gb | Bin 0 -> 32768 bytes cinema/gb/blargg/cgb_sound/12-wave/config.ini | 2 ++ cinema/gb/blargg/cgb_sound/12-wave/test.gb | Bin 0 -> 32768 bytes .../blargg/cgb_sound/12-wave/xbaseline_0000.png | Bin 0 -> 785 bytes cinema/gb/blargg/config.ini | 3 +++ .../cpu_instrs/01-special/baseline_0000.png | Bin 0 -> 672 bytes cinema/gb/blargg/cpu_instrs/01-special/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/02-interrupts/baseline_0000.png | Bin 0 -> 700 bytes .../gb/blargg/cpu_instrs/02-interrupts/test.gb | Bin 0 -> 32768 bytes .../gb/blargg/cpu_instrs/03-op sp,hl/config.ini | 3 +++ cinema/gb/blargg/cpu_instrs/03-op sp,hl/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/03-op sp,hl/xbaseline_0000.png | Bin 0 -> 669 bytes .../cpu_instrs/04-op r,imm/baseline_0000.png | Bin 0 -> 675 bytes cinema/gb/blargg/cpu_instrs/04-op r,imm/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/05-op rp/baseline_0000.png | Bin 0 -> 634 bytes cinema/gb/blargg/cpu_instrs/05-op rp/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/06-ld r,r/baseline_0000.png | Bin 0 -> 628 bytes cinema/gb/blargg/cpu_instrs/06-ld r,r/test.gb | Bin 0 -> 32768 bytes .../07-jr,jp,call,ret,rst/baseline_0000.png | Bin 0 -> 745 bytes .../cpu_instrs/07-jr,jp,call,ret,rst/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/08-misc instrs/baseline_0000.png | Bin 0 -> 696 bytes .../gb/blargg/cpu_instrs/08-misc instrs/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/09-op r,r/baseline_0000.png | Bin 0 -> 636 bytes cinema/gb/blargg/cpu_instrs/09-op r,r/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/10-bit ops/baseline_0000.png | Bin 0 -> 664 bytes .../gb/blargg/cpu_instrs/10-bit ops/config.ini | 2 ++ cinema/gb/blargg/cpu_instrs/10-bit ops/test.gb | Bin 0 -> 32768 bytes .../cpu_instrs/11-op a,(hl)/baseline_0000.png | Bin 0 -> 685 bytes .../blargg/cpu_instrs/11-op a,(hl)/config.ini | 2 ++ .../gb/blargg/cpu_instrs/11-op a,(hl)/test.gb | Bin 0 -> 32768 bytes .../dmg_sound/01-registers/baseline_0000.png | Bin 0 -> 699 bytes cinema/gb/blargg/dmg_sound/01-registers/test.gb | Bin 0 -> 32768 bytes .../dmg_sound/02-len ctr/baseline_0000.png | Bin 0 -> 729 bytes .../gb/blargg/dmg_sound/02-len ctr/config.ini | 2 ++ cinema/gb/blargg/dmg_sound/02-len ctr/test.gb | Bin 0 -> 32768 bytes .../dmg_sound/03-trigger/baseline_0000.png | Bin 0 -> 751 bytes .../gb/blargg/dmg_sound/03-trigger/config.ini | 2 ++ cinema/gb/blargg/dmg_sound/03-trigger/test.gb | Bin 0 -> 32768 bytes .../blargg/dmg_sound/04-sweep/baseline_0000.png | Bin 0 -> 663 bytes cinema/gb/blargg/dmg_sound/04-sweep/test.gb | Bin 0 -> 32768 bytes .../05-sweep details/baseline_0000.png | Bin 0 -> 729 bytes .../blargg/dmg_sound/05-sweep details/test.gb | Bin 0 -> 32768 bytes .../06-overflow on trigger/baseline_0000.png | Bin 0 -> 1252 bytes .../dmg_sound/06-overflow on trigger/test.gb | Bin 0 -> 32768 bytes .../07-len sweep period sync/config.ini | 2 ++ .../dmg_sound/07-len sweep period sync/test.gb | Bin 0 -> 32768 bytes .../07-len sweep period sync/xbaseline_0000.png | Bin 0 -> 1260 bytes .../08-len ctr during power/config.ini | 2 ++ .../dmg_sound/08-len ctr during power/test.gb | Bin 0 -> 32768 bytes .../08-len ctr during power/xbaseline_0000.png | Bin 0 -> 975 bytes .../09-wave read while on/baseline_0000.png | Bin 0 -> 1440 bytes .../dmg_sound/09-wave read while on/test.gb | Bin 0 -> 32768 bytes .../10-wave trigger while on/config.ini | 2 ++ .../dmg_sound/10-wave trigger while on/test.gb | Bin 0 -> 32768 bytes .../10-wave trigger while on/xbaseline_0000.png | Bin 0 -> 1661 bytes .../11-regs after power/baseline_0000.png | Bin 0 -> 737 bytes .../dmg_sound/11-regs after power/test.gb | Bin 0 -> 32768 bytes .../12-wave write while on/baseline_0000.png | Bin 0 -> 1606 bytes .../dmg_sound/12-wave write while on/test.gb | Bin 0 -> 32768 bytes cinema/gb/blargg/instr_timing/baseline_0000.png | Bin 0 -> 527 bytes cinema/gb/blargg/instr_timing/test.gb | Bin 0 -> 32768 bytes 86 files changed, 30 insertions(+) create mode 100644 cinema/gb/blargg/cgb_sound/01-registers/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/01-registers/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/02-len ctr/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/02-len ctr/config.ini create mode 100644 cinema/gb/blargg/cgb_sound/02-len ctr/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/03-trigger/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/03-trigger/config.ini create mode 100644 cinema/gb/blargg/cgb_sound/03-trigger/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/04-sweep/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/04-sweep/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/05-sweep details/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/05-sweep details/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/06-overflow on trigger/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/06-overflow on trigger/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/07-len sweep period sync/config.ini create mode 100644 cinema/gb/blargg/cgb_sound/07-len sweep period sync/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/07-len sweep period sync/xbaseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/08-len ctr during power/config.ini create mode 100644 cinema/gb/blargg/cgb_sound/08-len ctr during power/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/08-len ctr during power/xbaseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/09-wave read while on/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/09-wave read while on/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/10-wave trigger while on/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/10-wave trigger while on/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/11-regs after power/baseline_0000.png create mode 100644 cinema/gb/blargg/cgb_sound/11-regs after power/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/12-wave/config.ini create mode 100644 cinema/gb/blargg/cgb_sound/12-wave/test.gb create mode 100644 cinema/gb/blargg/cgb_sound/12-wave/xbaseline_0000.png create mode 100644 cinema/gb/blargg/config.ini create mode 100644 cinema/gb/blargg/cpu_instrs/01-special/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/01-special/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/02-interrupts/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/02-interrupts/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/03-op sp,hl/config.ini create mode 100755 cinema/gb/blargg/cpu_instrs/03-op sp,hl/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/03-op sp,hl/xbaseline_0000.png create mode 100644 cinema/gb/blargg/cpu_instrs/04-op r,imm/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/04-op r,imm/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/05-op rp/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/05-op rp/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/06-ld r,r/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/06-ld r,r/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/07-jr,jp,call,ret,rst/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/07-jr,jp,call,ret,rst/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/08-misc instrs/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/08-misc instrs/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/09-op r,r/baseline_0000.png create mode 100755 cinema/gb/blargg/cpu_instrs/09-op r,r/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/10-bit ops/baseline_0000.png create mode 100644 cinema/gb/blargg/cpu_instrs/10-bit ops/config.ini create mode 100755 cinema/gb/blargg/cpu_instrs/10-bit ops/test.gb create mode 100644 cinema/gb/blargg/cpu_instrs/11-op a,(hl)/baseline_0000.png create mode 100644 cinema/gb/blargg/cpu_instrs/11-op a,(hl)/config.ini create mode 100755 cinema/gb/blargg/cpu_instrs/11-op a,(hl)/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/01-registers/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/01-registers/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/02-len ctr/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/02-len ctr/config.ini create mode 100644 cinema/gb/blargg/dmg_sound/02-len ctr/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/03-trigger/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/03-trigger/config.ini create mode 100644 cinema/gb/blargg/dmg_sound/03-trigger/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/04-sweep/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/04-sweep/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/05-sweep details/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/05-sweep details/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/06-overflow on trigger/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/06-overflow on trigger/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/07-len sweep period sync/config.ini create mode 100644 cinema/gb/blargg/dmg_sound/07-len sweep period sync/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/07-len sweep period sync/xbaseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/08-len ctr during power/config.ini create mode 100644 cinema/gb/blargg/dmg_sound/08-len ctr during power/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/08-len ctr during power/xbaseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/09-wave read while on/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/09-wave read while on/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/10-wave trigger while on/config.ini create mode 100644 cinema/gb/blargg/dmg_sound/10-wave trigger while on/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/10-wave trigger while on/xbaseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/11-regs after power/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/11-regs after power/test.gb create mode 100644 cinema/gb/blargg/dmg_sound/12-wave write while on/baseline_0000.png create mode 100644 cinema/gb/blargg/dmg_sound/12-wave write while on/test.gb create mode 100644 cinema/gb/blargg/instr_timing/baseline_0000.png create mode 100644 cinema/gb/blargg/instr_timing/test.gb diff --git a/cinema/gb/blargg/cgb_sound/01-registers/baseline_0000.png b/cinema/gb/blargg/cgb_sound/01-registers/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..9f55ed942a1ff02ed3db2053d3bbfa538979eafb GIT binary patch literal 699 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|Qf&r;B4q#hkadFZwkbNH{#a z_Tk_97=4cj-M9Di91l+Ze0N0;W09NT=F>~3sH|JRo8Mvo=>r99ZN>(38XxlTq$gM~ zAC{CjH@t;*TlKHNVEv8NpT*v`pTE_fKA+W# s+x)?oe|uxX3vcPn$uBv8o?3R~ua-B^*4%Q}6_hAFUHx3vIVCg!0C+w*&Hw-a literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/01-registers/test.gb b/cinema/gb/blargg/cgb_sound/01-registers/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..be180baf816f1cdbf2a7ac3dc36e72adf8636f43 GIT binary patch literal 32768 zcmeI4?{5?59l#$uiAjUwBs68$G?2#xJU1ib=tQto_gP>FG;JjmX)W4|?YzbpGI@5I zWW<1DoTQuDsV~-d&6w6~>n8QhI`(3eA+0fIJ3YdKhE}L6mF?Ws(Pq)irn?qGu=jn= zNu;v<1E}98cfRNQJl~(6=Xvhlg^2B zFI>O=-t_tN1J8zCH!fX&fBMz)=f1-3AvO!L9sUUE{MEueb0{JKB!C2v01`j~NB{{S z0VIF~kN^@u0!RP}AOR$R1dsp{Kmter2_OL^fCP{L5>2+;iF>2|J zXi`7>_R82hV(bZ8($o0?*5pcT&D71?w$a-WPsKszk9qAqmJ3h0_M)5w1Z`~Dcm(R& z3>iHF+0@ddp57i(3vuWtyQ8_JZh={@7B7kfB|BYm^)`C*E1F<*Q~GP3znGFb?FSF< zl)Dce-nEkk!u@nCa4bjKkQj*L<8^@D(wg5?98 z1^QPUK@P%Rdp%{dYwqSs!=ItVn(gCd5B-l`9fH1hUBe%S#SFyW26vm#=%sl*@l{fJ zt0I0*RbGW&g^;%h8LF(ddylfVoW52kFL%h~vh6Q#6Kk{my}Hjnv4n~^5o^nCi$jRQa7Vg-aIbl%oEae^Q82i8I!J>5yxl z8``13$Vd=Q4I|o_^im@0_trh({fE>f=JrLx!PS|GY-DLNI}ktXeE=*00{nt{xkByC z2Bu~)vBNA*z~)DBVl+HFgf^kU*X-B6tP6KyO`o}=}}sW)kjHlgubDec`<7u35x zdWL?gf4q|z1(LPJ*SQl}{_nKy6mcgi(19(s4(=wnD{ysT zsY|%p9~cY;`@sj$Ta{=hxcr{A+UuRQjBIJ7%XRd&rSbJJoX9Yotl;o)WLTVTfWsOJ zgs|GeRF=&Yp3kzs6>Kx?_XYb53lwT*7%9}wutb5(=y`K#3P3-f9q8;Kh33?m3~ahzXWV4cMfgAA`4d+Ko~*Sn zorM5D%d%UA(^>xXob+usdBssXww*3-t)sWZhw7-K8AuMYQ*e|2f7j9L%x3g40x>|R zPj5Lr=TOp)`nCsO-?9b#Bzu+aEUpk%5)I$Y~x?jmU zS|6*U%WN8IgHOncGH6_T!Pr~UuL|Xe$Mfi;Ez{XeZCg%4j9a-YYp)AQG$N5uC}h1s zLgf%#gh)*BJ7N-1Lz1jyeoWeX+IJM&=;1~I8ZOd|9)6uL;?qKRV6W16&H*v ziUNM4AyrjFQHZa^6b16Ko(f@#5{8fjX2DD)ev!W9Cl1lT4s3?N7D^Q@PBM$-Yne=j zsK?@QFckSh^IP#i!IF=KdMp`2iuiuv2Ox?j;y|$)zv>|{O67~Bm(GU7J1ORwe^@TrCe^rhtmOpSPWWfVuvGHIX z1pybxB8>R2NWx4kFaU^&y=nodjzd1M$kzUGNs=t=tnk2PNRph87U(HAe^K4K&?f|5 zFyh52mG!lwV2$Gs5WB literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/02-len ctr/baseline_0000.png b/cinema/gb/blargg/cgb_sound/02-len ctr/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..bfaf961a82435badaf820014249ca5e465735d52 GIT binary patch literal 729 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|V0nPZ!6KiaBp@A1rECU|9Tccm$^FK7HXXPoOm0R{aI1Fn(CZDB-(S~|D^tID zTeiv_}ij&jRlM8vxUyB&*OTLoVK!5n@eWYal?-dLlY`H!V{)V$bw?E7AsMYq*! zcA5PuI_)6-dR`LmpVpU`)}_7OK5+$*9b76bz5l)U`$g6Md);ikbM1Egn6ogt?3Vof z-&G+GYYgt#{5^KJeP8;&3DeCZ_pN-Gx$C8#=H2A4dsd}ZrpnCKE7mXhW^uE~6v#dO z-0I@N+KV@Bb^iLjSsylST6o)~i%cj^s~S5(x;PqKP%ln+4lBT%=LT1AFkBv lU61@@Epd*s9wRw@XMf-Cs&KqO^b#n^db;|#taD0e0st^PNk{+y literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/02-len ctr/config.ini b/cinema/gb/blargg/cgb_sound/02-len ctr/config.ini new file mode 100644 index 000000000..2c21cd188 --- /dev/null +++ b/cinema/gb/blargg/cgb_sound/02-len ctr/config.ini @@ -0,0 +1,2 @@ +[testinfo] +skip=600 diff --git a/cinema/gb/blargg/cgb_sound/02-len ctr/test.gb b/cinema/gb/blargg/cgb_sound/02-len ctr/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..eb5ca82b76bba016c588efbb905a21fce786102f GIT binary patch literal 32768 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 UM~6|;2bADEUHx3vIVCg!0HMAqEdT%j literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/04-sweep/test.gb b/cinema/gb/blargg/cgb_sound/04-sweep/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..75d63668b8034ffb846a197d8c5a604a23545bab GIT binary patch literal 32768 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 X{FLC(w3_`WD9L)d`njxgN@xNAQq@e> literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/05-sweep details/test.gb b/cinema/gb/blargg/cgb_sound/05-sweep details/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..383e0c1e3e6146768b409a047108e1b57748ccd8 GIT binary patch literal 32768 zcmeI4QE(H-8OPVMEsT+6o4Dx(9K6OLjEe^~Bt~hK9Zw)(I!$n9O4?3edcwLhYGp}S zGM0l-WSn%;J|yKW4l}L$(oA34@KT_>SW)im!#-NtK$V%0oYRPzYKUvWTmr_C`t8X! z80bu2Gx^SUy4&4vzyJ6BzP**6Ovu;#$oN_>d?w2?b!1&-l#CJwsUtOwEwBBOI6s^T zUA=PUgRyhx`g%joYcp3q9Q*CLv%AE3MB!C2v01`j~NB{{S z0VIF~kN^@u0!RP}AOR$R1dsp{Kmter2_OL^fCP{L5FSiPxnxgXlc1;d}3wXL#Cgjq@~3}z!hsW8bE11 zSUHr@P}5$MoU$TWL+Ha5sG7sHV61V*_1&?6H%1*YDcvmtwfU zHLB>fcv?F>wbb`M?|X_CG$q%^>Yb@AYV~x*R(dP!D%r{Ok#<{`<-%30I`2*cf(>lZ z*a&%Tf`~RkG*xt=tGkO-fe!tAcYHRjSzs2+$@3(^$VL~O-F5A`B}NqzVZTIuatw0n^#ywegT7b*ocjY&-@zb+(0j-i3Q57T%34t2xlQogTJGf1U^M7Q z%b`D6{Y=Pzm;bWsK#cbLh7Up};I2>dTbZmDDJy`d2Pz1h)`JzlV_&UU&L{+oVuv8B zA>T0dhoxv}TWncyby6)Ld2d1>cP9+%)hQPZ!dq3;`uoFL6(;yzDzX*3RSGuDJ9}2> zEf;<3njZ`vj1BmDffX;xU=;AjhQiyR2;u%nQ0kXLF^iJP)~w8C%@FE4P?J~hsR^t% zrtm&%js54om9VSk|B$2YgArKc^k8@}i@V{c@ww0T4bPqFd1-F+M@Q%AR{E){w0U61;T@6Li|K-97Hi*2 zD*FB@cw}_xUTfWF^?xe=Hib(4w9;{!-hvIgsOW8~-l^)lRQa`~-TEH2 zaJ9Zz>#?b8RCi|ol&J^~Q-O|kPXF2W`&DPH-mj`|2nM3I@2ooEUL5I(LvvW0&6#a& z9r;xDSbij%$RE!Z%3GnW1hqP>Xb@{o|GV;nFB;|LVoAKM!a zNy{T6+3>>gY+v$p`&yU@5a1KcizRAf6)@GDPwh14N8maR*XT~3`pR_!iZ!1)N7v7f z{Ds!dA3sZL=10%a%1l(z^J+#@J0Rb6@l*5*?Z&r>ktf-T(IwVOE>X%}^KrmWc3pq!XrR~*PPvz}( zG;QS#nx=kcQok`(&`-`}PRy8)U7=W!rB3edS@0qG!3PjrZqYVydBCdpI!6^Fo9pOe zHN9n7d@lt1a>y5?(!f9%c6wFAEX4!cDl`Q)xUop5ToF@FFmAq-M8rne@w^Y-c z{O8Fbdjq^V0roOn{DZ3CQ|NdG`b7gp9C9AT}?qK{2gn5G-tMsWjl(m(zS&mZLih6npyaB=M$kJ z`1!&e>BAa?3!mUc$t|4Bsx^=Sqpfdd?M;tW(?vE0xxo*IC1bF-{F?D}LA%6_!!FnM z?TusEM>lLf3K}Do!K28uFKD*yPI$ox4>fs zc{t&j&n)XezM%iJkjRJt4wAA=60*!s=odv1{KkW_EC=JDFD670;4AaOJ`(J*+91jGz1$B# zvUx>5&1iW8!H zsp+*d@NeOT{0S#5@_d-33vD?G?PhlZu=6?4&+NbiaDl!+JfHw|1p0790A7&i@3ER* zu)oFuz`bnG{qg+E?SyFg1BblLc|e;lJg6fl;Dk1p;r|PZPvZp!013WUEdb?yhzE*n ztskc#xcNLw9=JpV!2w}`op}8><)sVHgun*FH&3Cct-K0WKYkzqB!C2v01`j~NB{{S z0VIF~kN^@u0!RP}AOR$R1dsp{Kmter2_OL^fCP{L51&@RP literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/06-overflow on trigger/baseline_0000.png b/cinema/gb/blargg/cgb_sound/06-overflow on trigger/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..596217b874cbfbd179ba2a2355c41aef16bbcf4a GIT binary patch literal 1252 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|U!yPZ!6KiaBrRo}Tttfyd?T zoIn5djl1V4nz?OiIjVfM)O_wSmXlKsa$Gd7_R3V=u_w*i;g?h6!G#AN1SAw_7+8o% z$Z+xSv9h%@H9HSE;d8$~C*S`bGbQNM{H32dQ>L$~(|eSnFh4qb-+J4nB{@#N_HcB0 zb5}*DZkYdm^;`82_dTC3XndVoR4pHSd%ab`?J1}Iy_K)qt=y)3)@OU{l+*FY-+L%O zKD>3wjwy53{nEX=A>@D5yt}8T&)brJ{Ppr97vH|t4Y_^s`Knc~Tz{6cc*jm#`%GP- ztm@+LrT0VBY%dgZmcOixe`+}Y`W}D%#+z5||mOIEI`Yxq$@!OQj z$2OZ3*6Zq>Q|A7}J2~y>;w9SOrDdNiugrbESL@v21Op$Y_Cz79F)4F%$=e#HgK_H~ z*m_?2`lR#S{=Y6>3+}Sndv~9#*Si(1cPsA9x=U$a9cF$%(RcmbWV@4h=66ryJ6(BN zG%dHmyKMd5Y3+?I*~hQvUBA>9_kW6>PTt~*sMW{Qbf0dI3){W^d-KxUZ);<&CxzSh zW_|g*`^2oNr2*%Xck?M!@T=|M(_~B9zFOwUhTkjKE?W9#;r2iJ8{X_SpV$3v*Q~jD z;gMS6@h`KsFRVMN^!eb8Ek_Op{e7(Z+v|AV_U|523FS6XGBvBxyU)jX-&8N#TN<{( zy7jWsYDK%#*?azEHw$kpeE6%(J?Yo)2W#tNGPdvjfBeR|tTOiE;+(RTI|5d&pRzu! z+`xac=jmhhPntFP%#Nj>$_h65&;4mnNR5*>I)L=|o@Xl`{*s7t0>! zJ#3z}|6rb!qWqsFeHX(__nj~8F_+tV|3TOO_m2})Z91Y7U3D)ndUQS8x@z{NBj4`4 zD+W5)US{K z#YEg$9}=f(B>yK}@fdI^?+32VIQcHOwmb9K!3QkQo1NV@q#p5DR()h~ zW7%=xnfzr((~tc+W)|!HJ+f@Mz)XI-y0VWpdVh3xE5Dq?|Lxo~z1@M*I-B3{soBZD z`P+3pFJX_}(RT?=pAUAgxA>>P@$-RU*;hY}}0NxsamC+dnp^en0*x_We2W%mX6q;!Bpfn6SSV*`oQ&>X6a# zo!@t;s!Yw7nLAlyGVjx;v)0`c|M0AS`eY3W_U6O&9K2YIl>ZD%|4yy(aFXB$m0q5% KelF{r5}E+k4PJZz literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/06-overflow on trigger/test.gb b/cinema/gb/blargg/cgb_sound/06-overflow on trigger/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..b2d5c75a2fbb2e3f5530bb065ebf257325a390db GIT binary patch literal 32768 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/08-len ctr during power/xbaseline_0000.png b/cinema/gb/blargg/cgb_sound/08-len ctr during power/xbaseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..4dbe59509f81aece289326cc39adf71b2e832d38 GIT binary patch literal 968 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|Rrvr;B4q#hkaZZx^jm5MU@h z{r`XJ`NLs?hkONk=dF7;U1g1=d$gNF`Q7ief_n3p3s0yHG>~CEJTi!z`|Pik^7{VX z*M2|yt?8j}w$l4&zHdAubF`+#`^S-$HJdpnWxeHKTW$2m_)ul_G~IuX_X&rr zVLAD(P0K~s?@qqjWAh}rWBOs6=Dn>BdfW3k_y3Xks)dIWRj#I;%}CiS6Wa8TOYnGS zaPR*!zt8Uc@m81rvAL2=*s06Eb>}_T{nxJIQna;A`$5dp%58P`Vs-Ba^mgYQpB-}~ z+yCI>H^1xdGbH6spMH7qi+L7Xt8aJyIJw-}F#F@@kjdZN{#-tOd-CTCwibKepSo{s zB_Xq`K$PeBR2_?#CA#wkTYb}?t^XvlR<7pipHR6c>9eNjm$ZC4_WyQm{5diILtTfB zMgLv@Gv!50%AU4V*?<0pvsjL23Smb5&1sjiir;D;x-grq|F|d9xjid`crJAmmsjh~ z-&1?`@KrfkIit@~Uj7G)3qP4hq{oS_n!E1eed+c}iF(PM3U(*c-$(A;qcZ=SP}P5? z-_?GnjefYceo1t$JF}QyI_q}-v6<(W*LGf!>;EQf-}5q)|My!Pd(Sz=H~&@Tn%P+O zB=;U$n_I86-}_Ui{)d?sTX`n$-Ew>S{ac@E9(`NlqJI0j-p3_>(rDN4=x9qro@tb0e9M5u7{=DEd_RICR zZ@;T%uw`G(wPid0ZeMjqP4#-=ho_rsuFTuQugh%u=!EZ|s23W3FT38`^Ot@PsJks( zytBDks5X&*^JY7z)h_D7Z%^9Z^p#KKJ-le1Tusu(-TU`WYd-V9Mxu}Z&qED~z9tmn ZoV`@hk}#9)AFhFNsHdx+%Q~loCIF^yuay7* literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/09-wave read while on/baseline_0000.png b/cinema/gb/blargg/cgb_sound/09-wave read while on/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..5ae81c23333a6fd44c475d9edd63ec4e8a85538d GIT binary patch literal 1412 zcmbtUX;hL46y-FIn3s3UHrn37|oXR*`?>#cn$`sbluknj>=1O*IWEvc} zA^$LQKAWtYo|(;scW>9QS$U5*Qj?{vPWgY3E~%cx;qA-(ynPZbi(#q}^Tyojs|F)O zPxF>J{Kn)e-#_#1x)gmkU?I!iYYt=2W?odOzL(=Xg4)7K^~%Yf2ZVIRl6pxHP4Py! zor7$zV8-Y^nW}p!)@<2jytX;pLm4-&XOPa8<`+0qgKJMja^URG&Zs8bvQ9YrX@ETf z0nS%LY%7J_ml9}T%aOSrD>O@?dK&<*ElVOE< zz~H3Id@48?FO1`=u?4KuE0UA@C2JO7X`ST_7EkB|gHL!=*AV%YxNL#_s{p^jq%Oy= z(N1`*@1h+R^@uBMl)SVhBxakRiGL#f@}KLQm1d;v`## zg7;ZG9$2gi=trzhYSqiFL;9@fGrFNbe+*~VPZVH5cwrqD3W#wc1}51vCC+NCN zAc}-&yypt;F-=Y3aOQ{dc$8exsj#G8l|9^?Y4UOajzcZf6m~EK{)gvHr;ZO~`=qRF z5=_&7b)D^V)HBRYTIjbvCME(u?+F>K*ynt*8-MO%4yG7-*L-gZH`y7`K`_a8+whNK z%)%byhD}Ke#*FR*9nF=?XUcU9dKwBPh z;ahQ4CBU;pzMft{g~^HhD6T>d6p^JD@jI^w$3N6NqounSyH9_pV2C%BwH`(K$K~{^ z>_LxSA=j<46RxTwecHz6FyDM1Nxeg}o7xs$e~_-JLxoKDQP!0ubI~VbSS$xj_)UZda6kbk_V(kLw$mcegEGIF_t3 zkyeiL8k>|XBt2MRannMl%MNVyy4Q?Y^^77+Zi{z18tTSZJWKSyufx~EX7pHsj!naz zG^Uu}DM;Q@ZQ3#unMa&K-@UXqC1U<5HPpyZt(}JHh)lIXgl+`br{JG7|DEZ7S@}cT W)Gy?-PH+SXroW4{;rt5^5p-xDurxREf2SHw`*$ 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/10-wave trigger while on/baseline_0000.png b/cinema/gb/blargg/cgb_sound/10-wave trigger while on/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..d091bda68862c6b97fc30c6ae02ec884c79c6eee GIT binary patch literal 1498 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|VVa2w&+vdQ;?Itt9{enf`a|_^Y`Clny^_p?%}sp;R|fb zT@B9P`zW|mQ1IMmAGtZ3pR;9dn!YexF$zq_fBf>aVW}2dC1o!G`mRBMaiY` zvDK&MzkL~(;=aCGl=Gi$#_qgdiN321lVs$|tnJd}ef1RczLkG^@>JlpR_aq#|D4)s z!ogzCJ2od&Uf;Fkw#$otfz$Feb5hTT8@9hU(@goGFL99-H~6wg-PxBf%E_pXM*0`)20c{d-NKDj}ne)o%i zFXla$e0Shbo^dAo@s+op8~kKt?Vc}s=I*pF>u20qyzu43k2|YAb*{68Vx~2H}aLvVoS{Jva+P*38w6JGO-~a94xx{zPoxd{=K8jvcJo%m!&ozst zL)Uz#y?DNlf7`o#X@~#4sCQGnWvO-XoadB`(D-aQ*o|DkXTe_3D2#oTidAv0(HSr~rmmBJ-g z^PGDVmMwe5^K>82JDH{3^X~qQdoqo8-yELqjU^W~CdUVCn4l-Mbia#!;_LSZr)*g) z;%qf#i}N%0T^UpArgwZ!F8G!$|3>EJqPfZ!=N50v+vH+@$<^8&;k0mKTut7_b>3_vwwen z9Z$FJK7PblYnILv*3uv9N8%*hFIb*?F+WZHbxMR&^wGYZ#S;x()u+BccvAG6kL-%0 zyIO)e`@(OuZ}=v6u%2i7 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cgb_sound/10-wave trigger while on/test.gb b/cinema/gb/blargg/cgb_sound/10-wave trigger while on/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..56f0e901ea1f0ecb0b984536a14eb8870babf5e5 GIT binary patch literal 32768 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/01-special/test.gb b/cinema/gb/blargg/cpu_instrs/01-special/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..ad3e9984f967b77b7ffdf768842ce3c04517d059 GIT binary patch literal 32768 zcmeI)+iw(A7y$5Zx80$Z?a~4dM`&TnrIv<M@$w=uCK3`2FB)GYyojYQGo9TnBOD?LkTIcgH`+#5Y&z&DBJTQ~SxVyN5AgC$ z=FIFj=klHNn@isc@IT+|W#Mz*8^+l>SX?y#V-STpsA*XJ+UpRze71LXdiska6BGOP z^v157oxXhJ{fY6rv_FZBU>pjr8QZ`6Q{6v4+|~eQtiEk&qx|dgI{D|M4Q4ZR*bx55 z&zvSm0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{ z0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2J|1AMqp1c%MZmd?| zT}pr&#L%`X4^^m7ti5y zCSPXpCX27N_$kxz`37sD5B~JBzQxO?<@iZ9;}5Zde}GN<2iX^Xie2=F*?B*k#AZVl zoAR>{Ji@N}+0O0k3g2b=XYS>9S>EiDQf)k(Ta;7mkn3kz)X(CD#j(BP7oM_Wwfre7 zr{H98CDNwq!^(}(t|W#-PGQDhySA-Z?G6_sxIhWlGQ*#*f!Q%Qf?3pUPEsm&skr9=F1Tw-yRWvJlB@(WNuEg@IFD_~FOp-tK+7 zU+NjGD10`ls%j}bId0i!C)tmcR#n)lzi*&tp%n`)Gz#i#s~_!@cRaZ9p+}+6Ty1Oc z?H{UZB0IWv$Xm8TAp}dao_~I5c76gAR7Yhm=pT_fw`_qz1HeV^4j-Kg!+2OOdk1s% zPs`th^miIwev$uT*>76e(5hdnk|$cF`OeZ?vTr%OK64%1+4{_J8z0DHb~7A`0sjWi zZ^X)Y)|MAnB6YFR)vgtrT)s2Io@|D9rRx0~)I1g%H=eOAhGQp*We23>8 z$9HdJb_6FQ-oDnR8NYd@+g4g6-{zI%)>^(b<9na9-`%^vP#K7iWpKiH#8I*{*PGm2 z4X#0xn^(Bf@;f8)4Q(Z^u7K|yX2oXM;?isR2R!GZXx!J*vSCBRO1EjnnuD0*TH*Yy z4-69v)`;Tp19W)FTnCQ>a7>kNDq@ye<;q_>vnn+`= zw4Rbgtm=A7v`>p>ih}J8v5T`NMdKo`*l(T{5Lpx^=8EZY$KRr7B@eC_^FQ0GYrt@T zv|&KXFvO16bzR4ClL^Bx5=qRjr*s|X6`Xa@biEf-0@h+T15`16rh+6k?1z2&u`e!F zY-z~Nl`iFSIWPv(Y3wNGi<=tc!v;Y-n7Aj1F{Q|_ig6H8Y$6YCK|VuO8Q@r#N^>}# zp^B-CdNGBH3+7uDbXx@-V)arOl0lq=`gkID>plRKOkKGds*;A|2fVm`5YoC>j~3*` z*hpjCsHBix^ug>A`q7 zpooPB#^S-l`zQor7>hLGzru)a;szr?N<6CpK;=5l2XAul{KObjM86DisA72iicAJRtiVPC5ef0$kIf%WY58UCBiFHDI~ zGb`PCbAn;$KmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2J tBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JBtQZrKmsH{0wh2JB=Bz&_#K5wPf-8> literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/02-interrupts/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/02-interrupts/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..78abab9e429193b837e0008a5446d3b30481efc6 GIT binary patch literal 700 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/03-op sp,hl/xbaseline_0000.png b/cinema/gb/blargg/cpu_instrs/03-op sp,hl/xbaseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..f1bb46fdf753eb9bdcce80489a767d5ca2e8c02b GIT binary patch literal 669 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|Qfvr;B4q#hkadZ~LuwU~mXD z`1fDGSZn=Q^xq&W|8{oNk`a-hOSThV1E$=bxIt_Aay7 z!}rZ>-_6~^Hbz&Ut)DX^{l|R0YrgU84?ecYo7eR9q-^-JkBP7S49;)1+_!B`dL?&d z*}UT0$7^B_vipC?oRz1Te>Oa) z%)KA)O4e8K-n;!TVcuDDuG0terERKX>aTx${jOX7@yzX+>dz{#{_(UIoMHZH`WlPI z$1Huq7Jd(KFn;ScuHCuwL_X&kSG)K5o1WfG4enp_^AT4%ll^Y9SGON+ul)J8Do{qh zTJtMU5=*j3WpYHAcGreQ)$Ahbmn_F&P_2~;x?&HD9516K%J@#{k2zuK1 Z%bXtgQR)-3K?*3@dAjb*0|Qf*r;B4q#hkadPv$inFfasK zKl)#P(^f%snz@2b_5ldq3X3EG$W>g<=i_uHx$Y5rHW@2gf$K5Oi_ zal%pA)YpG5+~WQ`v5J4)@s)PhA4nvB46L4SAJ+Br=(0Iqk5!wUm3Pq!%P*99R?PB! zTi`y$XO`jbK3U(-w)45q{`!%{d6SB@7I*JH4Ec6+))%$=4W-}%IG9mg8^PqTFh$H%e{S7UqHKhOWE{!`{)^!utS$~}3z zxc{olRk8n__3>a)$&PQjOM5F1FPDF1nfT$E{%bdl* zC7(O{BkSIsmG6Af%ie!ZUQ^yqJ3g=UZWSZn?e$Nsy0)J^^wX6cBa!@O4s80Rd$6PW Q3@Gt=y85}Sb4q9e0QY<;>i_@% literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/04-op r,imm/test.gb b/cinema/gb/blargg/cpu_instrs/04-op r,imm/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..58ca7b8ac3c2b16efc9c8e401e790671c00022a2 GIT binary patch literal 32768 zcmeI4ZEO?g9l-x~k|Pbqu|w1yAuneVtPr4hD}zWgk1{}@y`p91iI-s1C}m)=&Ci}PS^)m|6_7tDiNZ`%vs1o!oe z{kL!2xc1Vyb332yci*{q~E)78){-D{jD zeGra=>Vuv*I6wB8Q-VZ*2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F z0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F z0z`la5P|t3>m;#d?jCJ;y z(NpT*EU`-esoHf)x?9lnDOH~z(_3PCdrUv8YL>nv_Rt1z3kfTxm(`eNg~hCOK+ISN z#T(Wk@tPG8-?WCrD^?1k^xKxD-l*yzZjSq=?kNHK+9yU_V%t^wK0^d!2$)W zC96Ld6P;zq=)J0jxn}io^-Is}-MeEuWEjMs8!uKH!OogBoj1jLKDU0Lf5*d_8e^a+ z7(1hG%Jj_o)`E(%V#KuN$4O6#bXy?OM>2rSBUr#FwTmp7AScq2w?mH!p0%GrK}Nw%0)h zkvx>7cI2|&euXTWYc*Ih*JfzAs*0^xdYiG+J6sl^>G-cVwl^OteOR31&o=GqtPeOXaO2HrJ}~XrpNYEHs`Z3v(ffb)Do!P z+_fG^n0+B z5|)BxFz2h%{Rg@U+jqG#k@o{&g|{*V?UW?oZv3NIRXH*&=H{Lau8qe>PJ04Q^gX@R zU)#nvetKcR^RN4UTbS?sYkNEPbnNcfzf5`~-m4DehkrHTzm^|4-eC^sNAWt6AH(Zt z6i*cWujBfb^ZKjfm2Cr%@!d;w<)$aQa(A&8C$o51+?!-uax;^-Snf~aYSfn|^^@bB z3o0fK$P}k1^_yxbEeXZD{4O(8S}L85l#9$_8(ElkdIBLL52QCyMV)>fbq^iM0=vqSBu;_VBs}j(Shq;o*Gw z@Zp+M-x&S=YewCKwf@_yyY6kMDgJiFvDoHKU4Obf)p$0ycGVk4JAV=A{mHY*l}~-S z_D9V>aDQ%k@6{uz>&dF$uk$4wt@oEBRy6qNu722&r(+5wdJ4g-;aBZTj|*pCX83~lE@ZY zjASj=z$9OjAvAufMw(#@vAPWI=!!CGOuS&OEogXTwip9`|B@x%g+@!$qC*&CI&br zlwdii;FKsv(P5Li#x2(j$dNKZ2`(*|q zI*2L?L==Vp@VP9@=r~cUaTKDX_?o>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F0{;a9e+RrWAo2hJ literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/05-op rp/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/05-op rp/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..ca6692d9968ee77452676b20ca0bc0713e6b4908 GIT binary patch literal 634 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|S$zr;B4q#hkad@8&IXU}y+T zd;EL+mPhPZIe(hQ}h>MZPYUy;dLNck}Cmd6%l!v6z3~{PkD$_rsfX zlF#k*+cEEK`g-g6Pwls@JO2IuzDghdTl}Z1*xuVmuD4k$^ly3g`$hfVA5WL%I&Yx2 ze%EWy&8GWy?mm9Ed3&C4xh(%<*5xk)zk7ebTmPZ!z@CZzn;sDe=yzLkzTJ-Ar}!=P z-{d)IALbNiUsRd@x}f&+ysc5E`<{kde?NS9?%Hm~ z+wl1Rk*C7^(T~H+j&6?K?Gj%(E3x)%to`XNru$~h%`e*J@_yz)^W^_l`|i~1KM&NI q-TT?mea?YGrsJG4>IG27cky!u_eHK9T=5>1raWE!T-G@yGywo^C@I|l literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/05-op rp/test.gb b/cinema/gb/blargg/cpu_instrs/05-op rp/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..1c19d922f728bd11dcd8b289813fd0409f438157 GIT binary patch literal 32768 zcmeI4Uu;v?8Nfd~$t48iI3#12{2@0ucp<>J9fC!gIm##kRUOS<)=E`rZ#B5I!%6~Z zV2I;7$;7&8539O|@lu8+wVJfSkhbwpo33MQb7w9pT|pPENv{WHnnfeK)m?)L_P%o+ z*w$`&m^7){z9XM|&UeoD=X}3=&bfIC!2fwkG`p{UpsH7v!jhVUFaaJ|3iVB$uYM1_ z?_C+ZGc|Sd_{EERzd7i=du8gq<0mej-^e~eEQYen8B;yq_{7|2Ufj_Hn%CF6tX;a_ zvQ+vwoB*v0`V-*(%&(jlNCb!g5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F0z`la z5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F0z`la z5CI}U1c(3;_}?OskS1@`$#b1DTy?#D8T7N4ZT7xVqZPMEe|3b4u}ov{R!54u9Wi{` zD3|n4bI?U#6)R?qS>x7(ZYQtjx+W^y*FUxX>Gh`q^_jlRicD*#?0X?R^TCcIGv@}5 z&P+TrG9#^)ZU-u>4y@b1Za8}_UerhPZZndvF~wS@i*A<4yG-3KH(YvFGh8Mvfl2di zgVSb>wDuQUtTEowde2Jtin=kQ8O?E{BX0QP#sy8cjWzLyHrOpD?YL3V;<_CcbM_H2 zYabP->=E&%9TBhFqvAC?8Ai1uaWQQtw>~L;XeYPr6z>|(YIf$!#>RN@PGh;D&z)M7 zk`pe|PKq8oi33Z#yU)M7EADMDcEwXNE(S9ZHq^c*&y5X)Q9Pn&bGF~#o3AxT^L3b@ zfVt$1eR0uUfvmAp({ZgiV^aJ2iw6(x*$r6+iG7o$S~J*Fx25Nn*vRL$4Gr#jI8$d1 zl>~Ed^lZ;!v_uH_MD?=kDmSzXu?==%4C^@7i48pQNA(uIzC!Gxw5%|8L0VcEKQGl6 zCeBGUi2=A{nHwHAD)fk-`bM}qFcZ%`zOHMB6$uxLq_cp~U0<@m`aAY6_fMY8{+@er{j?R>Vg;<#RyQkR&|_B1r|{{?0ihnvd>FQg&7wOc(IAmY21y*@|1CA zvS&rr#0A;X?6h%9D`zC3bdUG4qvhq&g-AIi{W@_Xp0gKPL3VVZ+3-S>M;4kqy3pjv zLX+42b5nf@KpVhXfEs{i06)NDfE5610K8zVO?iF%Vev-+A9~lW)bswQ{W)y$5MEC{ z<=^h-1I1`IflwQhcn~39mp5Dpj!)d=(Tc^Wwjo)lP2y z>F+*wZtaQJQ+ zn+6Z#QR7y|?KCbJpXeo-D|MKuddz`IU9G0j@})XyjHQFkg)StwDu>hz_Ev3K3Q1KO9#S1^tFYs;Y*<7+;Af3a-m(6<~@oh#>)I z(M*LPU%nUwffuwxn_;xYRC$R)YNmW6l}dqnC>ljWzFsUrCmt#|@}baXN5+smevtb? zh`jJPSe$rjFen20x>24%e`=5~ozL?nRJmZhm5$j;=;zrBZU{Sa7<_%9)T8$RP}UTA zUJMEh{X2Luf8eAQo)2^4qO3+yZkHp7o!j6z6Oakw!uTTeVFY}SNFU2E!VB^I`y4Td z`gb`1Y^(a*AJ4xkM-;~&I^;6vfimBC_#Qa{FUmX&|F=urjK5$65aD~(0Z<*s_25f( z_K#N-Wp3w$M=ryn=)q;7p7P-v)vb$t0OM+k|Ft1+T0b-_9T;xle}34Oi;Y=so7MmQ zTb4MMHl9x#8#8!}17i8nxpAD(g9s1-B0vO)01+SpM1Tko0U|&IhyW2F0z`la5CI}U z1c(3;AOb{y2oM1xKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F0z`la5CJ0a HUn1}~7IqB+ literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/06-ld r,r/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/06-ld r,r/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..da8a4ed838291cd54ffc85c5b0c118b885df7478 GIT binary patch literal 628 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|S$_r;B4q#hkadFXk$X4Nvt_QI#zU?Qv8W;)I(qh2uQK;dv^l<%vN zJYFa_Ygy*My6l?MHuc$`QV%K5ex&Mm_|by+zTYyLmj4ojp8hj`{*?dp=dWA&a(||M z>ervO_;dZ#><5K1%QK^iRyA~Z$-D3ACFbM_wroSi`|UZvS(kv zEGM~r-K(?f8q0T`tFuvl-zOidai05a?4t5{9udc)?SKxj>-eR3e$GMn`~%I^AD%~; gNk5mDMUU<~@{=9Tih0XdJOiaBPgg&ebxsLQ0JP5$wg3PC literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/06-ld r,r/test.gb b/cinema/gb/blargg/cpu_instrs/06-ld r,r/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..d497bfd1275361bc847fa94dc87b43729f180b5d GIT binary patch literal 32768 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/07-jr,jp,call,ret,rst/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/07-jr,jp,call,ret,rst/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..b517e4e52ade2a30aab298e5fa60440ce87e40db GIT binary patch literal 745 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/08-misc instrs/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/08-misc instrs/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..bfb6c5a695087075a5febe0b7cdb9292ee445403 GIT binary patch literal 696 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|QgNr;B4q#hkadZ}%-xU|ynhV4rZ+z1;Ym-hU_LA`Hy=~;ms*QQE}I|$s6#O7ENG3{(r@cpi}<7=d;aj_**@#Kl%Liil_JU z*3I~P@0j59y^G8H9{t#QFnjl>-rwE3>*s_=rWa^z)tvX@Z|Ma7O*i++tqiKI59&L+ z@Y|2S<%?GztL!Xg+wNb|V|dJBf8HOD;+IkHAI;95{M#|M`Sstmf8P2? zi|-8*rB@5*|N8THS-^fF{XI_89jD!PSYdyFPiDKtzw_qe$ItiQlY8}-|AB#h^Zb82 zyC&{`(LhWT1y>wD)#9&{@Ox1y+y0u|iG4F~?XKSUal(74*ynGKmTW&Hbp287rgYna z^WXf}8~$5#ZP$x{nTf~460IWTFYa>vUQ??aFL3{c+?=`mH|u`p?EZbdyu#@?vqg{n l=~B__u7`hi^I@c!@BDndff8$T_tt_^q^GN&%Q~loCIGD$JGlS= literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/08-misc instrs/test.gb b/cinema/gb/blargg/cpu_instrs/08-misc instrs/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..4da139be35c0f82db12136c2b65b2571122a026b GIT binary patch literal 32768 zcmeI4Uu+b|8Ng@H_Hr@D*=M`WVr;y|=432fjs{X!Jw{H7f~wSYRjD9F&@2ipg%dXINMc{<|Q~$l+srDqezLWHc%c~{`Fzk=R13KEP^(mMZ)%8z*IdE>khPyeZXzM z*#p{=$`5^tns2o`GvCbjXTIOg%-+)x@)f`0)voiO$?~}+WN}F!873aGgt&bTul|B~ zub%6^F*$kV=-IQoUg-ATJU4mu=(}f6KS3WM76X}c`edp0k+CnmxXDKpZ)Iy$op`5a ziTHUqPLxK{5ht!M{mgNKNB{{S0VIF~kN^@u0!RP}AOR$R1dsp{Kmter2_OL^fCP{L z5Ghhl-ykD0) zby^=+{%#2+`bSFZNpU`>>9dMnt?Kov-lXbh6wT6CsSj+RnM+uzZY!#0g@qZbUr1XA zg-Pp>aK(xUm#hKdqLm1PTE8lcTZyNi6>eFHjh(_x{W---eM^5r&E2Rdl()N*i;{sj zXIKfrV8Ej?p3HMM3+je$%VB*;T9 zGy03F;Ic_t?^HCH>x@3C{BV0;-_9K*O-cO4(R`^9Y$@B&a!sgUV;g(AcRm;?GkWs8 zu`7DAUE)Jg%Ki6)rwWl-0pu}7RPX#q$Z%Tht(W9!q zIi+_g7A?^m6zZ%Sovjr8_hU{j;K|bWkLKd9q%1b$_my0MGej>-?3wMmLpyhrlQbZC zAc;-DWux;7X)3eapvg>wp~0%kFNf3{j9tE%&6C<=f7sMicc}1l(Ha1y2^!)A@+C$A+yz1ACO z{nV4%+cK|e$4&nR({HXcn`sV$zHHWf0iTxW;@x0Y31NM74%|s8U%*A*1N~Q+KF4-w zH6smLRTlj|YnF+IswKPuCr}=mT|CM9-*2g~Xa&loXE)i+Y)7gK5L@k=2ZL*Bc*W*38^gYi1sv{L~B_7I&uTQ0DFwES7syup0GsN&UoV%hI9= zN7DJZDgByKNQr!Yp0&~gg>~YYNFgcyG5)SPV=Xj;^uR)+;e`hK7aBac(BPqk1~2~a zrdoD{m?PvCA)gYGAF(qdwtK|pnmAt**Vx3ZZQ?9K5`wqJJ;x ztz?DCiYycwEo6?^^eT9vXEJZtv^o=;rdu+Hr|GXV(P=uJ8JOm)65PmU-=BZgn4QYG z$>iGTbbM~g?V4QMJFQnF@~%n!^|5@3Qy#Hdd&DWpAR{QKuYmN;27#=O%Z} zYn}Gj-hSz$^*bM}KhFQ;sSDwL^|*X=-IDa%M|&>xY>PL1@Y-nZH@DUJ)v(fbjeC8p zV&hvY_I!JL;&(s3Grjsp32ynFlJJQZKD)7SM6^^*PmMcg$k?87_?B!PZzMy2;RC2& z^V(3;n#?jdB{Ovfoy*i4x^F_*+DLxMm%_rn+gv8ju~Xxxd?lPOyXj$g$bWyz#7W9! zy5Nw7AmFdd)_j{McqzfVYpZ{|Vg-0o%S8AJ>W`1p5wipQe3xD~H^tXaI9)!oBc~mQ z&t~jK3?{=qoGtY;R^u|GwXjHhELRX);Ilbl<^I&RzWV@dVrHe&379aH;3YAWuQ!rz z$bpKDwFY1F%`)*WT?W~u;ixDogU01o&8Kr3oW=D6ZcC=_yjE`$mpxCs%c6yzfUkwZd2O1@0$o~&!{k-tMc9*?8vtpmF{FX?TEy1kbW zIcNuE7!rgiI4oX)fCP=`eTfiBA}-zo4m(It?%prUK_W1FAqp}Zh?1yB@bJ*@sSAdp z5GyK0cqRuWDZ=!lOf3)qeVN^?ro5+}#bx*XIzU*IfWYPo;o*ihvn zRdz*5a<*_enM@LSe>4h)Y`$;>op_+&$ooT2Ix>W0@q^3{Kx7w-1D6v|4h97RzAhJL z!JiytQ)lCB3PmmuZ@FW(oOH14c^3&ga+p-MhmsH910e-P3fvciJO%#_UdW#?(h|#u zI&ndkqafD>B7mLQKtJVy3E+bG0%?Z`@E(CaT)hA<#PV-<#31P3WB{Np>N9^V|Dqg` z9Dm@D$&3fcY~jIsWCXk*voP!rotPPW!2lq_)~W-b*bno8m+Y(`uOI}Nof96o^a_Fp zrUiP^t#^t`7utmAE#vHWOrX8(rQLlmh`YP{ezvc#oc+A9OpXqkE{nSV^{tGXb*0|S$@r;B4q#hkadFZ#W55OKJ8 z?Zf~5cYZtQ@NNqz(mYYNR=m)};l{ki2L^tZO)h->`p){mMwUKd3%>^zjgN;j<6X%= zqrS&`OnfibRA$fh|7cnhK4;m>IR$;Yww`0R)ZPE{f6Hp&`qHiCVefxj z@%6%)=IXB;efDQwAO3d4ewVP!-{18|Qk%m6e+XaxVXE?{7rB!6wRgw4o?l$~VeZXR zf1Vf4euoWwE^n!M5Ek$Her5IJD!IK{^Pc{y{667!#U-{6)n=3UKXo10GqHTrBLczw z&g4&DaOc07^%G9BSWlf%vg_|-+xZm|WipNTDs64&4kQ@LIC1xrOriQJM0eU4D2= zFwKvo|N5DW2?_#&fFK|U2m*qDARq_`0)l`bAP5Kof`A|(2nYg#fFK|U2m*qDARq_` z0)l`bAP5Kof`A|(2nYg#fFK|U2m*qDARq_`0)l`bAP5Kof`A|(2nYg#fFK|U2m*qD zARq_`0)l`b@V`aCFSi{{wOuH-q1*IPC)9nNhVnZt*&CfI|0yBFwOp@qc<4%0HQZXZ zw}DIQKXXteC~>_}Z_=Cf7S#wG=`CrA&#L@Z<-E$B#2qy*I;pCu{qNq}m;t!jGsu4>+xWKEKf;0t1 zzSyQG+K|@a{evMTYumimeeyt5)y{ggkv^@+r8x___Vm!ry4G) z*H|HijK`$o#!Bg!;g*gV4N{L0aFN;ypVVOlX51`&ZUkn|kxpw1yau~YyT%vo%ZjB} zC$$f2xA{#$BOqlM0lF~4a^L>Lclj*o+FibO8%>5XF;7f+&UT@x#zo=^HPmaAmRiFp z!G>@uC1|ExdbJ0AQc@ftZH`x^x%O&p-dpdfufP93gcSH6Y#U4o+AC70R-BTu_}I+4 zCHH?hk{YZVGzS-X_EiigOM*aWQjeLsxuFqhoM=Rvs5Vn=naC5rR8P_Ei!`>%xsj#= za%QA?znm6nc~4IE*Lby{&%fVirEEvIcFTWO&rOQ|E{vc8eHhg&s&T62N+Z>{K2CX5 zFDseVt-avYJU(qww^rjdlw_^gt0dNq##f5=#=%4`Nfa{w|Jv5Q&6_> z#Ae;Ixc2`0(h(vgUrKT*ahaL8h01TjV}eRYxHzcNsu~E&K1E`-Lw4mrSB z)|DTNH0>yY>QH~D&v z%grFvaJf;}wxvZ zOTf#(2H+>aE5IgTGq45tDex+=75Evj4R{^c4(tGa4!i-p3G4z=LBD6g6+jU%4yXjC z0x6)swqO)c2$TU606Q=Y7!70r#Q>wj1eOGr43+|x3N{QZ4Qx1AI@k!X46sbFEU;{_ z9I#xlkzk|1t^gYiCV}OF<%1P~6@nFk6@$rOC17L0O2Nv&#(`Z4Rsl91%nEiD*aWaj zu!&$cut{K5VAp_M3-(p8>%gkPt_S-X*c323*i^6^V1c&2!xEvBTGH7utCvoJ-hg$s zwZ=N%y6^};g`$31z*&Kiue2f7BkQ3=b6ABbE4%pd#z_29$36G`)B_!F^nCxJ=5J=1 zt%1RH8(#5OZFa%8X|cDbZOh!u8#;$Ktb4xOX`A=rIn$Oq)_v!ec^5W6HKTu}wa=YA z?IuUy^?e_{_1Wgf3Tn=eedikU)V&?{tw&0IA1q&^Z&=@IS$?dqdD}^+=BoMqGlwgc z)py?BF(5D8|N19gcX$4F^^af8T;*7E;HoR9uWs3$K7HfS^=tF?jch;iVN3V-H{sf0 zcSl0`5B%uBliN1WGXHG(K+D&2KPyP?Jij8m0kzvR?`HF-7u=k&CoOpD#$llsuB|Us zrHR!8JyU+Z;KTO* z${ibDKC$(9$({|9H~qS^>g$#Zy>tDyE#G=(yS~x2t?0c!x{p3GM7-u;g{s6%33HzkAD`{Da=zC->a+t>@C$?i@X7?yCihmj#pmFn8^$ zD<|LE_hfF*=T+>W(ozRtR!?TgB-SI&2ze*e&-ypmamwWDnA;gcKBRb9QKzxC}u zeeF=%eQVkl-tOGB=E^~GDhEi@}12~rKY|a^K!deN6xZ;u;Bb{0n?cC z$*$cM=E%(0v$Ek+wb!~5pT~nYbv5(?ax6`?MuatuiWHKpTK?VNmH07X`J` zUDBN;SZ_|DclL#{RJosj5FapS)2DN>@;Fue>zXPbS4`m=+CNYb@>dgAb0#sfBVbO; zAGv+(Sn}jcm1%>geXc6c>C?#1jmjtbY=1UOT*}d>Mb%xjBW&zzq{;9-VMS4|QBn}J z#)iqmqcOQ6UHiDph`w9-)g_P8_la9+d5k7ZXYvy09V`mAr%?`yT#_F&kE%+QFDM0+ zU5LJdL&~IabhSPss?s*2C|FlsK7M>oL9i%)>`IE!AL_ZZ?Ui_egxcEL#7?+2R!avU zDGs~YEx}nU*&OXZK;h)V>N@8XWMt4gii)L>>BQow1C+nqEZNgi@IRBSc} zbvzd(z~MlWIfEQdgWb905vS7*iQ7valKFrKo(w6&OxH6C?X@0?<#D*pT(&zLZm#d) zYBn3`JNdy|#hg*i|B@P7=Iq*20a66s+pz98Y zgZ#Q`ola-1i{d-n4hPLE(K?_w97`x9Xq3#Hu=D9lc9?k~JF;0ywv;L_9<-m09c^!K zhw~AShYb0Asn`?oNFgCVQad>zQ%D})&ixQXUU(cTiFi)CT>|+!8aqq=oOV8SKF+5w z#D(IGNtlhnG@iXV39f|fLUwg+`=$E;#JmpMMbU0n$bSMabx{sWIg=8Lv|Er9f@f%D4+3q{}=q9B}PcoFWzwQA2tzFs+UE1PqdXCGb*rf+2 z;YFMT0YN|z5CjAPK|l}?1Ox#=KoAfF1OY)n5D)|e0YN|z5CjAPK|l}?1Ox#=KoAfF r1OY)n5D)|e0YN|z5CjAPK|l}?1Ox#=KoAfF1OY)n5D*0ZO#*)bMsZX? literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/10-bit ops/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/10-bit ops/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..476b79e2731d250fedb3de5c783cbdb382ca634d GIT binary patch literal 664 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|QgMr;B4q#hkadFXk7TYFV~6aqEssske_rtV{Os1Tp94KTu&MBiloEh@3 z7iZ2oCh^%O-fl0Co|%8_ZQH{q(<>*Qm#mR2+Nu`0>Wy6Sy{dVy!+$=TY5Bpj`FW+? zj#K=s5&ZkkRN7ehoqvDV`qZGrJe&puWkv3EWHzbC)G?Z?7x+wUKJ_vzaOCd<6_ zt=FGh+Mkq*YSulF%=zct_YbkxZZWqWkm*=|kOO~g+&TWkzRd2&^1t0RXCK7xD_{BQ z+`3cI)hp%hvXy?avAKJ0+3x83_7dOAjOI()f1aWKYt}*bSo6HM=63hmb2jZedQtaR zRohy<_j_mO8@%b`-~8EkU*5&^v=4W0?0)?CFVdQ&MBb@0Kn=pl>h($ literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/10-bit ops/config.ini b/cinema/gb/blargg/cpu_instrs/10-bit ops/config.ini new file mode 100644 index 000000000..2c21cd188 --- /dev/null +++ b/cinema/gb/blargg/cpu_instrs/10-bit ops/config.ini @@ -0,0 +1,2 @@ +[testinfo] +skip=600 diff --git a/cinema/gb/blargg/cpu_instrs/10-bit ops/test.gb b/cinema/gb/blargg/cpu_instrs/10-bit ops/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..8988458ea0eff185d7f3bd78ff85bb7717edccfa GIT binary patch literal 32768 zcmeI4dvp_38oi~z4V`7uv(jXK=+9GPz|xr1ELesUV0gf$D8JyZD~1HQ(r%0 z>KxFJP~yPgDOtxSn`lru^G zR}QiOQb?^-m#I~1wXC_nYE7>WjUGI9@DqbS$cn~1?2Achrua$rwhIM|+jbQ#X{&y+ zv`ri!p2-Sj%o{X!P>J`5Ga#4y^qw+bghz;!WI->vd^(S;1!MM2a40$tr67sd`Gk<5>&2e_WqZUP{;J(# zw7+_n7~v{%C?2P4w=;*T?QZ{2yd<~Z9Xja)j|A#%)Z(axsAWl&)I#b2X_1+ro;=ew zeOe573CRsf>`z=qg_v)^|quv(Dl; zO$__#klm!7WHjZRip9CvSDf;8HS0b#OC6wQN&yP`qMGSB54TnP(5v zrmqj5d>3pldU9e`bQ;_Em~4vw$9+G^&UXH>`I+-F=VmS%B!1y4bQJq5w-sj{^Dp}# zQ?2w@(S4b}n(kE<^o^o?*PuMJPubkiwQT^r=~vx3zRM?ad{?M-oM@#li>oK3WZ$(D zv{*V%&}vlL_bVSZWcTed(Sf()@(Ja%BZ#7*;|d#j%Y*IWp0eP6affSzvsJrQ2Hx^p z&Dw7@x%gI-OKvq;daKDJ|GBA*`G6w;M*`jtI12CqzyiRZ13m~i2Jj)khXD%#ivS-1 zd=&68z+V794mb|*Nx<=dPXSHZf>z=?p904;!%0jB^?1)K&r9dHKVvw$-JX8}G3 zXak%LSPWPKI2Ujp;C#RZfX@RiqFn~K7;p(-DPS33Ip9*jO2B1+Re;riF97}u@YjGZ z0lo~l9Pl@QD*%5B_zK`kz*T^&0oMS&3iuk}8-Qy8YXE--_$J^wz~2LI0Ne=p7U0`} z?*MKB`~%>-fLj2!0@eb)2lzhVHo)zGe+2vx@FT#F0Y3rU0aypP3vf5!9>99QPXRvz z+zaRcbOJU2x&Ze9x&ikC9sra94+0`!6QBZk2=FlA5x_41zXWUs{0i`EKo8(Cz;6J* z1w0Pe0(cTo1@r=*0z3_P2Cxw|g&n1$rg&VBpGYWpOhG2GW(Zp$cs}C*x=*rfWds_@Urwv%HW_IMi)@#+|H9cl-F?Ro;^JG%g_jh+11`X?dEv0+X@QrcfT0JSVZA*70 zZdX}{Z-^nd4ju10PJbWo**XnnlKb?B1pn9UCWQj{G67=ll90FO&~z_{saH9;#LEer4muUR#Pv z*XsKWZ~kq!@tZ=U58fVKYuArCG|#(b++#0a?mRj+-$w$+odVlfsz_LJ8}Glb-SyS1#Vrxs}c4Ovkm@H z!Ih%sl$Fo@;T@O`RkS7MP`}(5qFze$CDVb&m*SBw`%*p1aTK0OhqZ=C z`i;7l86{q32Y_b{@pM#}DJ`W2|Gq_uEt1YxMCT<6LjH`LJ zKyQd8hxuT(&RJ-+nn7UpLIufeq5>*ng;)bUk4-V#DkxTkrOd!&v&B-z^edQ}$wc~A z_F=tbh|Obh+2?w10v5$2uv{rTeQ3-qyW&v26o1wniv$8WsIXe0%xYyHdTy~;$gkaI zwOVaZvn|-nL{CgX35M7W|qES1_Qguj%-TEmP%z;1vIt=k2W?of^}g< z1sSq@=`x4okwRErX!~hcrjRVYnfW1z>|$}~3dggW%>t0Gqro=vXEn3b**r_3iwni; z7dGn$`K)?_9_(S+4)J-m#+&Z}An34|u8U@aME=8gseWLjEvz0X9G7Hk1<5I@i-maso^$YjQYWVZ0= zJu(7Dl35t`zuA}>d%*;tjIGr$fUf715545@`Y{TEiP?q26PFS}h^4eh&vJ2n*V3gi zfYN@D{Yi4SY4DVp3&i4*`7!LT6iwAh%T&E4MgQ%{>v|8BYE&j1qK%v-1aIz~up55k z1ULasfD_;ZH~~(86W|0m0ZxDu-~>1UPJk2O1ULasfD_;ZH~~(86W|0m0ZxDu-~>1U lPJk2O1ULasfD_;ZH~~(86W|0m0ZxDu-~>1UPT)T!@K+QR9VGw& literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/baseline_0000.png b/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..6f1933e329b459d0983b8d9dc61a059e9b37bf44 GIT binary patch literal 685 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|Qfur;B4q#hkadFBUZ!h%j7S z^7#M%qF)P?oF{pQ1VntdDK#=-Ue~ZqaeC0C9sl<2Wxh4N@gWaSdV&S>VM&Q|2MXBQ zj1A@tbD`-km(MBoS~+FYjYZ~l4%cISzwhP!Rt=7wvx{H#em`UWZf~42zXW=zqUypXbs#&R5<^=PaMw)caOH z_Wf*r{KU7_!F%n`d+rtb!K^R*#^l!`<+`qU>sZdd&b{;RY&qNe-l?<8=l)dPF4w>8 z_CvWC|EseVe~9e;akRqTGyIePooU;CEh=54pL6_U_k8QRQ-bdg-kLx#PNsjk)YX0V z=lMT#ZO%Q&)ZC1van z8<*GmU&$7zeta@`MegSwT)lDjddKs d(SVUa{%fdwSGkz5!xfYaJzf1=);T3K0RU(1HM0N! literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/config.ini b/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/config.ini new file mode 100644 index 000000000..2c21cd188 --- /dev/null +++ b/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/config.ini @@ -0,0 +1,2 @@ +[testinfo] +skip=600 diff --git a/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/test.gb b/cinema/gb/blargg/cpu_instrs/11-op a,(hl)/test.gb new file mode 100755 index 0000000000000000000000000000000000000000..0634b7fdd19bd62c16860ab1bad05760d6ac5965 GIT binary patch literal 32768 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 HpAz^7^EI)n literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/01-registers/baseline_0000.png b/cinema/gb/blargg/dmg_sound/01-registers/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..9f55ed942a1ff02ed3db2053d3bbfa538979eafb GIT binary patch literal 699 zcmeAS@N?(olHy`uVBq!ia0vp^3xIe62NRHFxc>b*0|Qf&r;B4q#hkadFZwkbNH{#a z_Tk_97=4cj-M9Di91l+Ze0N0;W09NT=F>~3sH|JRo8Mvo=>r99ZN>(38XxlTq$gM~ zAC{CjH@t;*TlKHNVEv8NpT*v`pTE_fKA+W# s+x)?oe|uxX3vcPn$uBv8o?3R~ua-B^*4%Q}6_hAFUHx3vIVCg!0C+w*&Hw-a literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/01-registers/test.gb b/cinema/gb/blargg/dmg_sound/01-registers/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..69c3f80cac1b3fcd688735f9fa99140e4b5b4dff GIT binary patch literal 32768 zcmeI4U2I!d9l(zr+s#tPNxD$(va~twhw(x~Z-<&%ns>-b*Jy$@T?Y*D0M{(OX^^oq zr!?;BxK1+AHu}JxSQxONA*6|qQ6A_@B^LME&Ti9NQL%QOw8Hh6BVl!s-Er48&3yTv z>on2|ubUA1AKl~g_5b{xbMAe!X@0VW{I3-yGQNJ`@J8BH?)ZakN^@u0!RP}AOR$R1dsp{Kmter z2_OL^fCP{L5B}*q`&5?JeazIivN3&&YLr-`{%Q81 zzMjqMcX@p#tgL7DU(pYXRaN`cEUfbhSTk6Qwnt$nw4F*7zkfbp;5RVr_aWcv=V2cd{wHz2aN2(Iu5f)Zr1k-*L}B;lGhlb2hQ{9k-L-`D|fss(1bo;*(ygzR+5)7R`T ztw@5>RpGBC?U}5w*}m_<4zXw7ft@>OC^|^TLWjfjzylA{vH0+z@b-8(G)Ri;iKd@v zr%RSbTLTE+`;m3NJr!SVH=w}Ym zkSvEEKVIq?^-+WGxMiis`4KBISzfVJ4}*&IP>hBm5gHE< zje!=s17ac%>msoSaBSdHa# zYyQIyc#e%xu=U-L6@q00jD-eQ3_%QBUwJuevn$?Kv+2)}V#BuanvecVtxrMUzozLA zalQh+w?ggU5`DC!roTYU*G&F%%zP1gCLym8GP3%Dxcv_+6i5D&Q(W#6$$8sfUMJRJ z`+NPIeP9htej`>-o{`jcE8~1!z1lr-t#?h>&NjsX&ix3P%?b_~mPF$WCNWk!jS}YlxH+PrQh4J!4 zAz7X*R8{L_*-cW^jwvd{TGDi7e`s_x47Y|6CR86ks<7wQi&p#1S#3jJ8_R1yg$u1K@W&#nm!zo)@}5u()}TG2z+HherSVgw zeLZ944t@>oY)*5|Rkh!qRbD!4K!(+ttw258)ZWl=Bs>T%1;&8-^#Wb_WQDZhK0%vGmMlS zGb~*uGiu3LngZZY6^1tVl5vnvg7{~vV?|Zln^$_~a<+{(8xkk{uF9U;kEoGRHDPXv z6c$>ur}A+4ex3J{Ne|H~&_3%ip=Ism=>jOP+T*#N_If}N!o(hv&2XZ{T(!#iE*u6>{0QLRybleTZpsQ$5MXLJlc zXk1JC;T(huzhEU-T6&?7Z-fjO^*wcqQc%WN8QgHOqdFi2c_THjq&FLL3S&v(x~ zZPSGf9h;7VkL$$?tFH}#7b1{IBx1cuBDDxSga}Lux{?BsBZ4U9e?U5WI|DKKKH_$} zEjdpo=yiI?NC4Wv2qALN49c)12q`dFFQOj zkcTe>iHjG|1Dz4jg;aS-k^ExqQa+z2^5Ikp6nVT*f|frJu*QcYz1A39a{obY2O#po z{Xnt&$-$sNz}BVOBG{9IJaoR!L#T5Be;X~ejiirf@3NDGHBOM$KqSAq4}{caC2?gK zbTP1R;f4GOCoS=OnB^D7atg+sViK@(9hhe>U;?b*0|V0nPZ!6KiaBp@A1rECU|9Tccm$^FK7HXXPoOm0R{aI1Fn(CZDB-(S~|D^tID zTeiv_}ij&jRlM8vxUyB&*OTLoVK!5n@eWYal?-dLlY`H!V{)V$bw?E7AsMYq*! zcA5PuI_)6-dR`LmpVpU`)}_7OK5+$*9b76bz5l)U`$g6Md);ikbM1Egn6ogt?3Vof z-&G+GYYgt#{5^KJeP8;&3DeCZ_pN-Gx$C8#=H2A4dsd}ZrpnCKE7mXhW^uE~6v#dO z-0I@N+KV@Bb^iLjSsylST6o)~i%cj^s~S5(x;PqKP%ln+4lBT%=LT1AFkBv lU61@@Epd*s9wRw@XMf-Cs&KqO^b#n^db;|#taD0e0st^PNk{+y literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/02-len ctr/config.ini b/cinema/gb/blargg/dmg_sound/02-len ctr/config.ini new file mode 100644 index 000000000..2c21cd188 --- /dev/null +++ b/cinema/gb/blargg/dmg_sound/02-len ctr/config.ini @@ -0,0 +1,2 @@ +[testinfo] +skip=600 diff --git a/cinema/gb/blargg/dmg_sound/02-len ctr/test.gb b/cinema/gb/blargg/dmg_sound/02-len ctr/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..7b7a51a45fe3552df5f6b716646d535cc2a24e78 GIT binary patch literal 32768 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 UM~6|;2bADEUHx3vIVCg!0HMAqEdT%j literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/04-sweep/test.gb b/cinema/gb/blargg/dmg_sound/04-sweep/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..6000017017e260784caa0ebd25bade963d739939 GIT binary patch literal 32768 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 X{FLC(w3_`WD9L)d`njxgN@xNAQq@e> literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/05-sweep details/test.gb b/cinema/gb/blargg/dmg_sound/05-sweep details/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..267f43a9aa0bf5a33c33706cec4d43642de03d27 GIT binary patch literal 32768 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 KelF{r5}E+k4PJZz literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/06-overflow on trigger/test.gb b/cinema/gb/blargg/dmg_sound/06-overflow on trigger/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..7f8049557a577f091b7851d7dad7bc383b6785ac GIT binary patch literal 32768 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 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/09-wave read while on/baseline_0000.png b/cinema/gb/blargg/dmg_sound/09-wave read while on/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..a39b79d6acb7c764173eec64ae5ea4a9f5205647 GIT binary patch literal 1440 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 NhyW2F0ymw&e*loDbm0I1 literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/10-wave trigger while on/config.ini b/cinema/gb/blargg/dmg_sound/10-wave trigger while on/config.ini new file mode 100644 index 000000000..7ddee425b --- /dev/null +++ b/cinema/gb/blargg/dmg_sound/10-wave trigger while on/config.ini @@ -0,0 +1,2 @@ +[testinfo] +fail=1 diff --git a/cinema/gb/blargg/dmg_sound/10-wave trigger while on/test.gb b/cinema/gb/blargg/dmg_sound/10-wave trigger while on/test.gb new file mode 100644 index 0000000000000000000000000000000000000000..dc9b64a0542cf6e7b4dbead96ba32a85af6b5b73 GIT binary patch literal 32768 zcmeI4Uu;`f8NiR7#LW`NiQ6!4votwQTjPaB^_a+v@Xo^M7AF2=FWnF?yAjPzi!3Kg zx5Qmt&q)Rp!~^vx|GG720qoEpT1tNLXDIXS!>fW;Wls zPNNF($R-}XqkDYLch2|scaM+!lM7SddIoXiq0X(5gN?$bXY zzIQLgSC*IGnOj&G{dU}U?ZWcAbH7|Te?Pk~-1p>{o_OSrN~(3l4PwtzEuSn+jD`e| z01`j~NB{{S0VIF~kN^@u0!RP}AOR$R1dsp{Kmter2_OL^fCP{L5 zBLrMAztskjc7paUHfy!71y@{j!_Xn44qv$UsyF|1=w`;yUE#K?-UfP0Oxx(~>5zx4 z1z!oZZsl-M#Hgp&5*g#%TU%?F#oB|kZ0N;N*6K^|%QfU(`{~WGVAVtNlOcD%<04q8 z|8qD42s+rNbr00l1sUA~+0@gG{(*i{4{_*+4E>p zT13)9>@&;5rED^sWEUSGJdyjs=fvr7%(&F(O{=z9At;uQan zTHPNyLRGw>Z4!2p|0Q!u>>GFdfx*_)kO&l&wx+EaYu2#!E5*QU_0hg>^gYq{n_y!; zlHZ;0=nl6%l~{d$@WkqyL(i?wK6!GL?x*hst34A3o<1;MxCD;vN>jE|<(pZUGP*T3 zIb(r8tNzQD>iA)`_Z+Yc*ro38`qGkP7y5 z(z1P0ddE&mSL{>LC0kE`+KG(xCtH8`tJ1oyANsmAG$S(-7+ zMv?E_{b4bU_?8d-AJ3!P{V_ve@d-l@6cF$eq^E^$Hqe`n#$)kkMkeCJF*-6aF*X52s{o8Ol?Y+=rCF2BmtHX0-%GA}_PdgM zo(-4k<{2r~&$D!i%o{~}V;11QV2CBHRLHhwF)S$ZW6sfh1fXiw1&%$dEF@6x-<6&h;dCEYIn zq3`qYDY$Hf75_{Q(uGg(q8B$_HgkD~fN5&&CM#c$IqSdGZTauIlhqV?C%P>i8NrcEUaeKVraDYUW_@tsl zi6rc$6v$#DMN(eL>w$G|XEc_ASSdN_5pq}uvK9yGh4|lz%Zy0iAf+fIsVL%sby=3dZz85BN-P2K<)kb_Ud|{JCd+XM zNnjVu6cQEbOHtwx4eY>X9BiRf(NZM0T3O2FazvR-rNB_+3oYuz0|iH(jP*M*gcR|k z!Vf?cO~irb#8aYCiGZ)A$}0F%q9S#%FH)#+fp}exSr-`))qC6|;m8Tn7K!Dy-vc3) zMLE1BMm-GtJ9wdfB1p@k9_GXaSxJH18BPLrVFT;T155xH#Ft0}BEWkD`q0J!UQE;< zal|O-UlRaetmzAXqW+qklpTNIP{@J@$l~C^dlUqGAd4`pHbVUb2rMPVS#!A>IRlwL&@7?##J@>rt`|fwo%RGYe*3*V+ ztEs8!`5f>(3dS;UU0wAJxT|p$Ts1XKPajXWfF$x%>2UGgow~n{hD%kn$)*~rz4=OQ z^v+$>)(7FIJO4cFSC;(akYc#IA*Qa)xL6(FzkPbQb)YU0`mGWjew;7lxzXTlP!6m) zO-24R)DSb&@R9K(b;3j`@98|3Mo3G6ssVXP=|iOOO9?ZX0_O#E#M>tsH8UyFNMIUa z8#UvRzdgg`^n@%LFnx!1DdX*}jf=f(Yqw~fk+Y^Vca#+|IiepkND4QRO^vJ&Ro`-W zcoxyMv81H5S}~b8dMKlC@vv0HHR}pwv3}+|ELd8gLdlPAYtXQdXqa28KIliz6C0(2 zia_V~M!%i-)Xv?3C0tljtI3%xgB_&Yiw{{sR`yM~iugXi4cqptRLL)IQNR95x3s*u zgmGh(`e}Gq=pU(ZPDR;`XJ*GR0~^!o#B<{5h47#gQ4PF$;*{;y>Hz9a;z;NGqPGA9^ z1xv0pw%ZI=e7Ld&;ep*g6BQ@g9wzJK&0P9N6ko&KkDv%T5{kdjOu4?;1ybebbkMre z<3_@P&j$>14Ze~sfIA`$hPPrRTYNi~&e|NNe+DWK2L=3#ZSY_FHABYn&gC@Sdns;IqMwkc=_hPCVsME-45f`nq>D3f`N5bOo>^*GL{ zkdb&{QD*^MSv@HVN}Ejx(6aERi;>ueS>0$A+kC7>AFRl--*V5$(F1Qq+~X~w-02}e znxlwT7VTXj^yngz{q~S0@DL8IMuxYJ8uY(xX2PoXPb9v~feTzq9V>Whkch(Nof`Th)*V9`8Gb`41y_;(lz;Ytq2G8SKzQv`=zOJ6x$ zbI=T(7v1L~yN{RQYJCm&amuMMrTp0nfO)`0sG4)L8^aw0pOisJzY7p| z^yL}oN{&>S^tyt{jqns<*_hSuT7w)k67)4S$u_c43oULt}+#>p4t%6sEk+s1d(C!eU0 zV;YaO2&v;6a;Mj25tx!vEro>pEQ_9P?Q&*zR@)-b%GZXC(X;;@+r|iY5^ht?rxi}r zH@)emH>1Td(d0?tYE847PoLL^M3fs+UUXQvI3KH`%`PsSz-T}q37ZoDEqyo83tMb*0|V0vPZ!6KiaBp@-7ab}U|_ho z{aZ;Zl(!UyHvoe2HXhGd7sh_>hMuJ;8$cu%yJf z0|moe$aY(};V}Uxua!3zZU3V;?=gRQ9k=#Bru_7U7ozLLoBf~Pwcj!M(Ko*9>mNM2 zJmJ6BzE#_8;!ST{eYdc@Jg7cv_G&*#pBvWvM_=at+hH_M`TTf+WX>(9i0KX$V^-q?ATCBN?``EqSUkh zxtNFZmKk+y`Se4+zHvpqP;>gdKb>{occ0ky|Cht-$2WIc*u8Q%5&dJ;`{&_o*X%#& zM-q-v+e77l9{*ka&(rVIuBQ8QO;<$Um|0SOt>)Ruzb{I9J3X{QxvX)Ghxk%RfuAs1o*Zw_cq?iBwHAkuEo-ouh+Tfw*HpqrWk8MS)?J@30S&-!ntG{q5UdEZ?}@9<#@-5w6P zNWu48e{(g5WgerJu18ba#kZ<+*ZABcw5Tb$QP%89>{shDjsx`en6K<2nJK@s-*(|E z)xI4_0fKh6W!?vM?SqW&gKTQ)X8%Axsf9T7=EKo!O0&UiRf^|Df|8SNdIp;OxvC}@ z-4On+A6{f-{rn<_%Qj5P3g&K$IrLZ3Y@QPv<(YBlIXxo_)Ol=ddSv2cWR#9c5}kZz z>?h$9^muq=c!C~%s_!t#a({^mq4eIRic!t~HF~IGw2c^ytMR|ZjTzjj#6E9xYbS9T;{24W<`xbyq#xXJOlO19+}(gRKj}8X$G~-?IFq zvQih=>I{%&$KT!}_ICZFvQsy0q09s9?41?U&!%Vix^~yUT&NB;fxtE-%vp2JOlp>L zJ?Bl9pXfc>`~BWO`WiC9%-&3UXQ1Wj=*EYGr#IdhdTt~6gEJfS0R6yM?wUCG?7{Ku z)l^ZlN{vg)Y5kl6Lq@B8qupoq2jqWQLXBQ8_gtj6;R84->yxrRBkM_7Z=VQ>x}S@6%(#oGs0C%iGtecl<-$edGtHN4NE!lq_D0p zr>)Gx`YUpAt+~_~bgK1gKt88fir}^snAqhxap~HdvZqmhQ&t0z3}o#(RQqyZYj!9K z;%P0Lv%0%`@(E)mKWoJDb4F3K&xx}P`<6;;kZVrwl8+5fPL7-)Sw>{1vY9YK{<=r} z{}h_}+L5uy$o9&tF}68pjK(ke?*U7I06#&!RHjbm08^`wIAj%O;hlpwd5D+3^FAgQ zwL;=D-Cdad3vDXQU7`(z#(2gaZMS+Zx}FK;+19n2t^{*7Cvzq>MMV?X>$G$r? z(F=Z8;YjHh)Jkdku)0Z%wU#BP3TN;?ikHlJi2ileOMd1lL(kgs^9BU?mBDW1Uo-UI ztHO`G8JFb zVu|`2^EWY#wTZJGrV1 z8Y?fFj~2D-TzSmrd+@>5dE@@}t}_thR`%-7?IG|+1QHI1?OP;V3d2K)z{HR%CJ-qs z1Vr@(($U`$9Fx9D+-|q6=ji~u4i6a*LLVF_L<*Hd5-bTq92{0!ARxjZUX=(DMdEb1 z!QlW2Ns%c@3K4V^0}j);s1;2pX=D7l^mdHrq!Ac=awPiQ00M zv;@QI&OQ)QS`-6SG2~+4-^L5|6HZ#>^)Ndw$Wk2SjzA2sa~qgvE?@$NVQCffeMA(uH1kom!bedGi@AoDP+(nI|O2&}~T zS+xOF<{=;0Wc&Ph1R=of?C`*4ToBxl7U+pLeqA}bFeU^p7=C{WB~8OWe~|zZKmter z2_OL^fCP{L51Y-aI literal 0 HcmV?d00001 diff --git a/cinema/gb/blargg/dmg_sound/12-wave write while on/baseline_0000.png b/cinema/gb/blargg/dmg_sound/12-wave write while on/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..8b8d9a4272fef5dba66dea0487c2ed2751733849 GIT binary patch literal 1606 zcmc(g`BM^T9LA~ETl3hG@Lbn6Ef0*AiFCa|w3M<-%Qf6h)UZqp&jd^JNLJ7^auvlJ z9rMVTpH_gT)4>nCDU6s^C5h4(CsitXm_7B(}-uIpNeSUbqpXd3$^WHvzLTafS zr~?21EiX^_NyS>C7}=`Z6*GV<;Q|24T3&G1({Z%7MU&JDJJnk_RM(bOJFx!^s<10F z@8ILHSZH6^6BixL*@zAH)rpYl<&B6CXnf)9eR)qo$3aixP(g=-XTme)21HV)E9NXL zjP7ZU*%$WLct_H8h>H(7EVZxw{7vEbZdd2)Ab^u@cidn$R~dBY zQ7Lj4oU9q$hWA+s?qjgyUKh&4`%mNz%8ILh0(i5T1)Z5fx@cOZoZGHeR^DtHU4EQC zyats{c4Xb1fZlaCOK^J9x)`fF_K?PJg3)yXJ8rDIM%x@q+&ckZ4alg}c0yU`?oKMY zXT$n6!-~?rY)yLZE*o6hSozMGTH(hi4Hv#kT~AN)AxdCUR$%-NyP7u#+*#n1Lr>|V zSW56V38(0UEfbRhws?G5-dnag<|t%#1U2+>aBadP-b7cb&V*oH7%W7vz~f6VoHNL*pCWnr%SZn+J3ko(2j0jE#&!jJ@wOlt^R5 z$bbteP;yBl{>~3_+EUQ91*pb6a_f-#5XU!TC&~>qtLRF&10}rPW|oWoJO3U{1CFmVK!HRE?1=B#|Z zOTk(VwufQcH2Pn7QCG{^e4Zs-1!-mvTO{oyE7WXBN|uP2!@gQj9L2JYoigw>O(cps z`BqNpJzsilSW?C~f7lU&0@Vl*fWHcj*416i5xzOIs>Qg+y` zqzvM%N=eH82&7sX-ZCQnIYlALza}n5s33h}Ip^$q^%S(mMya2%2#TN;J`%tN1_z8+ zg`bi|PLtSE*(20g=Jq+JRWh+kfH=;KNO(qroSY_kOt{go{$pmj=bJ4B*fXyZ?0dzX z{F`cyn}gJ8tybqcHs9%f=#e1|PGL!VQ(=Jk|4Yhlqs(u@uZla@@5i7#ACR6(>lt`k z8%0^;4|noYU4^r2i#M2t4nOW>fn^0D7On9xZd-{F2#W$q6-+bO{<*+WQYKk;X*Mq) zkd2c`9f=6yqod4t+h!C9kj7&af72fDvk_>o1Z#*3$V%{{-j!ukX4VY|!1Hha+mfBYtWdeB=loNUO}X zevSN?YQ|2oo8m|j^+#2)(=;*y!C;Wc$Y36?=MPTK%@p$;DvU-`c~33HdAyb7gicCq ziCWKZ^s=O1DF9`1SO>jxjdrxLq{xIv`ffA@=}iP4Y% z5R)Irvo0c z8hAa}w2{LF5u=t~jirp)_czu)5^ImqvY{7`uqIz}SGF$a+D&f_2W$_?jRoDkj*CF0 z_5(Qu2-?}Y`5@G_12TFLvZTN`HSdHYW=G82&VB+BE9Q2KHHw7U z4O12fELJ1nR^iEZH$R)sy%@a7pHCa4rR$Lc-&M!YO#fkSVQIzIewSISlh-?Ca>4cC z`@|vek81IsIf5-bZQ`)v{BNn#V&AyuUko;;hD4yUq&Z?eA@({r%r ztw4P)lzSl8-YGYKFSc^6|HR7M11DFeo;kHbchgS-cGu{hV|zvl7s0VrX~_7~+|Iz1 z(T%ae84LVm`d^k*!=Fue&(d3Pre06;Y?^jVIL&%-o zl9e?(W9gFD(qUn%@9_DLnl)boZ`QIhBm-G{_SU{4uTKobKs;d-iq_7Z-KAvybZH_V zFHPplMv?E(B)3fpyftk=u0{T0`su;r$A=D+0wda?%vv%Z4%R&u{HN3;_6`h3hwko7 z+b?R+eqqU{^&owQgbwj;dW9R4%|ZVg-5wGvk-RIh#h=Xcvl-V*#GkZb z0;g*W^d{&w^uWE}e*UDv-_7tgo$u2`0q}1ZK>u?7$j)AJ8ua6!{+050!QjP=wxH{-9k**@=YpQq z1C?J=D`oImeU0Ron=^-WIELTS{bbTd_%C4mna_riwU(yy5a8E&cC++ap5M`>XZ_?= zPwn^~y1uK9-W2!gbDn1S9vx*bK_~yc*U=^BG6xue7@#v?wCvA%6x~zbe*f>gy1-AW z4lXZ?*XisPvkx@B!9FqjHGkGwYBBrD#vdg&OD-oN74eM=ZZBH?>3nzPNA$jOg$5h= zHQg%zrRS^Baky`V74ObMy6_2J^y1oU`D{H@z^MP#yr=cyI=arLp*FbbHk3hQ@r=2@ zY+Mq`!-2p<54B9^x3_nlf*3ao7dI~uNi-snNF?H1B#}x49zrChggtSIs1Zq4vOgvr zy&a)p^=riI^*VaK4zTO+k&zILp%FsVupL%mOOg`cu-arOqA1`u7Ex6-5`*|kTu~q|XH*DN zlqiHGunT4?35)clF!6{6c3?9Cwos~Q36fo@EM~J=qK+jJU?}p17Ixx+f+LSbdL0=; ziuhsS2Ox?j;y`oaso}6hz}I4B1^lUDk-FFyDO9;Yyd93&4$>#8_qa*Skz=Ge6v=MB z2SO_Iio79)Jq-Lic%gnGNGqZq=EMbAO@Q1X#{s*rfpz8qCV&g#OC$sl;5`C;Xd?hG zBI*x0Vi@$V3IH%x^@TrCe^rhvjz4fHWWfVuaq!?h3IaZmMHp5cp?(4c7USZqIsmHc zkPp0M=lu92Nfvfac;GT3NnS_`^pxwrsUBUJ69N~ExI(3hVc?HSB!C2v01`j~NB{{S z0VIF~kN^@u0!RP}AOR$R1dsp{Kmter2_OL^fCP{L5b*0|VnVPZ!6KiaBp@9Lzf8AmVV* z=i~qS%3T~88`PF9m>PF3@+8aS39qFO8a|JC@$1(YwhH~m$1Huq7Jd&bMj7aVuv_P} z(XktPXD$EN$-kDf`*bmPJLkOOb?3jYGyi|<>5orl-^%uUYx{TR*TLF~orceCie2*i zFYJB%<;<^{*Y{k=ZQ|c`FLJ-|b?@uu@7BuS=_s&flOPsy;-+6>zh{7q)mIXu5XqGBy`T%CfD$wA(7~i%4(}kq*^qxi*8Vg?0uiJ z!wWVk6Kl0@`aRs;@4nBU-=EL(aPZ1bf1Ziv+@}o||1UqB&GMxWE$d>Y5g-CY zfCvx)B0vO)01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1xKm>>Y5g-CY zfCvx)B0vO)01+SpM1Tkof&VW8jy}5>PTbj%V3(x7&M|j-&NtrWid}m`|9c=Be3NZl zY4+4yKf^oi38CD7=HP0~Xp|;Pr%Pu_Q?6fFSc*+Gp4#)wo76mOd!nE%53)*Xq? z!|9a|51v|iYw)F&sb|Mm^oR8K%U*?bH zYRenz?E`XgT`}QEo?p-+egPdDqDN+~JfDlU^XGHL1d>4|>fX>Ri94qU(~zg!@{+%E z=k7|#o2Z0Qpo&_S__3TOH&~fJZM(>IiO<^KeBs22p(CtpFz49p?U0x33qR5Kp0-hp z9T*uNS{(^{BezxW#q4z7daMKlJTbj4T@nlZ>f~O(dK&i`+*5l+;dk%%uzl6ZbNZ(0 z>9cxA^~{XkR-JlFSDZncdpTz&w;R=NNWZDybZG} z#!3&y#^?C2ZJy2Xu{l0y`-Z}I*hX+}xHu`CIYBM(o9~(J-OdmZyGCFiTb&8ci?29b^cDBy)hn#-h zcPI8PU(nUt%v%oG6U%MITZj3Nod?+YzR;Gs=g!VSx(iEj_nC>9?)7%` zZ7^6zU)YHE8eZ=>59Q03-59$lJpUPw6l3l>%N*?$?nzJS|PcVqUK? zU(r3W*7YZ_=f+oX{AwU+?7>S`yy$po)+_<}pyBjZ;-1l8c^HfHl|FB*t;Z`!ajz@x z#o``V)Rr9GyYWbmSN<4S7B#mZ^?ahF-|SPX2kO7n{hZ6M=S97p`CsJWej*=ZXQGVf zVSgTNz#3aB+i;93-JWr)vfbm47PN22*l*O(SigSf!LWYI#hLo9+KE$j)c6r@_OI`- ze$9|7gE)l<0)K-Iw`;7Rngz9O>*hc9_QF#xtm6#ufxPibX&?MNX}n)L=o~5pU0tPp zHTMmCS0zCCT3zpJ=e-5L_Ln_h8XhY*9r42jB#bA#6qasp z_lj+(!O&w{J$1{YVf~J=4b_$LO+i#l!;Hn3OZ##B#N?59eAlk7ZQk~+z2k^+3wyfy z@zg|P8cU^8L077t!o`?om`OFGF)O7d%;Ha2_v76IBi2`0BoYbcMZ2-CJIY1}UzP2`I3xbQAkHshdP#Q)x~X)p~A zvX;d%mL)Fqo2CiB>6B$zsWjr78Ph~wfi;<7n!^amFp6asON#WhBvVDhI;SA1^(By)6J;Aabwog>A$}An|H0vBl74Pl?V|Ck1v}95>;6K2N`k5eYih7J7F0_?} z?oMQYU93UBp@Io;A-={25CQuL`e>tomlE|41Tu;F*98FB=6vB#)Zf$@Gw=t8LJJ3;-E%Rs#Ude&mBq4$eq zJ7fIodDkyV#_5vm8*Sph7@qi$*Bq(9ujct{bK)Nvt$z3KNwDa%cu0zbCN~W%YiU_@ zL(6OEVA_B6p(qOSlq7{IO3SWlhWsV`G?AzSE)S{f$kms=Y0 zt_~u$bhC5}1#N9B{K&EhEZW-h*P16QN=OOG_=EaYSOs=fGxRF>B_rsN6cY6dEeWm2 zAyI#5t@<$^NrE1-4lG_o{i}Md{O%nO%KsGW4=bUNih9DK5I!2P3hb)>H|lTZ6KWdZ zyFV>xh<3mBe&hb<>pqKb3i%`gM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOb{y2oM1x zKm>>Y5g-CYfCvx)B0vO)01+SpM1Tko0U|&IhyW2F0z`la5CI}U1c(3;AOfEjfqwwB CRokxs literal 0 HcmV?d00001