DOS\pHQ(OB,xCOpNhJg,@)n&A"C( N @*h">(&/0<@2<N)@g~ l2< 'p Q$HC2< Q4<z9909EEvraRCBQ6<rarCBQ6<ra\CBQ6<raFSCBQ A ,"(H@0XHH@0XHHA0XHHA0,|?.?.-|=|-J=|Bn"lA~(rpg8 fr@` f@`$I&M@ p(QRA`<<=| 9g0.g=| Q-|=_=_-lBn,_Jg l0<@2<N"N,xNbPL,xCfd|oNJg @ hpNupNuJEf8`x0@@0@H@0000Nutopaz.fontgraphics.library" f" ,x,8 Where Amiga Memories Live On AMIGA DB  https://amigadb.net --- YOUR PORTAL TO AMIGA HISTORY --- ! Press mouse to boot !p@b clkjihgfedclE+0demopbd}@}`B$VER: Wing Commander Patch 2.1 (13.2.98) 1997-1998, CdBS Software,xCp'N# g.,@A"$<vN# gJZg A# :Rg"@#C< :Bg"@ м0 @h2J*g2 xJ(fJg" Ori"gin&"tonicJg2 -k :g"@# JgJf#$@ f2 ":tNj#gX,x*z ԂԂDf;|Nb+|d`NNB":N,y "<N"N,xNbpNuN|"$<N&":Nd`؀beZ۰< wing.englishwing.germandos.libraryG=German/S,Exe=WingName/K,S=Stack/N,C=Campaign/N,NE=NoExit/S,T=Trainer/S,I=Invincibility/S,Pad=NoJoy/S,SD=SlowDown/N,NoC2p/S,NoWOTG/S,Add/S,WO=WingOpts/FWing Commander PatchNqp\RT vf.rf*o"O"t""""""" " %" D" t" " " "" '" =" C" `" t" " " " $" &" (" S" r" Nu0"(UJf|~kE(XIp#Lh|,:$|n:))| <:.)|bg79% Nq:2|3Jf*|`!9|N!)|!G!#)|NqNq!` 9|| Ip0<Jf&0<:9@D9|N)|9|NqC4"X"""p"Q"<"^""""""%">"O"t""""""" " %" D" t" " " "" '" =" C" `" t" " " " $" &" (" S" r" NuHH/ / "zIK33M<NH"SF. "$(&ć芀鉆"($‡(( *ȇbh.茂銊. $JHBBB$ƇJHBBB$‡JHBBB$ʇJHBBB.$(‡"ኈ"$Ƈ(ʇ"ኈ"AQNJ:&fP$z # #GMCL$*Kv.*Q.T**_, ~tv(< CH|(_0:,t$:g SBNQC(NC2NCz;B\startup-sequencexy;3)df0:c/border on df0:c/climaxx -c -t df0:boot.txt df0:demo {|n}|B\boot.txtp{}U Where Amiga Memories Live On __ _____ (__) / _ \ _____ __ _________ / /_\ \ / \| |/ ___\__ \ / | \ Y Y \ / /_/ > __ \_ \____|__ /__|_| /__\___ (____ / {;Z \/ \/ /_____/ \/DB https://AmigaDB.net --- YOUR PORTAL TO AMIGA HISTORY --- ~hB\cp7B\cls~m-] ?g $<Lv`$<Mv,yC@pN*@N"N"MNbpNudos.library Parameters are not required  7tB\border~󫔿HzHHI&TNJg,$! !N. n (gB" & @I<(X/BrQ >D@ Ư!RC":c4@g=3sUE_(ր`J`J7BkpS ЃaZ,o>܄U!H mp9Q>h@9*k7QGB G dmTQ ҫۮ[$E[5:!{a+Pă[Oҥ`*t4e$#> OJo"=@a1ܩ)7-$Ĥ@Z*1'ػ;/=I8 B[_`F<Brp;(uT{Ch9>6- F9X@#~lTNa"2S|w1 yd Qd=qh3a'1p@4Ґ $a*GB*1 p0p$0pI(40k 49@oyfMg\Al1 FF43xL3< <&͆o iac%yΆ>rJFOfLf90Mh1@ɋ|  IcE9BNo8ÙeQΆmq 'N8 SԹ[)tļ2@n䅽FxI)ɨ!Ii|%|HDR)Hћl:A9AІ@ZJ B\htype~ ,`mmNUH720|&P~Cp$,KN$@ J gprAQA"M$v,JN+@JfN|"$N&`N+@ <rHA,KNT+@Jf,JN|"$N&`nr @1|!| m+A+A+HgR mHHHg@phfp+@`pnfp+@`(HH+@A"C$ ,JNF`zJgzJgSJjAn~+H`zA+m~+HJfd"m Y+H+I gPB"$-,JNJg*N|.ptЀf~+mAB"C$ NF`~Jf"m i"(,JN m+@"$<N+@-N|."-NJf m+HA"C$ NF` -g8Jf2"$<N+@JfN|.+mA"C$ NF`Z -g"N "- Ja.Jg "-,JN"-,JNBJf"-NJgN|.ptЀf~"-,JN` -g"A$,JNF`Jgm "t,JN& 0f~`~ -g",JN -g",JN"m,KNN"-,JN"J,KNb`0|"P ipz!@ LLN]Nudos.libraryFROM/A/M,TO/K,OPT/K,HEX/S,NUMBER/S$VER: type 37.2 (21.1.91) Option '%lc' ignored Type can't do both HEX and NUMBER 2 No files to type TYPE can't open %s 0123456789ABCDEF%04lx: %s %5ld %sNUH72.,&Hp*+@",KN+@Rg2JfJf p m,zN8A`\9fNuRaC  gfBA"$<A,zhN+@g"tvN"-tvN+@ g,r,xN:+@g"-$-&- ,z N mB0"-,z NJg(Aca maAXa"m - ,xN.Nu m"h. iX (g"|0) 2) i,zN,zNNuJxgNur < ,xN: @(@C0< QNAp0RB RԈJfR RԈ 0fC,xNhr&Ё @"PrA 3@H@2B97A!xNuH瀀AHpR(T( V(X( Q9L3 Nsgraphics.library"<,xx N(N:JfNu  gSNu zg" -ff ( gJ(f NupNu"$vRJf,z0NAC!IC!I,xN+@pN+@C#mx;|"m) fJ iCg>EL" C8#A #AE#Jr#AE| #@(NAN+m -N -Nu1mCLIMax v1.0 0m33mby RIFF RAFF of UNITED FORCES 0mUsage: CLIMax [options] Options... -f Fullsize, -b Borderless, -c Clear window, -a Add21k, -t Type text, -s CLI Stars -n No Fastmem, -w Wait for mouse d-'0 p pm܃ Credits: Project Manager ........... Toxico Nimbus Patch & C2P code .......... MORB Argument parsing .......... Toxico Nimbus & MORB Word of the Gods .......... Toxico Nimbus -Test .................... Jan Vieten (especially german version) Toxico Nimbus: A4k + 060@50 + 604@200 A1200 + 4Mo Fast mI MORB: A1200 + DKB 030@50 Troll: A1200 + Blizzard 040@40 '^! HE+0WCPatch_Eng.Guide.infop/]:$89(A4x=a,>:# [=== '{'{ ?׀?׀?׀=;ҿ׀?׀?׀=_ڿ׀?׀?׀?׀=]vڿ׀?׀?߀=岫߀?߀?߀?߀=J߀?߀ ?߀?݀?ۀ?{{O{?H1@?G{?__@=@=A*Ҁ=@=@?=A Hʀ=@=@=@=AM24Ҁ=@=@9A@D(1@?9@1@?9A 1@?_`@@9shk-l߷5?-M? :# ^b{{{??ͯm_;m_?U%o@?=?='{$c #//   ɐ$e@    i@  ? "Y    @   M< /?ހ0\?؀ 9?6oۚYf喿?_ݦ}? MultiView8 )*** DON'T EDIT THE FOLLOWING LINES!! ***6IM1=BEI!.J5#<@;9n1(d9lVS9llU@#:RS9lJH_IM1=+UHFS9S55lhJS9lL`"YJJJ3jeE6@!<55FJIR)6JMk0nJJJ$S9lS9hG(dB1(dL`"XdB1(dB3dB1(dB6@!BOeh92Di22d#2Di27еE2RDi2GBO6`&Di2DУ6ҵi2Doi0,i2Din032Di?еǾmi$i3GVhENIM1=WDon0kWVǾmiլVǾVh+V]V`2VSVD$VR@!62E0)$IM2=BEI!)H4!+"!@HD2)!`@T:IM2=)jB@$DhhE2Di22"I2Di2Dd`2i2Di2Di1!4i2Di2DiD)Di2Di2DjG@jDi2Di2D_е,di2Di2E3`!i12Di2I?h92DDi2i#xn2DIM2=i)4o+0RDi2D)_&Di2Dhk@ӵi2Dodi,i2DiE;!$!i2Di?зV<`92Di3VVh#2Di2_VVRDi2G3VIM2=е!i2Di>FV`92Di3VVh#2Di2VVɰRDi2FWhk0&Di2D3Wdѵi2DoеE,i2DioO232Di?cIM2=h"RDioе`2Vi'D!6V?@!VVS26VVfY0EVD)VRD`"MVDkR@2XΉ} E+0 Wcp.s.infopc:(%4h4 L46($ \??.n?*7*_^*rwF( w>\66p66=6wI@w7_jB@B@@@Q@@UUPTHHUUTb"U`@ET{#P CT~w"GtB#GB/`jH}jJUAUTjPjQHQjJ@\jbԡAHʈ@@@B@@????????????c?c?????]????? ? ???y >#????@($ ^{VQTVQT{UZU;#U[E|{wqpw;$ ;/B! ! ~'?? ( **$$*1^P* "=(?d~;#??!?#?!0Q5@$UT>Ώ5Q%UT**5`5T((5Q%UT .5R1UT $@eDD ! @___________q_ __a______ ________~____`GED< )*** DON'T EDIT THE FOLLOWING LINES!! ***(IM1=BEI!*J5-)(dB,S;9l,S8TBIM1=P&S9`&ӱT8&dB0cҹP#A`TB1&T8&c#B0TAlcB,&d8:1&#B,&d:0TA`:0c! (TB,!&d8-(S-(cB0!&#B,&dA`dB1&-(S:0TBIM1=c9(dB,:1(dA`&TAm(T:0!(dB,#B,cA&-(S:0c!&d9m(Pֹc!&d9m(TA`c&d8-(SB1(SB,&d8TA`c:1(c:0TA`9`S9lS,9`&SIM1=߷[[8,[[=!l[[S9lS[Sl!hfSn[[nfP,TB9n[[3ֵ9([[1&B0dC9[lB9ilR1(dB1,IM1=[dC9(l1P#-(dB1(dS8dB1(d+9&dB1(dB8dB9hdFS,B1(dB1dC9(dBP,S1(d9,S1,BS!lJldB01ldFP!b1JJR0f9hd,1(eJJhSQ(l.IM1=P#8B1*JS1d,(dJJlS$B1K8!l1S&P(IM2=BEI!*J5-)(dB,S;9l,S8TBIM2=P&S9`&ӱT8&dB0cҹP#A`TB1&T8&c#B0TAlcB,&d8:1&CB,&d:0TA`:0c1 (TB,!&d9-(S-(cB09&CB,fdA`dB1&-(S:0TBIM2=c9(dB,:1(dAhfTAm(T:0!(dB,CB,cA&-(S:0c1&d9m(Pֹc9&d9m(TA`cַd9(SB1(SB,d8TAlc:1(c:0TA`9lS1,S1,9`,fShIM2=R1(fPS1,R1(C&ShdS9,$BC1`ط[R1ldB1(,[R1(dB1(PֵC9[,dB1(dC8&:1,[=dB1(dS)`R,dS=C1(fQ(#1(TB1l[1(1,IM2=S8,dB1(dC9Q(B3$LԴB1(dB1,1(dB18B&A(dB1(f1(fR1)l#9(dB1(dQ(B1(l#9LB1&TC,C9(lS5JS1(d9dS1)lPdJJld:1fR19`#9IM2=PdB5JJAmdBS9b1(JK9,FPڷ(dBJl#8B1*`,+8S,4NRkE+0Wcp.spIuhead 2.4; access; symbols; locks MORB:2.4; strict; comment @# @; 2.4 date 98.02.13.00.12.25; author MORB; state Exp; branches; next 2.3; 2.3 date 98.02.04.21.00.09; author MORB; state Exp; branches; next 2.2; 2.2 date 98.02.04.19.49.21; author MORB; state Exp; branches; next 2.1; 2.1 date 98.02.04.17.46.21; author MORB; state Exp; branches; next 2.0; 2.0 date 98.02.04.17.44.01; author MORB; state Exp; branches; next ; desc @Wing Commander CD32 fix/patch RCS for GoldED Init?~ial login date: Aujourd'hui @ 2.4 log @Modifs WOTG (Tox'N), corrections (MORB) @ text @* * Wing Commander Patch * 1997-1998, CdBS Software * $Id: Wcp.s 2.3 1998/02/04 21:00:09 MORB Exp MORB $ * ;fs "Includes" machine 68020 incdir "Include:" include "exec/exec_lib.i" include "exec/memory.i" include "exec/execbase.i" include "dos/dos_lib.i" include "dos/dos.i" include "dos/dostags.i" include "intuition/intuition_lib.i" include "intuition/scr,|eQeens.i" include "graphics/graphics_lib.i" include "hardware/custom.i" include "hardware/blit.i" include "hardware/dmabits.i" ;fe ;fs "Macros" AbsExecBase = 4 CustomBase = $dff000 TRUE = -1 FALSE = 0 CALL macro jsr _LVO\1(a6) endm CALLJMP macro jmp _LVO\1(a6) endm ;fe ;fs "Main code" start: bra.s .AfterVer Dc.b "$VER: Wing Commander Patch 2.0 (04.02.98) 1997-98, CdBS Software" even .AfterVer: move.l y^c (AbsExecBase).w,a6 lea dos_name,a1 moveq #39,d0 CALL OpenLibrary move.l d0,dos_base beq no_dos move.l d0,a6 lea ArgsTemplate(pc),a0 move.l a0,d1 move.l #ArgsArray,d2 clr.l d3 call ReadArgs move.l d0,Rda beq dos_Error tst.l germarg(pc) beq.s .NoGerm lea GerFilename(pc),a0 move.l a0,filename .NoGerm: move.l stackarg,d0 beq.s NoStack move.l d0,a1 move.l (a']1),stack ; Hihihi NoStack: lea cl,a1 move.l campaignarg,d0 beq.s NoCampaign move.l d0,a1 move.l (a1),d0 ; Hihihi NoCampaign: andi.l #7,d0 add.l #48,d0 eori.w #"h"<<8,d0 move.w d0,(a1)+ tst.l NoExit beq.s NoExitDone move.w #" x",(a1)+ NoExitDone: tst.l Invuln bne.s ForceTrainer tst.l Trainer beq.s NoTrainer ForceTrainer: move.l #" Ori",(a1)+ move.l #"gin&",(a1#)+ move.l #"toni",(a1)+ move.b #"c",(a1)+ NoTrainer: tst.l Invuln beq.s NoInvuln move.w #" -",(a1)+ move.b #"k",(a1)+ NoInvuln: move.l SlowDownArg,d0 beq.s NoSlowDown move.l d0,a1 move.l (a1),SlowDown NoSlowDown: tst.l WingOpts beq NoWingOpts tst.l AddArg bne AddWingOpts move.l d0,args AddWingOpts: move.l d0,a2 move.b #" ",(a1)+ .Loop: move.b (a2)+,(a1)+ bne.s .Loop NoWingOd>pts: move.w #$A00,(a1) move.l filename,d1 clr.l d2 CALL LoadSeg move.l d0,seglist beq dos_Error move.l (AbsExecBase).w,a6 move.l seglist,a5 add.l a5,a5 add.l a5,a5 ***** Ugly hack to support imploded exe file ***** cmp.l #$d482d482,$44(a5) bne.s .NotPacked move.w #$4ef9,$62(a5) move.l #_PackedPatch,$64(a5) bra.s .Packed ***** .NotPacked: jsr _Patch .Packed: CALL CacheClearU clgr.l start-4 move.l seglist,d1 move.l dos_base,a6 move.l #tags,d1 CALL CreateNewProc no_seg: move.l a6,a1 move.l (AbsExecBase).w,a6 CALL CloseLibrary no_dos: moveq #0,d0 rts dos_Error: CALL IoErr move.l d0,d1 move.l #ErrHeader,d2 CALL PrintFault move.l seglist,d1 CALL UnLoadSeg bra.s no_seg ;fe ;fs "Main data" ;fs "CreateNewProc Taglist" tags: dc.l NP_Cli,-1 dc.l NP_StackSize  c_stack: dc.l 32768 dc.l NP_Seglist seglist: ds.l 1 dc.l NP_Arguments args: dc.l cl dc.l NP_ExitCode dc.l _FreeSeg dc.l 0,0 ;fe ;fs "Args array" ArgsArray: germarg: ds.l 1 filename: dc.l EngFilename stackarg: ds.l 1 campaignarg: ds.l 1 NoExit: ds.l 1 Trainer: ds.l 1 Invuln: ds.l 1 NoJoy: ds.l 1 SlowDownArg: ds.l 1 NoC2P: ds.l 1 NoWOTG: ds.l 1 AddArg: d ys.l 1 WingOpts: ds.l 1 ;fe ;fs "Misc" Rda: ds.l 1 EngFilename: dc.b "wing.english",0 GerFilename: dc.b "wing.german",0 dos_name: dc.b "dos.library",0 ArgsTemplate: dc.b "G=German/S,Exe=WingName/K,S=Stack/N,C=Campaign/N,NE=NoExit/S,T=Trainer/S,I=Invincibility/S,Pad=NoJoy/S,SD=SlowDown/N,NoC2p/S,NoWOTG/S,Add/S,WO=WingOpts/F",0 ErrHeader: dc.b "Wing Commander Patch",0 even ;fe ;fe ;fs "Patch code" section coin,CODE H2Begin: ;f s "_PackedPatch" _PackedPatch: move.l 15*4(a7),a5 subq.l #4,a5 bsr.s _Patch move.l (AbsExecBase).w,a6 CALL CacheClearU movem.l (a7)+,d0-7/a0-6 rts ;fe ;fs "_Patch" _Patch: lea _GfxBaseOfst(pc),a0 ***** Hack: German/English version check ***** cmp.w #$1124,$28+4(a5) beq.s _GermanPatch ;fe ;fs "_EnglishPatch" _EnglishPatch: ; Patchs for the english version move.w #-$30a,(a0) move.l (a5),a4 add.l a4,a4 add.l ̆ a4,a4 tst.l NoJoy bne.s .NoJoy move.b #3,$7e3b+4(a4) ; Patch joystick .NoJoy: lea $28ca(a4),a2 addq.l #4,a5 lea $30000(a5),a4 move.l $4aa6(a4),_NearPtr move.b #$2c,$3862(a4) ; move.b #$6e,$3867(a4) ; Fix several dumb bugs that move.l #$203c0000,$386c(a4) ; prevented wc to work on move.l #$01004e71,$3870(a4) ; machines with fast ram move.b #$bc,$3bcb(a4) ; tst.l NoC2P bne.s  P/}.OldC2P move.b #$60,$1fca(a4) ; move.w #$4ef9,$2028(a4) ; move.l #_ChunkyToPlanar,$202a(a4) ; Replacement of the lea $1ff8(a4),a3 ; ugly slooow c2p add.w (a3),a3 ; routine move.l a3,_BufSwitch ; move.l #$4e714e71,$1ff6(a4) ; bra.s .C2POk .OldC2P: move.w #$ffff,$17cc(a4) move.b #$14,$1ef7(a4) ; Force the chunky buffer in chip Alg ; ram in order to make the original ; c2p work (no more fast to chip ; blits :))) .C2POk: lea $1f000(a5),a4 move.w #19,d0 tst.l NoWOTG bne.s .NoWOTG **** Some funny credits patchs **** move.w #58,d0 move.w d0,$e40(a4) move.w #$4eb9,$dfa(a4) move.l #Cred,$dfc(a4) move.w #$4e71,$e00(a4) lea NewCredz,a1 move.l (a2)+,(a1)+ addq.l #4,a2 move.l #MyCred0,(a1)+ Move.l #MyCred00,(a1)+  Move.l #MyCred000,(a1)+ moveq #$f,d0 .CLoop: move.l (a2)+,(a1)+ dbf d0,.CLoop move.l #MyCred1,(a1)+ move.l #MyCred2,(a1)+ move.l #MyCred3,(a1)+ move.l #MyCred4,(a1)+ move.l #MyCred5,(a1)+ move.l #MyCred6,(a1)+ move.l #MyCred7,(a1)+ move.l #MyCred8,(a1)+ move.l #MyCred9,(a1)+ move.l #MyCreda,(a1)+ move.l #MyCredb,(a1)+ move.l #MyCredc,(a1)+ move.l #MyCredd,(a1)+ move.l #MyCrede,(a1)+ move.qv}l #MyCredf,(a1)+ move.l #MyCred10,(a1)+ move.l #MyCred11,(a1)+ move.l #MyCred12,(a1)+ move.l #MyCred13,(a1)+ move.l #MyCred14,(a1)+ move.l #MyCred15,(a1)+ move.l #MyCred16,(a1)+ move.l #MyCred161,(a1)+ move.l #MyCred17,(a1)+ move.l #MyCred18,(a1)+ move.l #MyCred19,(a1)+ move.l #MyCred1a,(a1)+ move.l #MyCred1b,(a1)+ move.l #MyCred1c,(a1)+ move.l #MyCred1d,(a1)+ move.l #MyCred1e,(a1)+ move.l #MyCredb@1f,(a1)+ move.l #MyCred20,(a1)+ move.l #MyCred21,(a1)+ move.l #MyCred22,(a1)+ move.l #MyCred23,(a1)+ move.l #MyCred24,(a1)+ move.l #MyCred25,(a1)+ .NoWOTG: rts ;fe ;fs "_GermanPatch" _GermanPatch: ; Patchs for the german version move.w #-$2de,(a0) move.l (a5),a4 add.l a4,a4 add.l a4,a4 tst.l NoJoy bne.s .NoJoy move.b #3,$7e67+4(a4) ; Patch joystick .NoJoy: lea $28e2(a4),a2 addq.l #4,a5 ħ y lea $30000(a5),a4 move.l $4c68(a4),_NearPtr move.b #$2c,$3a24(a4) ; move.b #$6e,$3a29(a4) ; Fix several dumb bugs that move.l #$203c0000,$3a2e(a4) ; prevented wc to work on move.l #$01004e71,$3a32(a4) ; machines with fast ram move.b #$bc,$33d8(a4) ; tst.l NoC2P bne.s .OldC2P move.b #$60,$218c(a4) ; move.w #$4ef9,$21ea(a4) ; move.l #_ChunkyToPlanar,$21ec(a4) ; Replacement~d of the lea $21ba(a4),a3 ; ugly slooow c2p add.w (a3),a3 ; routine move.l a3,_BufSwitch ; move.l #$4e714e71,$21b8(a4) ; bra.s .C2POk .OldC2P: move.w #$ffff,$198e(a4) move.b #$14,$20b9(a4) ; Force the chunky buffer in chip ; ram in order to make the original ; c2p work (no more fast to chip ; blits :))) .C2POk: lea $1f000(a5),a4 move.ƢRw #19,d0 tst.l NoWOTG bne.s .NoWOTG **** Some funny credits patchs **** move.w #58,d0 move.w d0,$f44(a4) move.w #$4eb9,$efe(a4) move.l #Cred,$f00(a4) move.w #$4e71,$f04(a4) lea NewCredz,a1 move.l (a2)+,(a1)+ addq.l #4,a2 move.l #MyCred0,(a1)+ move.l #MyCred00,(a1)+ Move.l #MyCred000,(a1)+ moveq #$f,d0 .CLoop: move.l (a2)+,(a1)+ dbf d0,.CLoop move.l #MyCred1,(a1)+ move.l #MyCred2,'X*(a1)+ move.l #MyCred3,(a1)+ move.l #MyCred4,(a1)+ move.l #MyCred5,(a1)+ move.l #MyCred6,(a1)+ move.l #MyCred7,(a1)+ move.l #MyCred8,(a1)+ move.l #MyCred9,(a1)+ move.l #MyCreda,(a1)+ move.l #MyCredb,(a1)+ move.l #MyCredc,(a1)+ move.l #MyCredd,(a1)+ move.l #MyCrede,(a1)+ move.l #MyCredf,(a1)+ move.l #MyCred10,(a1)+ move.l #MyCred11,(a1)+ move.l #MyCred12,(a1)+ move.l #MyCred13,(a1)+ move.l #MyCred14,(a1)+ move.l #MyCred15,(a1)+ move.l #MyCred16,(a1)+ move.l #MyCred161,(a1)+ move.l #MyCred17,(a1)+ move.l #MyCred18,(a1)+ move.l #MyCred19,(a1)+ move.l #MyCred1a,(a1)+ move.l #MyCred1b,(a1)+ move.l #MyCred1c,(a1)+ move.l #MyCred1d,(a1)+ move.l #MyCred1e,(a1)+ move.l #MyCred1f,(a1)+ move.l #MyCred20,(a1)+ move.l #MyCred21,(a1)+ move.l #MyCred22,(a1)+ move.l #MyCred23,(a1)+ move.l #MyCred24,(a1)+ 91move.l #MyCred25,(a1)+ .NoWOTG: rts ;fe * * ChunkyToPlanar conversion routine - 256 color version * 1997, CdBS Software (MORB) * ;fs "_ChunkyToPlanar" ChunkySize = 320*200 _WorkOutputBuffer: dc.l _OutputBuffer1 _BlitOutputBuffer: dc.l _OutputBuffer2 _ChunkyToPlanar: movem.l d0-7/a0-6,-(a7) ext.l d2 move.l a4,-(a7) move.l a1,-(a7) move.l _WorkOutputBuffer,a1 lea $f0f0f0f0,a4 lea $cccc3333,a5 lea $ff00ffʇE000,a6 move.w d0,d6 lsr.w #4,d6 mulu d3,d6 movem.l d2/d6,-(a7) subq.w #1,d6 .Loop: move.l a4,d7 move.l (a0),d0 move.l d0,d1 and.l d7,d0 eor.l d0,d1 move.l 4(a0),d2 move.l d2,d3 and.l d7,d2 eor.l d2,d3 lsr.l #4,d2 or.l d2,d0 lsl.l #4,d1 or.l d1,d3 move.l 8(a0),d1 move.l d1,d2 and.l d7,d1 eor.l d1,d2 move.l 12(a0),d4 move.l d4,d5 and.l d7,d4 eoˡvgr.l d4,d5 lsr.l #4,d4 or.l d4,d1 lsl.l #4,d2 or.l d2,d5 move.l a5,d7 move.l d0,d2 and.l d7,d0 eor.l d0,d2 lsr.w #2,d2 swap d2 lsl.w #2,d2 or.l d2,d0 move.l d3,d2 and.l d7,d3 eor.l d3,d2 lsr.w #2,d2 swap d2 lsl.w #2,d2 or.l d2,d3 move.l d1,d2 and.l d7,d1 eor.l d1,d2 lsr.w #2,d2 swap d2 lsl.w #2,d2 or.l d2,d1 move.l ̃(v d5,d2 and.l d7,d5 eor.l d5,d2 lsr.w #2,d2 swap d2 lsl.w #2,d2 or.l d2,d5 move.l a6,d7 move.l d0,d2 and.l d7,d0 eor.l d0,d2 move.l d1,d4 and.l d7,d1 eor.l d1,d4 lsr.l #8,d1 or.l d1,d0 move.l d0,(a1)+ lsl.l #8,d2 or.l d2,d4 move.l d4,(a1)+ move.l d3,d2 and.l d7,d3 eor.l d3,d2 move.l d5,d4 and.l d7,d5 eor.l d5,d4 lsr.l #8,d5 or.l<3 d5,d3 move.l d3,(a1)+ lsl.l #8,d2 or.l d2,d4 move.l d4,(a1)+ lea 16(a0),a0 dbf d6,.Loop ;move.w #$c040,$dff09a ;move.w #$8300,$dff096 .Wait: tst.b _Busy(pc) bne.s .Wait st _Busy move.l _WorkOutputBuffer,a2 move.l _BlitOutputBuffer,_WorkOutputBuffer move.l a2,_BlitOutputBuffer lea DestPtr(pc),a3 lea SrcInc(pc),a6 lea DestOfst(pc),a1 movem.l (a7)+,d2/d5 move.l O; a3,a5 moveq #6,d3 .Glou: move.l d2,d7 muls (a1)+,d7 move.l d7,(a5)+ dbf d3,.Glou move.l d2,d7 muls (a1)+,d7 addq.l #2,d7 move.l d7,(a5)+ move.l (a7)+,a5 move.l a5,d6 moveq #5,d7 moveq #0,d2 moveq #0,d3 move.l #$0de41000,d4 lea BlitRegs,a1 movem.l d0-6/a2-6,(a1) move.l (a7)+,a4 move.w _GfxBaseOfst(pc),d0 move.l (a4,d0.w),a6 move.l SlowDown(pc),d2 beq.s .NoS7oelowDown subq.w #1,d2 .SDLoop: CALL WaitTOF dbf d2,.SDLoop .NoSlowDown: lea BltNode1(pc),a1 CALL QBlit lea BltNode2(pc),a1 CALL QBlit lea BltNode3(pc),a1 CALL QBlit lea BltNode4(pc),a1 CALL QBlit lea BltNode5(pc),a1 CALL QBlit lea BltNode6(pc),a1 CALL QBlit lea BltNode7(pc),a1 CALL QBlit lea BltNode8(pc),a1 CALL QBlit movem.l (a7)+,d0-7/a0%w'<-6 rts _CleanUp: sf _Busy movem.l d0-7/a0-6,-(a7) move.l _NearPtr(pc),a4 move.l _BufSwitch(pc),a0 jsr (a0) movem.l (a7)+,d0-7/a0-6 rts SrcInc: dc.l 0,2,0,6,0,2,0,6 DestPtr: ds.l 8 DestOfst: dc.w 7,-3,1,-3,1,-3,1,5 _Busy: ds.w 1 _BufSwitch: ds.l 1 _NearPtr: ds.l 1 _GfxBaseOfst: ds.l 1 _C2pBlit: movem.l d1-7/a0-6,-(a7) lea BlitRegs,a1 movem.l (a1),d0-6/a2-6 lea $dff040,aѝ0 add.l (a6)+,a2 move.l d4,(a0)+ moveq #-1,d1 move.l d1,(a0)+ addq.l #4,a0 lea 4(a2,d2.w),a4 move.l a4,(a0)+ ;lea (a2),a4 move.l a2,(a0)+ add.l (a3)+,a5 lea (a5,d3.w),a4 move.l a4,(a0)+ lea 10(a0),a4 addq.l #4,a0 move.w #14,(a4)+ move.w #14,(a4)+ move.w #0,(a4)+ addq.l #8,a4 move.w #$aaaa,(a4) addq.l #6,a4 move.w d5,(a0)+ move.w #1,(a0) eor.w #-16,d2  -Ⱥeor.l #-2,d3 eor.l #$f0001000,d4 eor.b #1,d5 movem.l d0-6/a2-6,(a1) moveq #0,d0 movem.l (a7)+,d1-7/a0-6 rts BltNode1: dc.l 0,_C2pBlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode2: dc.l 0,_C2pBlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode3: dc.l 0,_C2pBlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode4: dc.l 0,_C2pBlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode5: dc.l 0,_C2pB!ϳZlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode6: dc.l 0,_C2pBlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode7: dc.l 0,_C2pBlit dc.b 0,0 dc.w 0,0 dc.l 0 BltNode8: dc.l 0,_C2pBlit dc.b CLEANME,0 dc.w 0,0 dc.l _CleanUp ;fe ;fs "Cred" Cred: lea NewCredz,a0 move.l (a7),-(a7) move.l (a0,d0.l),4(a7) rts MyCred0: dc.b "Destroyed",$a dc.b "by",$a dc.b "Nick Pelling",0 M"ryCred00: dc.b "Enhanced",$a dc.b "by",$a Dc.b "CdBS Software",0 MyCred000 Dc.b "Thanks to",$a Dc.b "Jan Vieten",$a Dc.b "for Beta-Testing",0 MyCred1: Dc.b "Hello guy",$a Dc.b "that s",$a Dc.b "good credits, no",0 MyCred2: Dc.b "You must be happy",$a Dc.b "with your brand new",$a Dc.b "Wing Commander",0 MyCred3: Dc.b "With our mega",$a Dc.b "super top fast",$a Dc.b "ChunkyToPlanar.",0 #BIMyCred4: Dc.b "Well, the first",$a Dc.b "was a wreck",0 MyCred5 Dc.b "You known, it",$a Dc.b "was like every",$a Dc.b "Nick Pelling s stuff",0 MyCred6 Dc.b "he ho...",0 MyCred7 Dc.b "Are you there",0 MyCred8 Dc.b "Help",$a Dc.b "Someone Call",$a Dc.b "police",0 MyCred9 Dc.b "the user is dead",0 MyCreda Dc.b "OK, you want to",$a Dc.b "read all the credits",0 MyCredb Dc.b "Well... If $Nƣyou want...",0 MyCredc Dc.b "But you don't know",$a Dc.b "how long credits",$a Dc.b "could be",0 MyCredd Dc.b "This one is not long",0 MyCrede Dc.b "END OF CREDITS",0 MyCredf Dc.b "",0 MyCred10 Dc.b "uh oh...",$a Dc.b "You re not so fool",0 MyCred11 Dc.b "OK, that s good",0 MyCred12 Dc.b "But there s",$a Dc.b "another problem",0 MyCred13 Dc.b "I don t known",$a Dc.b "what to say now.",0 MyCred%׋14 Dc.b "you known, what",$a Dc.b "did Nick Pelling",$a Dc.b "was really bad",0 MyCred15 Dc.b "The badest error",$a Dc.b "was that he forgot",$a Dc.b "a sharp in is source",0 MyCred16 Dc.b "Really fool",0 MyCred161 dc.b "I am sorry, but this",$a dc.b "font is so lame that",$a dc.b "it misses sharps,",$a dc.b "numbers, exclamation",$a dc.b "and interogation points",0 MyCred17 Dc.b "what",0 MyC&ފ%red18 Dc.b "It s not interresting",0 MyCred19 Dc.b "OK...",0 MyCred1a Dc.b "perhaps could I",$a Dc.b "find a story",0 MyCred1b Dc.b "Once upon a time...",0 MyCred1c Dc.b "All right,",$a Dc.b "you don t like it.",0 MyCred1d Dc.b "So I must find",$a Dc.b "something else.",0 MyCred1e Dc.b "Oh, I ve found:",$a Dc.b "You re waiting",$a Dc.b "for the end of",$a Dc.b "the music",0 MyCred1f Dc.b "'نaaOK, so in this case,",$a Dc.b "you don t want to",$a Dc.b "read these credits.",0 MyCred20 Dc.b 0,0 MyCred21 Dc.b 0,0 MyCred22 Dc.b "The music should",$a Dc.b "have reached its",$a Dc.b "end now.",0 MyCred23 Dc.b "So what are you",$a Dc.b "waiting for ?!",0 MyCred24 Dc.b "hey, you really",$a Dc.b "want to read the credits",$a Dc.b "till the end",0 MyCred25 Dc.b "OK, here we are...",0 ;fe ;fs "(gData" dos_base: ds.l 1 SlowDown: ds.l 1 ;fe ;fs "_FreeSeg" _FreeSeg: move.l dos_base,a6 lea H2Begin-4(pc),a0 move.l a0,d1 lsr.l #2,d1 CALLJMP UnLoadSeg ;fe ;fe ;fs "Patch BSS" section glonk,BSS BlitRegs: ds.l 13 NewCredz: ds.l 66 cl: ds.b 256+2 cle: section paf,BSS_C _OutputBuffer1: ds.b 320*200 _OutputBuffer2: ds.b 320*200 ;fe END @ 2.3 log @Now supports german version @ text @d4 1 a4 1 * $Id: )(Wcp.s 2.2 1998/02/04 19:49:21 MORB Exp MORB $ d41 1 a41 1 dc.b "$VER: Wing Commander Patch 1.1 (30.07.97) 1997, CdBS Software" d314 1 a314 1 move.w #57,d0 d324 2 a325 1 move.l #MyCred00,(a1)+ d422 1 a422 1 move.w #57,d0 d433 1 d797 4 a800 1 dc.b "CdBS Software",0 d902 1 a902 1 ds.l 65 @ 2.2 log @Now support imploded wc exe files @ text @d4 1 a4 1 * $Id: Wcp.s 2.1 1998/02/04 17:46:21 MORB Exp MORB $ d259 5 d267 2 d284 1 a284 1 move.b #$6e,$3*&M867(a4) ; Fix of many dumb bugs that d312 1 a312 1 **** Some funny credits patch **** d372 107 d642 2 a643 1 move.l -$30a(a4),a6 d697 2 @ 2.1 log @First version under RCS @ text @d4 1 a4 1 * $Id$ d60 6 d140 11 a150 1 bsr _Patch d152 1 d154 2 a156 2 search_last_seg: clr.l start-4 d198 1 a198 1 germ: d241 16 d259 3 d266 1 a266 1 bne.s .AfterJoy d268 1 a269 1 .AfterJoy: d277 3 a279 3 move.b #$6e,$3867(a4) ; Correction de plusieurs bugs move.+݃l #$203c0000,$386c(a4) ; trs cons pour pouvoir tourner sur move.l #$01004e71,$3870(a4) ; 1200 + fast d286 3 a288 3 move.l #_ChunkyToPlanar,$202a(a4) ; Remplacement de la lea $1ff8(a4),a3 ; routine de c2p par une add.w (a3),a3 ; vraie d295 4 a298 4 move.b #$14,$1ef7(a4) ; Force le buffer chunky en chip ; pour faire marcher le c2p ; merdique d'origine (Hihihi) d304 3 a307 1 .NoWOTG: d,s361 2 a365 3 ;fs "Patch code" section coin,CODE H2Begin: @ 2.0 log @*** empty log message *** @ text @d1 6 @ /E+0 RCS_configp:[NAME] WCPatch [PATH] Programmation:Projets/Wcp/WCPatch/Sources/ [SNAPSHOT] [COMMENT] Wing Commander CD32 fix/patch [USER] MORB [WORK] Programmation:Projets/Wcp/WCPatch/Sources/ [FILES] Wcp.s -@|E+0RCS_linkrpSIRCS ignore: .rcsfreeze.??? $:4E+0RCS_rootp4IZ[CONFIG] Programmation:Projets/Wcp/WCPatch/Sources/ @$E+0WCPatch_Fra.Guidep㉕@DataBase WingCommanderPatch.Guide @$VER: WCPatch_Fra.Guide 1.1 (04.02.98) 1997-1998, CdBS Software @WordWrap ON @SmartWrap ON @Help "" @Node "main" "Bienvenue... Bienvenue dans un monde de merde." @{JCENTER}WingCommanderCD@{PAR} Le Patch@{PAR} (Enfin la doc de le patch)@{PAR} @{JLEFT}Merde, putain, vous faites tous chier. Et en plus y faut faire une doc, merde, putain, chier, bordel.@{PAR} Bon, si comme mon frre, vous avez une CD, et si comme moi vous avez un miga qu,i blaste, et que vous bavez devant la version 256 couleurs de Wing Commander CD, qui utilise l'akiko et donc qui est fluide, et bien sr que vous n'avez pour toute consolation que la version 16 couleurs trames qui speed, certes, mais qui vous sort par tous les trous tellement elle est moche.@{PAR} Alors faites comme moi, faites-vous un patch (ou plutt demandez avec insistance votre coder Miga le plus proche de chez vous un patch).@{PAR} Voyez-vous, j'ai bien plus de chance qup؊e vous, j'ai un coder juste ct de chez moi et il code vachement bien moi, pour que mon coder garde un code trs brillant et qu'il soit plein de vitalit, je lui donne pdigr PAL. (remarquez, en ce moment, le mien fait un rgime Mulitscan). Biiiiip tt. gna, gna, glonk, paf, glouglouglou. hum... dsol. Un valium et a repart.@{PAR} Bon, j'en tais o moi... Ah oui, le patch. Donc, avant, avec mon ancienne lessive, il restait encore des trames mais avec mon nouveau CdBS micGɒ^ro liquide avec des micro-mga-perle-vertes qui s'enfoncent au coeur du code et qui en extirpent toute la crsse propre, plus de problmes, plus de trames, plus de sang, plus de haine, ce sont les new-news du week-end.@{PAR} BON BEN D'ABORD, C'EST LA VERSION 2.0 LA : ALORS LES TRUCS EN PLUS QUE ELLE FAIT QUE CELLE DE AVANT ELLE FAISAIT PAS : PTINX ENLEVEZ CES &$") DE BOULES QUIES C'EST CHIANT DE GUEULER A FORCE merci :@{PAR} Bon, alors euh, hein, on s'est rendu compte que v plein de gens arrivaient pas faire marcher WCPatch. Alors bon, nous, hein, on se disait que de toute faon, crade comme il est, il pouvait pas tre stable, ce patch, et tout. Nous nous flagellions en public de notre propre incomptence avec des orties, les gens nous insultaient, nous pitinaient, nous crachaient dessus, se lamentaient, et tout. Mme JF Fabre m'a dit un jour dans un mail : 'Bleuzark'. Mais quelqu'un a un jour eu l'ide de saturer le mail de ToxN avec son wing commangDder a lui qui marchait pas avec WCPatch, et la on s'est rendus compte que les xcutables taient implods. Nous (je) nous sommes donc mis laborieusement au travail pendant un nombre titanesque, dont la dure n'avait d'gale que la peine, de demi-millisecondes, et avec plein de savantes bidouilles pas propres, on a fait en sorte que WCPatch marche avec des fichiers implods.@{PAR} L'autre problme tait caus par nos amis teutons, qui, en plus de ne pas russir faire marcher WCPatx$CUch avec des fichiers implods, taient assez vicieux pour lui donner la version allemande. Mais, ne reculant devant rien, nous avons ajout le support de la version allemande aussi. (Avec plein d'autres bidouilles pas propres non plus).@{PAR} Alors comme a, vous dsirez savoir comment a marche, et bien vous le saurez... Plus tard. D'abord, l'historique:@{PAR} Version 1.0 un beau jour Antoine AKA MORB me pond un patch touzouli@{PAR} (ou peut-tre qui tue tous les mwchants bugs de WCCD.@{PAR} une nuit) Et l, mort(s) de rire (Eeeeeeeeeeerk :))@{PAR} devant les conneries Nick.@{PAR} Version 1.1 un autre jour Moi, vi pasque moi ossi jeu cod, j'ai@{PAR} (prs d'un lac rajut (mais noooon, c'tait rajOut, quel@{PAR} je me suis con), sur un conseil de moi-mme, des@{PAR} endormie) arguments, beaucoup d'arguments (j'en ai@{PAR} profit pour inventer le concept de@{PAR} programmation  arguments).@{PAR} Version 2.0 Le 4. De ce mois-ci, donc fvrier. en 1998. Donc, ben c'est crit l-haut, au-dessus. Le gros pav que vous avez pas lu, l, honte sur vous. (je signale en passant que le patch est instable depuis que Tox'N a ajout tous ces arguments partout qu'il a dit) (Sans vouloir vexer personne ni me montrer pesant)@{PAR} Bon, maintenant la syntaxe, c'est moi qui l'ai faite, donc... bonne chance.@{PAR} WCPatch G=German/S Permet de lancer la version  !Wallemande. (Equivalent a exe=wing.german) Exe=WingName/K Nom de l'xecutable (par dfaut: wing.english).@{PAR} S=Stack/N Pile de l'xcutable (si vous n'avez pas confiance,@{PAR} mettez-en pas mal (en tout cas, moi, votre place,@{PAR} j'aurais pas confiance...)).@{PAR} C=Campaign/N numro de la campagne (par dfaut: 0 (Vega Campaign))@{PAR} 1=secret mission 1@{PAR} 2=secret mission 2@{PAR} 3=vade retro satana, napu  $XXrien au dessus.@{PAR} NE=NoExit/S Dsactive la sortie (je sais, c'est con, mais c'est@{PAR} pas nous qu'on l'a fait, c'est pour que quand c'est@{PAR} lanc sur le CD (resp freezbee) on peut plus quitter@{PAR} le jeu.@{PAR} T=Trainer/S Active les Ingame-Keys pour le debuggage:@{PAR} F15 Eclate le vaiseau lock ou vous-mme@{PAR} F16 Nique le tableau de bord@{PAR} F17 pause pour prendre des photos d'ncran@{PAR} F18  Info de debuggage@{PAR} F19 je sais plus@{PAR} I=Invincibility Que de "i".@{PAR} Pad=NoJoy/S Pour enlever le patch qui fait qu'on peut utiliser un@{PAR} joy au lieu du pad (it came from the CD:).@{PAR} SD=SlowDown/N 060 rulezzzzzz (attends le nombre spcifi de frames@{PAR} (1/50e de seconde (=0.02 s)) entre chaque image, ce@{PAR} qui a pour effet dsastreux de ralentir le jeu@{PAR} (Slideshow rulezzzzzz))@{PAR} NoC2 3dp/S Niark, niark: comment qu'c'tait avant. A utiliser @{PAR} chaque fois que vous oublierez que nous sommes des@{PAR} dieux (surtout Antoine, c'est SON C2P qu'on a pris (le@{PAR} miens est un poil trop lent mais n'allez pas croire@{PAR} qu'il est aussi naz que l'tron doucetre pondu par@{PAR} Nick-le-monstre).@{PAR} Au fait, j'arrte pas de l'appeler Nick mais vous l'ai-je@{PAR} prsent... non ? Bon alors: NicIk Pelling, le monsieur@{PAR} derrire l'cran, le monsieur derrire l'cran, Nick@{PAR} Pelling (le gland qui a commis la version Miga de@{PAR} WC(|CD)).@{PAR} NoWOTG/S Ah, ah, je vous entends d'ici: Ca veut dire quoi WOTG@{PAR} c'est con WOTG. Et bein non, et paf, WOTG a veut dire@{PAR} Word Of The Gods, c'est quand c'est nous (enfin moi)@{PAR} qu'on parle (si vous avez lu la dernire parenthse,@{PAR} n'ou-ybliez pas de corriger, pasque "c'est moi qu'on parle"@{PAR} a fait con, il fallait lire "c'est moi QUI parle") mais@{PAR} je vous dis pas o, c'est une surprise, mais patience...@{PAR} Add/S Switch entre certaines option (C, NE, T et I) et la@{PAR} suivante (WingOpts). En effet:@{PAR} IF Add@{PAR} THEN Args=Args OR WingOpts@{PAR} ELSE Args=Args XOR WingOpts@{PAR} ENDIF@{PAR} (en RPL, a donne :@{PAR} " Args WingOpts " Add IF THEN ELSE "X" + END "OR " + EVAL")@{PAR} he, he, he... glouglou n'est-ce pas ?..@{PAR} WO=WingOpts/F Ligne de commande donne WingCommander, attention,@{PAR} c'est TRES compliqu:@{PAR} Cas numro 1 (le plus simple): vous n'avez@{PAR} pas spcifi de Add, alors les arguments@{PAR} C, NE, T et I ne seront pas pris en compte,@{PAR} puisque vous tes sens les passer par@{PAR} WingOpts.@{PAR} Cas numro 2: Vous tes lourd, vous avez@{PAR} mis le Add. Dans ce cas, WCPatch va@{PAR} construire une ligne de commande pour@{PAR} WingCommander laquelle il rajoutera vos@{PAR} options spcifes grace WingOpts, il peut@{PAR} alors y avoir redondance et l, je ne vous@{PAR} garantis pas le rsultat (en gnral, a@{PAR} marche).@{PAR} Voici les quivalents en WingOpts:@{PAR} Campaign x = hx@{PAR} g# NoExit = X@{PAR} Trainer = Origin&tonic (tention les majuscules)@{PAR} Invincibility ( Keu2i :) = -k.@{PAR} Bon, maintenant, vous savez tout, me faites plus chier...@{PAR} Quoi? vous voulez des boutons?.. Vous vous demandez pourquoi une doc Amigaguide si y'a pas d'boutons? Dsol mais jusqu' preuve du contraire, ni, on est pas tenu de mettre des, ni, boutons dans une doc amigaguide, ni, et en plus, le texte simple ne fait pas ni le centrage, ni le wordwrap.@{PAR} Al`lez, ciao, vous m'faites tous chier (j'en connais un qui cette rplique va plaire), et pis d'abord chui fatigu, faut qu'je dorme, et pis en plus, y faut remplacer plein de sauts de lignes par des fins de paragraphes, v39 compatibility rulezzzzzz, ni, houps, gna, glonk, burps...@{PAR} Nota Bene: Si cette doc semble toute clate (pas seulement syntaxiquement), du genre sauts de lignes en doubles, ditez la avec n'importe quoi qui fait le remplacement (Ed doit mme savoir faire), e&t remplacez tous les \@{PAR} par rien. Bonne Nuit. PS: Un grand remerciement Jan Vieten pour ses renseignements trs prcieux et son -testing. @EndNode A IE+0WCPatch_Eng.Guidep+D@DataBase WingCommanderPatch.Guide @$VER: WCPatch_Eng.Guide 1.1 (04.02.98) 1997-1998, CdBS Software @WordWrap ON @SmartWrap ON @Node "main" "Welcome... Welcome to a fucking world of shit." @{JCENTER}Wing Commander CD@{PAR} The Patch@{PAR} @{JLEFT} WCPatch is designed to fix some bugs in order to make Wing Commander CD work on a simple Amiga (without the Akiko chip). In fact Nick Pelling, the guy who translated the game on Amiga, already did that but in a so fucking mankner that we re-made it. The result is that:@{PAR} First, the game works without Akiko and with FastRAM, before the patch, Nick Pelling was used to blit in a buffer which allocation he didn't force to ChipRAM. the second error was a sharp (#) he forgot in his source, destroying the palette.@{PAR} And second, we replaced its C2P with our brand new one, resulting in an acceleration about 1.5 to 5, depending on your CPU.@{PAR} NEW FOR VERSION 2.0 : We figured out that many peo(ple did not achieved to make WCPatch work because the exe file was imploded, so this version deals with imploded exe files too. Also, it now works with the german version.@{PAR} Now the syntax: WCPatch G=German/S Use german version instead of english one@{PAR} (same as Exe=wing.german)@{PAR} Exe=WingName/K Use it if you've renamed the executable, or want@{PAR} to specify its full path. If you specify both@{PAR} this and German,ALB German will have the priority@{PAR} ie. If you want to specify an alternate path@{PAR} for wing.german, DOT NOT specify the German switch.@{PAR} S=Stack/N The stack given to WC, default is 32768.@{PAR} C=Campaign/N Number of the campaign (default: 0 (Vega)).@{PAR} Use 1 or 2 for secrets missions.@{PAR} NE=NoExit/S Only usefull on CD, it disables the exit.@{PAR} (the door in the barracks).@{PAR} T=Trainer/S activatefs the ingame-keys (F15 to F19).@{PAR} I=Invincibility/S Why so much "i" ?@{PAR} Pad=NoJoy/S Don't patch for use of a joystick.@{PAR} SD=SlowDown/N 060 rulez, waits the specified number of VBLs@{PAR} (1 VBL=0.02 s) between each frame.@{PAR} NoC2p/S Don't remember how slow it was before ?@{PAR} NoWOTG/S Disables the "Word of the Gods".@{PAR} Add/S if used, some of the previous options (C,NE,T and I)@{PAR} woBn't be overwritten by the WingOpts.@{PAR} WO=WingOpts/F The command line you pass to WC:@{PAR} Campaign x = hx@{PAR} NoExit = X@{PAR} Trainer = Origin&tonic (beware to the case)@{PAR} invincibility = -k@{PAR} If this doc doesn't seem to be correct, just find Amigaguide.library V40 or kill all the \@{PAR} in this file. PS: A big thanks must go to Jan Vieten for his so interesting information and -testing. @EndNode   E+0WCP.ReadMe!.infopR;(%45EA1(=a,A>($ :p??.n?*7*_^*rwF( w>\66p66=6wI@w7_jB@B@@@Q@@UUPTHHUUTb"U`@ET{#P CT~w"GtB#GB/`jH}jJUAUTjPjQHQjJ@\jbԡAHʈ@@@B@@????????????c?c?????]????? ? ???y >#????@($ <{VQTVQT{UZU;#U[E|{wqpw;$ ;/B! ! }U?? ( **$$*1^P* "=(?d~;#??!?#?!0Q5@$UT>Ώ5Q%UT**5`5T((5Q%UT .5R1UT $@eDD ! @___________q_ __a______ ________~____` MultiView8 )*** DON'T EDIT THE FOL@LOWING LINES!! ****IM1=BEI!+J5-)(dB,S;9lFJRR9lZJIM1="RF@"@)D!0"@h"@D"@2"G9l30lRY!02h))!0$`hh)D$`D)2$`39)l`"S0"Hl"HK99"HK9lT@"HK9lSIM1=S99E,S9lS9lTE,S9lS9lS:@E,S9lS9lS:@E,S9lS9lS:RE,S9lS9lS:FE,S9lS9lS:FhElS9lS9lS:Fl`E2S9lSIM1=S9lSD9l`FS9k9lS9lSD9h"S81RS9lSD9l39