From da0f5a815090593e01589fab9cf2746dcdb12f11 Mon Sep 17 00:00:00 2001 From: FeralChild64 Date: Sun, 12 Jan 2020 23:38:43 +0100 Subject: [PATCH] fixed some 65CE02 instabilities --- bin/basic_generic.rom | Bin 8192 -> 8192 bytes bin/basic_testing.rom | Bin 8192 -> 8192 bytes bin/basic_ultimate64.rom | Bin 8192 -> 8192 bytes bin/kernal_generic.rom | Bin 8192 -> 8192 bytes bin/kernal_testing.rom | Bin 8192 -> 8192 bytes bin/kernal_ultimate64.rom | Bin 8192 -> 8192 bytes bin/mega65.rom | Bin 131072 -> 131072 bytes c64/,,config_mega65.s | 2 +- c64/aliases/,aliases_cpu.s | 20 +++++++++--------- .../screen/chrout_screen_jumptable_codes.s | 4 ++++ 10 files changed, 15 insertions(+), 11 deletions(-) diff --git a/bin/basic_generic.rom b/bin/basic_generic.rom index efcb419647c8211ec23da6168b5a732b101a9ded..d974222787d9af42ba09512e7c0b1b6093bb35ab 100644 GIT binary patch delta 2197 zcmZuyeQXow8Gr1Hv4fM?fh4$m#BWF-KpZCo91M*^NXFuk>nPxrgsO1f3Nvjr5M^5l ze>g-OWM~<&Zfv1#v?KB*@keO9lty7q=}_1CB5iYFLPA1XA~1!riE}<+Su4MLE--C> z>~weU^Stl#{k-};ZFOyRg}=Nza`&a}joa$C?WvOV39XY00dL@qW1uB}7KK=Lf#VHP zW!@0k55=Hi6f~Kpi=er0K)HD-JZKglNP1bLWQ?QCcnDBf_$IruxLFJu71RGJu}z|C z2^BuqD-3H9g`GM1+V=*8LpdaNHlOixBE($oc+ADu`gqqo#~W4FBpIDa7jKkI$y#Jg z4?zaBa6BRz-C=TF^5IdrGil_@CHq6*?G}!c%6OM#<7>ITs}qJHZLfjrEhM3+v_+;$ zR)qko0B08Ulua(Hr^g$_;L}t17-0*nUh?k6Kx6;5^W)o zck&ytfSdRYQaNA2ub1q6C11r6Pf*mvTnP;)X2e{W;DUJKDSIj+H0f64&jp>*res-I zawcsUbni+w6y=0dx>})2m%*@aM}+IT)Bb@;*`{R5M42VSlTOaU0dS&mbk)6!z;u|O ziW#Hp?_Fd7$q?IVWK7XYL(=R*zOD%r4@C%F*iw@hfU z-kp&_jaFvoDbyGdHNARrl?H8nW$cY>WLNQImnwu^Y`tylPvpj06(*jT3T5$mSd#n% zLp=8cUSG86%}E-qc2uLM=MN{07y}v*2KBqOr-OpVP?ZT2vNgf5@AnBc2CLt5Pip1$ zeR{l&GD$EG5>L+PvEXD=WQZY4f|C9Z28AL0LG~a07+Gsb%b&y*FOnKOwq?6#=Xbxe zd)prNTi^cP%P%!Fw$#7kE@|Fd+O(^9%|3f}S^2t({k5(d&}b=>K^dL;Eueaxf$B0D zs`D>os4vO2doJ$wc#pXPkU$BH`Tj&c&ETzkq(-no(N@&r_Vwzn-SFNU{u!b^A z=vr7u%WQO6IknRYT1nT_str|iqobN`qE*h#TjyYg5OrcEUB(wykP5}G3z5urUlg#aYQbUHh^DXuMX7Jix zhbiY@>Y;|b2>qq-%^&M`Ps7$%3P!i?g~_`|THv!w*Gk3qV}*HSrWJlZbH3r=4e&~j zOU0l3a2ll9<~?;Y(?ItXR7&0ysc88ElKx*DOFe=1gF72Rz;F0R^3hc7ZEG{6j{l3K zHm+jLAMb2fwGn0uUY!P^6}+v})Sk|s@%ozpJTP;l368;2DEI+4^Ui?=n3*nW`zRMu z)ow8U?a@^ zn4qt-v*vlXmxgYBZNB9}?OPsOL~xY&*Y;dtDT!z}lQh zIf1V$tvgotg|!I+b?rw=VD<#OlY-O}Bm=*F3J0g2RFpvSgA$mk#7iy|7>k7W7i`gP zjRbP70ip|3t}Oj8%KTqgLM**O5m%sIplOgJ04e!#?k2H z{c3h5+HE=L;2l!+VVKv5`5lO6JLI&|h~V3}R#9rvfFdgj8*}WyCp`A<0H&&1Rf=Vk zvN+uBo-ip3G2#W!j(h|2E=@`%I{APj?StyazC9T4cE=nlW)Eaqt0Ra{Z0 znUCBV?9I_%`Tm8y_fO0 zIOEdd#!veGny_PpYq005!|rZ($cbGE^VR3p`okh6Gf|<(xKwz#aGxW{G+j;5)_`P*qel&8X{Is2Hkgx`rz1l8-e*+)qwM+m2 delta 2129 zcmb6aTTmO<^-3!tVPT}CfYlPS?%hcJ$v5Ip{}8>idUBBmJj*&?|XD#_apLYSB)HYIq+%PN^*45Ep;;`Iq1*} zW`){N1f#p@C5-rxUX*W87w6P~?O5y6RiY?XWAqEe7rR zX7pceWF#lbr|q3`*lrV8g(CmTe&*P9O>Z{Kb!z^LE^6(fS0qGK$c!(Lnej=TLCGhM z26*VcjG+t0(AWP)7?F6ZAHRxzqA9Sg{XL7+56$lpX+Ums?FmJq+74xs*2h(%Y@ii+ zt+w=LDZL#pzG=sl1x_Lqk@TyemMH{@>G(Q>zY+1N!~Q4fk*5xI)BXM@{YMTwMjt(P zfIUv`yEjt0HopD|w6VSfY`juDFMQrkj`*2>U$>tUdQuAuY>R@9^}jnM|Guo+S{{+t z$~HR&wZe4U&NeyWIARS(WsCEX^1!s-UN zEA+K!QlJAX;P{Qx6zG`+OJuq0X#8uT0!bygPNRk-S_YV+Jx0IlJ)#E$bLID zGBUCu9SZ*?sBG0k;p%{D^QMU9TYI$$@(IoRQ}XtTI_rm1GOKt##EnMPWpqJfCpDgA zy~D(kXcu9uRbVegI01T?e1ZdJ7YeQ15KC=}1yVJ!0CI_#T^I6gK|US@E@)8W#H;;= zb#*|5{!;D+c(o-i8$1`0T%(pPdCcc@n zf~E>IT?h+oD8WTx_rEipz@}(5UQAf{@igmCP;8fKvp7zxbf?Fj6xf4GNSa4-wxr?w z{htukO&3ez6p}t{R?)eF;im7DP?v}`!`7xn)WL@g8EGxY21G~Kj1N(bMxyhIh<Ru^M^Prgcf-v^`v-5!9xV zVV`Op?o@rWI}Ty<*XSd*Kmd+U7NIzd;6BfOuE)s z)reR$l!&U%FWfaz{kg(6mqK0i#=J-9qH?$e7OEu*Ode~bq^K@?w{HEXPVC4H1cbi z#R}seQCBuc%+F<0=WaH+O&34)kI|jmHfw3nk0vWWU47C#%DTqURfv{<+3--cUm4zh PriJbRT$`n(g~9m`IDg!t diff --git a/bin/basic_testing.rom b/bin/basic_testing.rom index 55fd256fd0e34ce3e96b01fc311d2403005a3073..a941ab69ecdefd1515a0fe67acf2e0954f333bba 100644 GIT binary patch delta 1983 zcmcgte@q-z9)G*TGQ-WvZhLT9+XAn(wNPNiYReV@TfN%VKDD;~sA%G1g0l2SOzsa7 zyxi7HU+=C72#!ta<(k{9^XALI4xuqh%E{5BXJt0goAmmJ)r8Q}MVb=bn!8I(L+8G; zm}qkM_hl#Z-n{qy{rP@Bdu->ioi*>yPs~5Ld(W;%b{*I%+Tx-;E|geajwA!|5&B|U z`?9n}o4@P*4^EW_rBvc%oMxBIhv_A^dxVlX3QL*w-kM#)Cv)eI%$YJ>-ZJMeNNiTO ze14l1cP8NzX9R&D#>0YBVKUY_|~1)D*YI4tnCR zXc^5GP9`ZEb;h)%Wp1Jr*>*A4`>sPqp4Pv}R2^=faIJha7*I_MUI^+ytz zUWhdrkpyivF#k}Rob9tm9U1qp(F@vAAfk*JC_u*yEm*pKqifI$Ci_O9Vn#XDnG4_M zZzM>9er(zeg)*BK{zY@z{?fgh|Eosmshi$3GV+J7o_Zk{{vP-EXmcg&RM%MO6rJH) z>`Psf0}UmFkc9SDpj{gbl%&|-blPDKdZ>88T^R;v)!Dv+G~;|{26=_4@JdIb=jTn< zAC^Q#|0+pT_OF(#kQC3BOJjFQR#2*?VTtvcZg%^&?SyT+junZC=6wB#h~*m)sLTe2 zbsJ35et^ah`-ZI!|Hx0^m%ecfo z9Tu0J>anoTTIJ(1{j(($JB&eJ(&_iwIc06?_2IGAzB9zXII!AhzwP+>Wh?B999iY- z5Bu2b!&n^|aaVXyR}FbV6{`J}BeCbrDdM{_aLvgt&Rh&S-x+Fdjud{Ln;N)Q7b>XU zYTqeH%pFc2EAAcNOkKz(xS(7~jIVhJ(S zB(c}9z(pC_p}kdBSyM9-pQ;{-qjUm+RZ+eU3VJGZ@N8nNTCG3XBU=PIMad-mu0)r>vsT4d7``{Va4+r2` zcn+S27vLbg2p#Yey!?Oom3U6HYW41vXyb=OJ3o9f9_ec1NztApyvLj4BtIge`5t~$ z9C_U3Dt;xs;ZBO48=k}=@8gg-j30*=j_OC~H-035G@%{FI70IS*Az88_V9GlL?n@c zCjB#_2j3#e+eBFpZ}(K3h_*&vqg)-Oe=^vGQLR;u-t%bIxa>r6-fQjD;JqX9({Xcv zZ!@p)?I-I}BWaiJozwc|HABHoseol~#I{>!VPl7}v4b->YWE@f^{g*T2P`_}((~@1 z#Ex6^Yu6*se`GDSoCAo64q$ANg(3`6s$Di7}Z@ATMKF zLyP-TS4YKQ;R1$*WEaP!dnCt}^|XsAIJZw5efpbh$|VUQJN}r*dkR-QbDd*2F3$+n zxqDH_wyz+WZi9IzN0%+{cG+Tk#&qQz@s)+%BfbR%6^m+kanoASz%ko1mJ48J%a&Ff zY}#?t($zxfr&?^*@=T$|MHwqIY6-ON2`C~>(zMmY;r3hD1m8AtkCLJ-6QV}7}czf#{MGS#(4Qp5$2O<>zsF7Q9O2JQNhpQ|D<+Ct*KnrPc$Bn(gy@J=Mk5c G-2MYc0&~Rx delta 2105 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 N>lv=OrR{>r`3r5wuoeIS diff --git a/bin/kernal_generic.rom b/bin/kernal_generic.rom index 1f7492031f6e9efb087f4218a9231f3f6e4d8aba..bac972c36d1b7049a23a07bb8c28370c7ac00b81 100644 GIT binary patch delta 1097 zcmcIj-EZ4e6u-5TiuGfurVdpwru%^Qf(TiKv@Ro6*_P6Y%i47tAS8tOC~V@5#}sg3 zxGgPX?#f3CbTh`k1UG4M7%*B03m~Byi7nbI5=z!&Fjff*fp|d39483z4`55@o^$X0 z{mwmKV|`a!iX(Ve(RUs&8Id_d1b6NYL_eVne=Sh=%&SZy2OWWf)?!Hid4)-( znisPBG`$$sZ?qYCGue2;l*W6_1m7q?_r9hWMJ+Qx%dy38MJ`Khl%_xD(kW|H6#O7* zE-y9nTtytJxXf#IK>XxWErpoPL9;l*m3;)i<{+7D87B3i6c!f+>{R zRs!xIpe#;i1E!}d0qkn3BwZa%IR!6K! zyo`|xQ<%mpIEhzr3OX(oezj)sRr)k$@ftR)*YO74#2n`F7T(4?Sil*ag@Jcr;yqXZ z(#YU_*jPjsIV?e4#s_ea$A>tFkMJ=*!Fha&6|CYje2xOX_<#RR|I*LSv`o%U%iGk4 z(v;}Lz#3(y_n4MYL~-4`Mc6q7PB`yvF*&z$$n(v=z#$QIZ!KfbQvcagMwM^Rn#^e7 zZ8iIuhSk)tmg|;%)VL5_k?WiMDVWVvpSBvGyDqT7#P{pd>iP+)#Z8%NW_UHF?2h*Di*_@nC^WX`E{CEw{|yR$E~@|l delta 1199 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 diff --git a/bin/mega65.rom b/bin/mega65.rom index f19d079da7ac2b3a8b89af9243c6d0c373503ee3..7724db1c30d898d9e0c41b1185c5e67b4c405854 100644 GIT binary patch delta 4757 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 delta 4858 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 diff --git a/c64/,,config_mega65.s b/c64/,,config_mega65.s index 07259720..add9c08e 100644 --- a/c64/,,config_mega65.s +++ b/c64/,,config_mega65.s @@ -122,7 +122,7 @@ // #define CONFIG_BANNER_SIMPLE // #define CONFIG_BANNER_FANCY #define CONFIG_BANNER_BRAND -#define CONFIG_SHOW_FEATURES +// #define CONFIG_SHOW_FEATURES // #define CONFIG_SHOW_PAL_NTSC diff --git a/c64/aliases/,aliases_cpu.s b/c64/aliases/,aliases_cpu.s index 392e15cf..cf99d957 100644 --- a/c64/aliases/,aliases_cpu.s +++ b/c64/aliases/,aliases_cpu.s @@ -156,7 +156,7 @@ .pseudocommand bcs_16 dst { #if HAS_OPCODES_65CE02 - .var offset = mod($10000 + dst.getValue() - *, $10000) + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $B3, mod(offset, $100), floor(offset / $100) #else bcc __l @@ -168,7 +168,7 @@ __l: .pseudocommand bcc_16 dst { #if HAS_OPCODES_65CE02 - .var offset = mod($10000 + dst.getValue() - *, $10000) + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $93, mod(offset, $100), floor(offset / $100) #else bcs __l @@ -179,8 +179,8 @@ __l: .pseudocommand beq_16 dst { -#if HAS_OPCODES_65CE02 && XXX_DISABLED // XXX causes problems with XEMU, investigate why - .var offset = mod($10000 + dst.getValue() - *, $10000) +#if HAS_OPCODES_65CE02 + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $F3, mod(offset, $100), floor(offset / $100) #else bne __l @@ -191,8 +191,8 @@ __l: .pseudocommand bne_16 dst { -#if HAS_OPCODES_65CE02 && XXX_DISABLED // XXX causes problems with XEMU, investigate why - .var offset = mod($10000 + dst.getValue() - *, $10000) +#if HAS_OPCODES_65CE02 + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $D3, mod(offset, $100), floor(offset / $100) #else beq __l @@ -204,7 +204,7 @@ __l: .pseudocommand bmi_16 dst { #if HAS_OPCODES_65CE02 - .var offset = mod($10000 + dst.getValue() - *, $10000) + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $33, mod(offset, $100), floor(offset / $100) #else bpl __l @@ -216,7 +216,7 @@ __l: .pseudocommand bpl_16 dst { #if HAS_OPCODES_65CE02 - .var offset = mod($10000 + dst.getValue() - *, $10000) + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $13, mod(offset, $100), floor(offset / $100) #else bmi __l @@ -228,7 +228,7 @@ __l: .pseudocommand bvc_16 dst { #if HAS_OPCODES_65CE02 - .var offset = mod($10000 + dst.getValue() - *, $10000) + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $53, mod(offset, $100), floor(offset / $100) #else bvs __l @@ -240,7 +240,7 @@ __l: .pseudocommand bvs_16 dst { #if HAS_OPCODES_65CE02 - .var offset = mod($10000 + dst.getValue() - *, $10000) + .var offset = mod($10000 + dst.getValue() - *, $10000) -2 .byte $73, mod(offset, $100), floor(offset / $100) #else bvc __l diff --git a/c64/kernal/screen/chrout_screen_jumptable_codes.s b/c64/kernal/screen/chrout_screen_jumptable_codes.s index 57252b9f..4281f0fc 100644 --- a/c64/kernal/screen/chrout_screen_jumptable_codes.s +++ b/c64/kernal/screen/chrout_screen_jumptable_codes.s @@ -91,6 +91,8 @@ chrout_screen_jumptable_hi: #else +.if (mod(*, $2) == 1) { nop } // align code so that vector never crosses page boundary + chrout_screen_jumptable: .word chrout_screen_CLR @@ -116,6 +118,8 @@ chrout_screen_jumptable: .word chrout_screen_DEL .word chrout_screen_RETURN +.if (mod(*, $2) == 0) { nop } // make sure routine size is always the same, needed by build system + #endif