From f1e29d1904a16674c814bbf156a672507a408541 Mon Sep 17 00:00:00 2001 From: "Raimon @ quifisraimon" Date: Mon, 21 Sep 2026 13:56:47 +0200 Subject: [PATCH] =?UTF-8?q?-=20[FIX]=20La=20ROM=20no=20ha=20de=20deixar=20?= =?UTF-8?q?escriure!=20-=20[FIX]=20Un=20reset=20no=20ha=20de=20despausar?= =?UTF-8?q?=20la=20emulaci=C3=B3=20necessariament=20-=20[FIX]=20Netejar=20?= =?UTF-8?q?un=20poc=20m=C3=A9s=20l'estat=20de=20la=20cpu=20al=20fer=20rese?= =?UTF-8?q?t=20-=20[NEW]=20Si=20intenta=20executar=20en=20un=20segment=20d?= =?UTF-8?q?e=20mem=C3=B2ria=20que=20no=20est=C3=A0=20mapejada=20a=20ROM=20?= =?UTF-8?q?o=20RAM,=20pausa=20execuci=C3=B3=20-=20[FIX]=20Puta=20mare,=20e?= =?UTF-8?q?staba=20usant=20la=20rom=20PAL=20de=20Combat,=20mentre=20que=20?= =?UTF-8?q?el=20emulador=20per=20ara=20nomes=20es=20NTSC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- combat-pal.bin | Bin 0 -> 2048 bytes combat.bin | Bin 2048 -> 2048 bytes source/6502debugger.cpp | 6 ++++++ source/6502m.cpp | 2 ++ source/atari2600.cpp | 2 +- source/rom.cpp | 2 +- 6 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 combat-pal.bin diff --git a/combat-pal.bin b/combat-pal.bin new file mode 100644 index 0000000000000000000000000000000000000000..18646de33d41bd05b7258acc41d2a177dca1315d GIT binary patch literal 2048 zcmYim3v3hT`Fy_EhdJyEA>jgf9O2S(G+S@10t;0nn}&w1h^8%-HnwUfbyT9;P+Ey8 zm9oW6@&{v<&8+)toWMdHU*@xlmZZ70E^`OcCdJXTIVnjaninq%&=!s)wgbs>`>seE zpY?zK-v9UduW2e`bVXk0Kgz0XXB&z9eAmNF2YOB=5s55t%pYN5)x?Ba)A<3(AAZPh zU*gd+|Jovdf06&@qDrG-Q18CfPNr9Zs6m!bJ3faXj{a#xj;2?Y>6BA{B~k!UX3-oX zm09GB-b`H1iaMH&&YOg*U>40Pb0ELA1UIn!fQa%JW-H#0Xfw@kzO zpX(6M3Aq&@hcbz5$`{BUspxVm(L2N9dR)|XN+onsOF~N9l|LK=A+7X3`5R_Q&q|68 zQeLk&rYP<^!^{aQ0epipLapTa#Vq~qcS*~ zAPHCf7X4By=^ZFiUFei*AiwHEGm#9mR+lf5%1pICr3Y!HLzL3wMQ8goP_=0qozBdp zq3_@-k~)P>r;iAyrG|_zGG`9OK&PX=#C#t0d5km_nMvPQ-do|0ThM!`cS`7EZ5h-+ zW)S~oR^5XXwF5WS+F=ex=@U;$FhfT?`Dz|f$s>7G0J1AkJXG)R zY$ZKL^$Z$|7-k}Ln!3nFTpi;PYvKp_gJad>*oG(Z)W|6NK#o|nUeSfd9S-i;IGzVa z_j=K|*K4vjN7);)(AGey5=+AMgApr_7e~#bb&9mt+cCx+8;d1kgj=$3yTdUexJmm^ zv^W6JplPOmA?H5Su;}8B4aO4x&Y}UKwXsOU?t7$YO*_EYnx>$*0c8O5qRV}cM%TEL zX4%v{Il!it2B_5L0a|@1T!Vs(a1^8@u9j6xbw^yoc%$fw32iL-yHLR6jGu#hQ?;CA zb$h-W8@!B@LDKIZ869PpWF-Js2A@NL6d4pmOFW0QDLknJQu&~j_hgj->xAavQkBNV z$@M(m3Y~%Gp@~aAQt-pwhQ~1b6h(=GJoF}(p!2|w>D0v8G&T8tdJ{gYy72qT7Y-z``7eFd^;4XB@G_*K#;EV&b@}<4*qS5`;DlY!jpUdD(pju~SN)M2i-kQoh8K zT3CP9%ux%c?7=O<1WTpLf=o&ZR;Kn1?0~71s{{_K2HqtLewNZ+WcTqeFV{a7`&Is*|4xzPy5-n+RG7K;3Gqo0n-CFdX4fjJ!Luw`NhR_%4 z88gTxmBPiU9hYj|&=e?N%vbwyX`&{Ni#e6>OVn|OeRT3nEZ}(e`6qqTB(_FqZ?I|I zsY<;nhjXD7trylD_f7@4ligYf4|xn6%7wHL><*a=)fZ<|7JXyN8Z1s1X+!lJvRa5cPGeJ{ zT5vdbLE9ry%06}jOq&dDfN85%d^^2m^0s8t&gcvT!5Rh^z9Bm*S?fy;-#o zk1qi02LYfs$V_eAq(HH-lF!*}wvw$}={E3v{0R7*t>i0yo8$50M|U%~m#HnnGrM-z zlrd}nx({^h*}?*`w&t#N zudS6etu~ic9^gv%Hyd-#GEVsMyM}StNzwFAT3TA(ctd#R_lEIKBY*CP2aMH5H|MUH zJK$bv=H$jEqp49Qh^y<(O_C%LR@>Uziwr|jOxfC6g^gudck}u>TgOZ8+S(?$POh!2 zsNguFt>r)k!!X3J+YN(q5`>fbP0KrWg5CRdrgCV$PN;c(+crs;xud^4%5hxN3ww_? z)i5@O{%PYU(}(RgH>)?lbc-a2jU@z27?whd;i_~s{ODyvs{Mx1*z$I8pwT!x__opW zmlm2NNh@7mKs*KI v&i|tOk3GNY{;WsXMf1d=x+CAK7Co}|U{GJoaX&8r5Xy9)mcaGHJZ literal 0 HcmV?d00001 diff --git a/combat.bin b/combat.bin index 18646de33d41bd05b7258acc41d2a177dca1315d..5c52aef014c920d4e27164e62fa550eb7e77bada 100644 GIT binary patch delta 704 zcmYL_QAkr!7{~9q_fE$&?^P#Ebb6L98z#&Nmeq@3fij3l^2xXl`ru1JFevEZs+=@s zlpIbnQA(Y5?@bQVf$X~yc zSjf*T^g}f(^Zrp9jl;!5=+R)`A-tW1$u#WBKx-PxX_!8Qy_(mm9o$FFGL2{i3>O|% zpj;p&H~Sycf()m++fS}%T^dRScNHUWrW8so?Vz&Y&qAr8o#39bJ~eL#qf_rX0mJ}! zT7E}om%q#)JE}u9sMhcaRE9X=#R%QAS}AjAOwOZmSwue;4xow$K!?RxI*%R%MJ0is z0S9p62&l&%+GFZXZ^B+YM4zfKlC~}6o`;ExvkktK6dljgt=#ujHsV}0%ikJfZdyK# z_vk)g#vM$HnbU29Tar?NZ!(Vh3cbfr<5zbBnY2jC*&LBJ3Jl2_@k0@>FxTvS#=CL^ z4W^F5Pc(~>WH$*EssN;L9otHOIKo$1Yi*nE94FOEyH2WXGBxgIhf4Wl-=s8Qx!Zw< z*$V(*m9^3F4BlqzYhsxQ&`KiAqpE0Sc+IDlzDF^SRWr|27MEv0di3`g}eXpapY6Rah zwVnK^BOZm-sE*#KF&!zw(xPk3xC~_psr@=))f@O2xcEW+(r4!uDI#%_*x2O%yjnBO zgHDP9fMS}MUl&KZJZC17;%xH#fRyYpvs9VJ|5u)(sB?w|2pjUEXrx-!0F}p2i>n<1 nbQA_eL&jHp<P53<4P%T=G>7aFGQ)C!$64M7@!)zK|9gIoEN7Pe~|9)tqQ2A<-Js%~hs8pde{ zgi6LdIWP`3DnTDbfS`y~myeIRJ3VZD%Ve}s2QhjPx0~JaHNAeZbctk;6%wCYkhk#; zUu`Cd1w`;+;ZP29>KA|NS%kQ)&ZbvkM7{w-8W zX5HDe6jmf$X(}p|^ah5K&z@q^Z3!!tDH5JDbdsv12ff3srbgF=q;Go{F)d6+MpO%P z)I$c0G=S>xs;NrIN@7{eEpY3lL6WCb=)~cqT+kynXUTtVc89wxcaGuH;wki;NgxU>8GX{d-8IQf+N*!}o?>jyxQCJA&hxE|Y4t F{RIhcH532< diff --git a/source/6502debugger.cpp b/source/6502debugger.cpp index b4cf5f9..73f39e6 100644 --- a/source/6502debugger.cpp +++ b/source/6502debugger.cpp @@ -318,6 +318,12 @@ namespace m6502debugger m6502debugger::show(); breakpoints[address] = breakpoints[address] & ~BREAKPOINT_NEXT; } + + if (!(mem::debug::getInfo(address).memType & mdtMemory)) { + atari2600::pause(); + m6502debugger::show(); + } + } void onMemRead(uint16_t address, bool code) diff --git a/source/6502m.cpp b/source/6502m.cpp index cda303e..aa2726a 100644 --- a/source/6502m.cpp +++ b/source/6502m.cpp @@ -632,6 +632,8 @@ namespace m6502 rA = 0; rX = 0; rY = 0; + microcode_pos = 0; + microcode_last = 0; } void interrupt(uint8_t type) diff --git a/source/atari2600.cpp b/source/atari2600.cpp index 5fe8a4a..3fc1ef9 100644 --- a/source/atari2600.cpp +++ b/source/atari2600.cpp @@ -20,7 +20,7 @@ namespace atari2600 void init() { - paused = false; + //paused = false; m6502::reset(); mem::reset(); tia::reset(); diff --git a/source/rom.cpp b/source/rom.cpp index 93766e6..bf23760 100644 --- a/source/rom.cpp +++ b/source/rom.cpp @@ -34,7 +34,7 @@ namespace rom void write(uint16_t address, uint8_t value) { - data[address & mask] = value; + //data[address & mask] = value; } namespace debug