From 74b97661e2db644f941e5873b03cdfa1a4bebd6a Mon Sep 17 00:00:00 2001 From: stevenhowes <38082088+stevenhowes@users.noreply.github.com> Date: Thu, 8 Apr 2021 21:02:44 +0100 Subject: [PATCH] Attempt at stopping file load errors on 3.10 on an A3000 --- !TheEsc/!MapEdit,ff8 | Bin 7176 -> 7332 bytes !TheEsc/!RunImage,ff8 | Bin 19368 -> 19524 bytes !TheEsc/c/Graphics | 11 ++++++----- !TheEsc/c/MapEdit | 9 ++++----- !TheEsc/c/Mission2 | 9 ++++----- 5 files changed, 14 insertions(+), 15 deletions(-) diff --git a/!TheEsc/!MapEdit,ff8 b/!TheEsc/!MapEdit,ff8 index ee018069e6b2365ead5ed6442251eb2ce6d14e6b..781b195e3a31fcbabb1ad0c0837da4bf17541802 100644 GIT binary patch delta 1955 zcmZuye@v8R9REJ=y$5$E2QNP^5`=pJ0iCA!gA{)hq(hfz6q+cwK<*}_!YOBq$^mi` zrKa|XI>UHJ{GsU1xi6J`Wt`mhbl6^M1b1=lk>h zKF`}Sw=>5^qH z-J!0pb31F*Nn>x5)tdEhIxF0&yUyiQs|1CJ`i>G=RLx(&&1{OYjy;z6F^9aq~4&(c}); zIKX!x;bBGde+qo*348?DjNY&0*QGSc)5af4&zo1kRSv3O!gCBwEQ6mlyvzD|j%;Vc ze2u)3{mw7Sob~WE#`$uWfr7lun99!>V^{}gVTpXu_$+J1+bq_?v%}`3)XUUu>Rawx z{E}TSr2~2yd325pOQ}biGsC|X^<_DRgeYwcD)dd_zn?QVm*Vk zm`>{oKIk|61B>0}f~5;1|0Q;!;J*XsuY{kqBqk}aFM>ouUWF7W?RqRS84t#C{=kx! z!C@nEqGKh2lOGaIL|#R%tuzU1eoeI-!%kD%_zUBv)xU@^RH%7b?&#_LN3;s%r%=n_ zkgHt}M?1tZu)w8~bx1dq;k2rUbVjfFWunhTt7akiqEN^htQRi7?lW3TKMNFQW*_a-yz54k9vtu4ej`!B9bpKgg)o>JGAJHd59kW|Px~6c zJ)p~qrkjxwT$RQ(lXvfA=9vT3th52g_A<@ErBu8(8k2TH7Rt3@Vbb^w5k8Q zCaTo(YKK}|_0H(6QDxzWB4)=ug=gWHBc?D5|2rZ*y;mB&9G^i3Lxpx^xKqDhX4fCL z1^RtF&l<~i@l{rPQWLV3pflwj9N`GQXkRIG@A3Us`#d)oL|J~`JYko{9Kfhv@{KSp+@3s-WJ1@dJYZ0vfEern6>)}RuC*PYGbUE zU}eViJ;AsM1_m%gIm0yWRZg%1z9%}9x%gMn^H~?a8=c1bxGlz>a6enz!cBT4YLCDw zD@{77O}Z(AuZWpvTZ&^uxJ!rz{8Xm-^T-n@=0{^TjPDKYIPeD|YQ?-Z_+&6|@TAxh z*2e2%r&}wR*mX8)HHgr$%gpEEg}+9CU96S}cS;7;^O?4NSQYX;sBFLNc) glswpqsvs>8@d&S1AbpVj!#ppshZiP}`*?!sU$+{VEy)UvKrm3j5ED|{ z!nQU@d3cJJ6w=#J6afPQA!ct?6N-4#8)E0Z+0({A5L;I^PTz5 zIdjgOnUVV5aDYflNXa2eKkB4(KG84X{ehhw&wVvJKMi9Av(!(eA=6FWCL9}bKL=}RBYAD>OH)UkbTd3i6ob?q zCh`U~qgYW*2X&dks~L8RaEB=OM1m^(Xa@69Q6Nt4)CkM4HiBJdraKc_;@(g#C_?nlypPU>3(}VUnkAvH1?a-@ncv0G=|0(#Adx|*Eru(6}f543c z*X+t(apH=gv=cblDce9xMAW_dPvBGp z4yv*Z`0^ah_!+_NWnFpzx;LSd?RD!!bBYdOHOOA?6x+xkS9|x&eZfwnAseNifmA|T zA&)>Bnp882BAi0R$1%T!`6)VQD!9Yr{Hs@8wicFcXx|a+msa!SlhAJ1QC!%$WrVTV6Oyw5neqpG`$C&TX%V1e%?l-Be)07XMlztpw*hHHcBBxVFhOqC?9M*xgOrRQj*Kla>|8S68D$B{k zb#5$8eQ2|O2TtXb+EE>@^40NX-%LR~=$lrL{mgGP3C=D=RRrrc$6{*cCz9F8V!wi5 zGFysde;%ppNRUW&Ckp@F{!(B!v7)7ipihtxD)(x=GCzq7>goE4jPlzDT@K=dOUhZEY;@syC zi4lI=uZnTL?k}=^GmUTh=LgEr@q{N&^qoO5%~(kB)GV$qSSJQ}xS&X!{YKkl;3AcqyJpDz|y2~8kqlH_YnJ=5m1MhoRen6z)!~?tdhrkZ;^4SfOR)|H< zzD6`_fT-~bzV?rZY`8m#B~#*KpAp@`=WxZD^n%kpSLR(>N>T4K%8d?^n_zq)=r8JA%X8%XS z{4tO|ChP$fz<3k$FGTyHk@A)QgPeu(*`54-F zJ09`s%$2_jX6(`(&ip~JA$Sb>XZnD!MTNIM9b++H2t_Cr zh-D5bOc`i*snK8Nk8Oav5@h(yQ*QWJ^aj1DcTVn_Y*(>pk8rwqh&KfmMH0$5X#Ee`RXy9RhGNWwRx58-nPao6Pad?* zPz7=++K`_5DD0L_5qTie{fduODZV1s(zD?B%ku=7~jYRJmThfV`5 zpB>VxDQ|=BE}TP`R|`8AmJa5V&i%15%1T{4m|Jq{lsp;;Kav z58!aY*D%f$jo93wB^AqQd>gHnv-m>VC#UfB^qxH3?1ECuzV@ zcZ@Fz#cU1DvrdmMLGm`%S1+kuT)kG5;HJ7|iyBdkIao%p=DN>VCvxs59`>{pVWtgX zX+=g@Vr;7_u|zME_o9nIYuZYm`3EN!%E0+hE=t7yZIPx!@n8p0EyM%X!8s zI~Xfzr&Hl+yusZQ?$m{DgFgzSC&fq?#l$3Yo4Y7x59i0|qV3oGm-NK&`I4!FJ{tZh zpFqcA=fu|HQi=k?Su@h^tXhq}a6@NOe94p)H%=;Tr=Q2A6&Z{JHP6?Ha#9S^H-427x78-O8mR%*Cu4~ znY1gxFNGW2o1CGXKS$dW-{SAMrzP1qe~N08mq{(>>7(Qvu{$X@tk;8)CzwxcjSf~1 zlVL=KRM|mGM_iH+<>J(2KFhr#HCW<*qlWZ7{8ch!%;bA%Va8OxnO?~l#&^^4j2niM zF2_10NH5UXie|O1XeaNNM%sfLnBq28g{#06>xsms|KhJb>5$OlA z)A(7&LIHl@4S#@{{i9QCVDy*3rW`Ip!pcmrfhBoZ$XN&bJ!L zsHN7iIiZnS&iBf!(y3?cSL(HZKN#aI zdzWg(fo+IWd{RuacP1W2qE_UhmC*`Y3s4gEtaYH+2%9GK#XPVb?(4%zKP}y@J&cuA z*V88i z_=le=73GB$`~iPX{N*?lUnJfn((q>Q_OAo}c*vf~Qhf95if=3a>#@o&!4+3Fs)^yR zh{PXhd!EgFZAeP}0h@=8=VgiHc|9|7M}FeS7oZghOMixSO~xi~4rbT|Ymt_jKbUa= zWO+0zKSes-PnX9obpJiSfpdi>Pe=(pim@BO5#XDzY5jx^{0!Zi;FK~tDQ@Bf9!!r- z+$jC;8eN`P$2+L3a0x#`Zx*f*$(2x4EM5PKmKGi2jbtq*ew7XskFy@_6AQsh=Cz8R z8K@xL^m*|T-B))|M`+%p=cFqixi3$e&1XcNW9$O(?{68q`5j{tDxUa1iT9QGFT{&B zfY0R`l!+26WOqODU((5#7xj!Yar^z*UPxltu9^2DNC7+F&#!HVJ~SKhh*(MATTL z^=N!0VNG#D5^b%Uv^GA1RjY_G*lC?=oQ%u%v*5-FK^-*`x4+Bc#C|isx#ymHp7)-6 z?ss~ZXxb^_h`fFYBT?`lRtnmPzMJ&BxYmNXHaeQ8P;fbr1JnTJzyME!T1MN|tu_k& z0^{2le@UOJ))(!an{0G*62}Wi{5WWPsX?v7Y8A9Bc5!@w)EHmI?dE$s=g^p2T=9>}LzD0t1nCqzQp zGjN7n0@O6Gv#pkBR}0as>SgpU#tBQSRuDdK3qKM$tM!PF%DjHz@%l|r>8fo|BduP4 z3T^1<*xH~PoL+w<_?NIHM7vc%WdUo&ZdFV4u?})>L=oNRE+6Bm*4gbk)BNA-iLQ1D z3hJRR<#Hh>`s9XS)KYyrReOKsPwQpYsYJsAI--PtRDwbt6z=vq^#)RUWwxtSU8`DU zUe@ghV4rFLEsVA8L>r*Ly*F4bXqi9`)*9KSi5VqRKsud|xm_>WJNH;|K-i7y@Xjn* z@w~Hg$;;0>2Q7D2EnVTPT)MJqF*b=;Ylib#O_m_Otr=7Rt)qmE>Id7$${g^yPHnDm zsE?DBdtQl{<(xe0RGGNsE#w(mhnUMXTDzFZo3#$tl-|tp0@Y3P49k(R2HDp4Wm}B` z`jeITtTq{bZ)h`zJOjTp!`DC_t#gP( zUZ8Ug9rJ{q7J7Nl{iHW?+5hWB!n=-(b$0mtQkO1L_^xh|a^KDG>(i1FT~O@X)HVy< zlm(UAjLpCB+x9~C>-%%H-kMbLgwz+1lI8YTsuoh|KWltK;t!BO5hg^WiHlqu;ZlCE zaAic5@@WfSj(8{T2+BEv%KXPeq4QlI&Fj=Od;Lyc6Pa!+859nt9@&bB+V=7M*GQM) z1q;pwA=R-O=^EcS-k~C6zYKa!pIkO9$||wqR-7B*P$OxrYQ~xoqt?1sCFff8TAyvg zm34BdAuGcJyNMIzS<4!|9-sKQ31IxSm z^cI&jKz9c&Pi?yvb`DgAYewqoAr~}rYE-7U&ZSXy{S`CaJk-KfQE8(en8S7oCpuIS z_S;c1=O@2X_YAIoHAWc=;_7&8^9#NdWsg4sV@9lQ?=Lf0qwY$Vqc?Dvbxo|l_n zQEr&H-CQqD^Ad|o=`!)#mSk~_4_b1S(=GgsWx8M5IBET3yUX47_ zzC2c0GsP<2XU!Ewe94+FD)@nQs;Lr6b-jnMPF=(^Z0WYS;LHkzkmK;c0JNQQ-e{Yu zG@J&BU0ab5mv}_XZ}szG7Oy&^~-aU^OXZFye&Di_&Y;y ziwayoTNn(XultnhW~{%it3a%DMooP}`M+2v>lw9Ji#GskcK$K>S#g#ZIP94{y=!47 zCqZMY{gdKwvBs^rP6)!&t8-fIHt+|IG+hTo_VSkwyXktL;$jrge!lA%Cfc~v*`Ga5 zBTSb%H<=pyBxD6IVb!@s6!XfIXGI48E9DgE-Kn`^1h=FHl^-H~e|DLLc!kdl{EN8Y zdwq~yh;_U>?FFTyjg@q_Jf`$}wrdfn3+xEdW>p8P%%ca-Q<~57p21h;xvt7c6ZyXP zG9nc58Sl^9DYo$F?5D+Q-kd!#euN51=AyFzSJ%A49>{_*V8k1!r_)NGf`& zA!nk=rKey=Nw^<4c|p!7gAJVM`=OwP_vNe>mwhR@E+LO&LSCkLlWX!^;&tAUmv8z| z7d|r$qI;RIhmVat)e(9F;Yr@J=Y0pOnuygcS81uTwa(f&$_to4(XB#g**_-Td=YFL{9M3jxy}8G z-Vk5&jv|+`wUs|F8iNP%LD6bO+~HR}RYK)X&mwVwON*DvqdrkQRL%8(Qc;mQ5y7C@eeg1yjdL`m3->W4v#kAMX5EcHN$n%hB z{v#p^8&zWCJ6C5}*vI g0IGpnU@PDS4gp7iX5id5zBJ|AZBrun_|*0P1NCuhH~;_u diff --git a/!TheEsc/c/Graphics b/!TheEsc/c/Graphics index 413035b..7ab57e7 100644 --- a/!TheEsc/c/Graphics +++ b/!TheEsc/c/Graphics @@ -19,7 +19,7 @@ void load_sprites(char* filename, unsigned char **buffername) int length; // Attempt to get file info - inreg.r[0] = 13; + inreg.r[0] = 5; inreg.r[1] = (int) filename; _kernel_swi(OS_File,&inreg,&outreg); @@ -29,7 +29,7 @@ void load_sprites(char* filename, unsigned char **buffername) // If it's <1 it's fil not found if(outreg.r[0] < 1) { - printf("Sprite file %s not found",filename); + printf("Sprite file %s not found, object type is %i and size is %i\n",filename,outreg.r[0],outreg.r[4]); exit(0); } @@ -37,7 +37,7 @@ void load_sprites(char* filename, unsigned char **buffername) if(length > 200000) { screen_nobuffer(); - printf("Sprite file %s seems unreasonably large at %i bytes",filename, length); + printf("Sprite file %s seems unreasonably large at %i bytes, object type is %i\n",filename, length, outreg.r[0]); exit(0); } @@ -47,7 +47,7 @@ void load_sprites(char* filename, unsigned char **buffername) if(buffername==NULL) { screen_nobuffer(); - printf("Couldn't malloc %i bytes for sprite buffer",length); + printf("Couldn't malloc %i bytes for sprite buffer\n",length); exit(0); } @@ -89,7 +89,8 @@ void display_mode(int mode) if (_kernel_swi(OS_ChangeDynamicArea, &inreg, &outreg) != NULL) { screen_nobuffer(); - printf("Couldn't OS_ChangeDynamicArea"); + while(1) + printf("Couldn't OS_ChangeDynamicArea\n"); exit(0); } } diff --git a/!TheEsc/c/MapEdit b/!TheEsc/c/MapEdit index b9bb628..12f9bae 100644 --- a/!TheEsc/c/MapEdit +++ b/!TheEsc/c/MapEdit @@ -64,7 +64,7 @@ void game2_loadmap(char* filename) int length; // Attempt to get file info - inreg.r[0] = 13; + inreg.r[0] = 5; inreg.r[1] = (int) filename; _kernel_swi(OS_File,&inreg,&outreg); @@ -73,10 +73,9 @@ void game2_loadmap(char* filename) if(length > sizeof(fullmap)) { - // TODO: Work out why real machine doesn't appear to read size and gives object type 19 - /*screen_nobuffer(); - printf("Map exceeds %d bytes (%d bytes) Object Type %d",sizeof(fullmap),length,outreg.r[0]); - exit(0);*/ + screen_nobuffer(); + printf("Map exceeds %d bytes (%d bytes) object type is %d",sizeof(fullmap),length,outreg.r[0]); + exit(0); } // Attempt to get file info diff --git a/!TheEsc/c/Mission2 b/!TheEsc/c/Mission2 index a8a78ff..3825faa 100644 --- a/!TheEsc/c/Mission2 +++ b/!TheEsc/c/Mission2 @@ -43,7 +43,7 @@ void game2_loadmap(char* filename) int length; // Attempt to get file info - inreg.r[0] = 13; + inreg.r[0] = 5; inreg.r[1] = (int) filename; _kernel_swi(OS_File,&inreg,&outreg); @@ -52,10 +52,9 @@ void game2_loadmap(char* filename) if(length > sizeof(fullmap)) { - // TODO: Work out why real machine doesn't appear to read size and gives object type 19 - /*screen_nobuffer(); - printf("Map exceeds %d bytes (%d bytes) Object Type %d",sizeof(fullmap),length,outreg.r[0]); - exit(0);*/ + screen_nobuffer(); + printf("Map exceeds %d bytes (%d bytes) object type is %d\n",sizeof(fullmap),length,outreg.r[0]); + exit(0); } // Attempt to get file info