From b767c0ce9ec095a56e676eea742539f7304fa61b Mon Sep 17 00:00:00 2001 From: Jakub Husak Date: Tue, 18 Jul 2023 10:08:26 +0200 Subject: [PATCH] polished and cleaned-up; updated all flashers. --- lib/flashwrite.asx | 15 +- lib/flashwritelib.asx | 149 ++++++++++-------- lib/lib_28sf0x0.asm | 52 ++++-- lib/lib_29f0x0.asm | 52 +++--- lib/lib_39sf0x0.asm | 52 +++--- .../034M_Action36ACS_origflasher.xex | Bin 27105 -> 27158 bytes .../034M_Mac65_1.02_DDTflasher.xex | Bin 27108 -> 27161 bytes various_flashers/128kFlob/128kFlobflasher.xex | Bin 133914 -> 133967 bytes .../128kLastNinjaIIflasher.xex | Bin 109302 -> 109355 bytes .../1MBOnEscape/1MBOnEscapeflasher.xex | Bin 1053127 -> 1053178 bytes .../1MBSpaceHarrierflasher.xex | Bin 1053132 -> 1053183 bytes .../256kPrinceOfPersiaflasher.xex | Bin 199580 -> 199633 bytes .../8kB_PILOT/8kB_PILOTflasher.xex | Bin 10810 -> 10863 bytes various_flashers/8kB_WSFN/8kB_WSFNflasher.xex | Bin 10809 -> 10862 bytes .../8kB_test_cartridgeflasher.xex | Bin 10819 -> 10872 bytes .../Example_MissileCommandflasher.xex | Bin 10820 -> 10873 bytes .../M091_BASICXE41/M091_BASICXE41flasher.xex | Bin 27105 -> 27158 bytes .../M091_OSSBasicXL103flasher.xex | Bin 27110 -> 27163 bytes .../M093_Action36ACS_origflasher.xex | Bin 27105 -> 27158 bytes 19 files changed, 193 insertions(+), 127 deletions(-) diff --git a/lib/flashwrite.asx b/lib/flashwrite.asx index e7d8dd1..3fadd3e 100644 --- a/lib/flashwrite.asx +++ b/lib/flashwrite.asx @@ -97,13 +97,13 @@ _check_chips ?_next inc numchips lda numchips clc - adc #$30 - sta chipno + adc #'0' + sta chipno ; stored as '0'/'1' to print inline jsr print dta c'chip ' chipno - dta c'0' + dta c'0' ; will be replaced dta c' vend/prod: ',0 lda m_vendor jsr printhex @@ -170,8 +170,7 @@ FORMAT jsr printformatting jsr print dta c'1...',0 - ldx #0 - jsr flashformatchip + jsr flashformatchip1 bcs formatfailed jsr flashend ; restores display etc. preserves all .if .def TWOCHIPS @@ -179,8 +178,7 @@ FORMAT jsr printformatting jsr print dta c'2...',0 - ldx #$40 - jsr flashformatchip + jsr flashformatchip2 bcs formatfailed jsr flashend ; restores display etc. preserves all .endif @@ -388,6 +386,9 @@ MAIN_PROCESS stx calccrc_bank jsr CALCCRC mwa #_DEST flashaddr + ;ldx #<_DEST + ;ldy #>_DEST + ;jsr flashsetaddr jsr printBank lda operation diff --git a/lib/flashwritelib.asx b/lib/flashwritelib.asx index 6f7aac6..ad20c2d 100644 --- a/lib/flashwritelib.asx +++ b/lib/flashwritelib.asx @@ -11,17 +11,23 @@ num_mems = 3 ; CONSTANTS m_offsets - softid_entry = 0 - softid_exit = 3 - flashoppreamble = 6 - flash_lockchip = 9 - flash_unlockchip = 12 - flash_wait_unit = 15 - flash_idstr = 18 + ; jump table + softid_entry = 0 + softid_exit = 3 + flash_formatchip = 6 + flash_formatsector = 9 + flash_writebyte = 12 + flash_lockchip = 15 + flash_unlockchip = 18 + flash_wait_unit = 21 + ; data table + ; 1 byte + flash_sectorsizeMSB = 24 + ; var bytes 0 terminated + flash_idstr = 25 ; rw section, may be moved to ZP if needed M_VECTOR .word 0 -tmpa .byte 0 m_vendor .byte 0 m_kind .byte 0 m_iter .byte 0 @@ -130,11 +136,19 @@ jsrtovectorproc adc #0 plp ; restore C pha - lda tmpa + lda tmpa:#0 pha php rti - +; a - vector value offset +; returns y-LSB A-MSB +getvectorvalue + clc + adc M_VECTOR + tay + lda M_VECTOR+1 + adc #0 + rts ; -------------------------- flashformatchip2 ldx #$40 @@ -150,9 +164,8 @@ flashformatchip jsr flashcheckempty bcc flashformatexit sei - sec ; will format flash! ldx store_x - lda #flashoppreamble + lda #flash_formatchip jsr jsrtovectorproc ; preserves A ; not needed to mva $ff flashcmp jsr wait4flashcheckresult ; waits for format finished @@ -162,8 +175,7 @@ flashcheckempty sta flashformatcounter flashbankloop sei ldx store_x -flashformatcounter equ*+1 - sta $d5FF,x ; set chip (x) and bank + sta flashformatcounter:$d5FF,x ; set chip (x) and bank ; set pages count, 8kB ldy #$20 ; reset address @@ -184,56 +196,6 @@ flashcartoff ; preserves C pla rts -; -------------------------- -store_x dta 0 - -; -------------------------- -; PROCEDURE -flashformatsector -; x - bank number 00 - 7f (even sector>>1) -; a - erase 4KB from $B000 if A=$B0, FROM $A000 IF A=$A0 -; format 4kb evensector -; strange form - easily maps to cartridge banks -; to format bank, must format sector (x<<1) and (x<<1) +1 -; IT IS LONG because it has to be save, ie not format if formatted etc. - - ; first check if all ff - ; this is to avoid wear - stx flashformatstorex - sta flashformatstorea - sei - jsr flashsetbank - ; store #$a0 or #$b0 - sta flashformataddrcheck + 2 - jsr flashchecksectorformatted - bcc flashsectorformatgood - sei -flashformatstorex equ * + 1 - ldx #0 ; filled before -; check least sector bit - sec - lda #flashoppreamble ; does not touch A,X - jsr jsrtovectorproc - sta $D500,x - ; A must be either $A0 or $B0 -flashformatstorea equ * + 1 - lda #0 ; filled before - sta flashtmpaddr+1 - sta flashformataddrcheck + 2 - - lda #$30 -flashtmpaddr equ *+1 - sta $a000 ; SECTOR FORMAT INVOKED HERE! - jsr wait4flashcheckresult ; - sei - - lda flashformatstorea - sta flashformataddrcheck+2 - - ldx flashformatstorex - jsr flashsetbank - - ; check if all data in sector is $ff flashchecksectorformatted ldy #$10 flashchecksectorformatted_bare @@ -249,17 +211,59 @@ flashformataddrcheck dey bne flashformataddrcheck FEEDBACKEND - -flashsectorformatgood - jsr flashcartoff clc rts - flashsectorformaterror jsr flashcartoff sec rts +; -------------------------- +store_x dta 0 + +; -------------------------- +; PROCEDURE +flashformatsector +; x - bank number 00 - 7f (even sector>>1) +; a - page number in 128byte units $0-$3f +; erase sector containing address bank number * $2000 + page number * 128 + + stx flashformatstorex + sei + ; calculate lower 13 bits of sector + ; (address in 8kb bank) + ldx #0 + ; convert page in A to cartridge a000-bfff address flashtmpaddr + ; 0,1 -> 0 ; 2,3 -> 256 ; 4,5 -> 512 etc + lsr + ora #$A0 + tay + + jsr flashsetaddr ;(x/y) store address for write byte to format sector + ; + ldx flashformatstorex:#0 ; filled before, 8k bank number + + lda #flash_formatsector ; does not touch A,X? + jsr jsrtovectorproc + + ldy #{ sta.w } + jsr flashprocessbyte ; format sector INVOKED ! + + + jsr wait4flashcheckresult ; + ;sei + + ldx flashformatstorex + jsr flashsetbank + + cli + ; check if all data in sector is $ff + +flashsectorformatgood + ;jsr flashcartoff + clc + rts + .macro FEEDBACK .if (FRAME_FEEDBACK)>=1 php @@ -286,9 +290,11 @@ flashsectorformaterror lda #0 sta colbaks sta colbak + .if (FRAME_FEEDBACK&2)==2 lda #34 sta sdmctl sta dmactl + .endif pla plp .endif @@ -315,8 +321,7 @@ byte_differs sta flashcmp sei pha - clc ; byte program preamble - lda #flashoppreamble ; preserves A,X + lda #flash_writebyte ; preserves A,X jsr jsrtovectorproc pla ; set right bank @@ -364,12 +369,14 @@ skipwsync inc flashcnt+1 bne cont jsr flashcartoff + FEEDBACKEND lda #$ff ; status rts cont and #$40 bne flashwaitfordone jsr flashcartoff + FEEDBACKEND lda flashval:#0 cmp flashcmp:#0 ; when byte compare non zero = error @@ -412,7 +419,9 @@ flashlockchip flashsetbank sta $d500,x + pha lda $d013 sta $3fa + pla rts diff --git a/lib/lib_28sf0x0.asm b/lib/lib_28sf0x0.asm index bbe126f..5b992e7 100644 --- a/lib/lib_28sf0x0.asm +++ b/lib/lib_28sf0x0.asm @@ -1,30 +1,53 @@ -C_FORMAT_28SF equ $30 +C_CHIPFORMAT_28SF equ $30 +C_SECTORFORMAT_28SF equ $D0 C_BYTE_PROG_28SF equ $10 -M_SSIZE_28SF equ $0100 ; sector size +M_SSIZE_28SF equ $01 ; sector size ; M_VECTORS_28SF jmp softid_entry_28SF jmp softid_exit_28SF - jmp flashoppreamble_28SF + jmp flash_formatchip_28SF + jmp flash_formatsector_28SF + jmp flash_writebytepreamble_28SF jmp flash_lockchip_28SF jmp flash_unlockchip_28SF jmp flash_wait_unit_28SF + dta M_SSIZE_28SF dta c'28SF0x0',0 -flashoppreamble_28SF - lda #C_BYTE_PROG_28SF - bcc flashoppreamble_acc_28SF +; entry for command in A, mainly for sector format +flash_formatsector_28SF ; 28SF0x0 jsr flash_unlockchip_28SF - lda #C_FORMAT_28SF ; only if c set sta $d500,x ; can be any address - sta $a000; command select: FORMAT/ID_MODE/BYTE_PROG, any address - sta $a000; command commit: FORMAT/ID_MODE/BYTE_PROG, any address + lda #$20 + sta $a000; command select: FORMATSECTOR/ID_MODE, any address + lda #C_SECTORFORMAT_28SF + ; sta in proper address done level up + ; only address in range a000-bfff,calculated by $80 bytesize page number 0-3f rts -flashoppreamble_acc_28SF ; 28SF0x0 + +flash_writebytepreamble_28SF + ; chip should be unlocked to work; + ; it is done during format + ; or manually + lda #C_BYTE_PROG_28SF sta $d500,x sta $a000 flash_wait_unit_28SF rts + +; main entry +; c set ->format (either chip or sector) +; c cleared ->byte write +flash_formatchip_28SF + jsr flash_unlockchip_28SF ; x is 0 or $40, else does not unlock + lda #C_CHIPFORMAT_28SF ; only if c set + sta $d500,x ; can be any addres, in any bank + sta $a000; command select: FORMAT/ID_MODE/BYTE_PROG, any address + sta $a000; command commit: FORMAT/ID_MODE/BYTE_PROG, any address + rts +; entry for command in A, mainly for sector format +flashoppreamble_accnotunlock_28SF ; 28SF0x0 ;read_manufacturer_28SF ; sta $D500,x ; x=0 or $40 else will read wrong ; lda $a000 @@ -35,16 +58,21 @@ flash_wait_unit_28SF ; rts flash_unlockchip_28SF + txa + pha + and #$40 + tax sta $D500,x ; x =0 or $40, else will not unlock ; read from 1823H, 1820H, 1822H, 0418H, 041BH, 0419H, 041AH jsr flash_lock_preamb_28SF lda $A41A + pla + tax rts softid_entry_28SF lda #$90 - sta $a000 - rts + dta {bit.w} softid_exit_28SF lda #$ff diff --git a/lib/lib_29f0x0.asm b/lib/lib_29f0x0.asm index 4cfc711..b534335 100644 --- a/lib/lib_29f0x0.asm +++ b/lib/lib_29f0x0.asm @@ -1,30 +1,41 @@ -TRIGGER_FORMAT_29F equ $10 +TRIGGER_CHIPFORMAT_29F equ $10 +TRIGGER_SECTORFORMAT_29F equ $30 C_FORMAT_29F equ $80 C_BYTE_PROG_29F equ $a0 -M_SSIZE_29F equ $10000 ; sector size; MAXFlash -command_ZP_29F = $f0 +M_SSIZE_29F equ <$100 ; sector size; MAXFlash M_VECTORS_29F jmp softid_entry_29F jmp softid_exit_29F - jmp flashoppreamble_29F + jmp flash_formatchip_29F + jmp flash_formatsector_29F + jmp flash_writebytepreamble_29F jmp flash_lockchip_29F jmp flash_unlockchip_29F jmp flash_wait_unit_29F + dta M_SSIZE_29F dta c'29F0x0',0 -flashoppreamble_29F - pha +flash_writebytepreamble_29F lda #C_BYTE_PROG_29F - scc - lda #C_FORMAT_29F ; only if c set - sta command_ZP_29F - pla - .byte {bit.w} + bne flashoppreamble_acc_29F + +flash_formatsector_29F + lda #TRIGGER_SECTORFORMAT_29F + dta {bit.w} ; skip next 2 bytes + +; main entry +; c set ->format (either chip or sector) +; c cleared ->byte write +flash_formatchip_29F + lda #TRIGGER_CHIPFORMAT_29F + sta flash_fmcommand_29F + lda #C_FORMAT_29F +; entry for command in A, mainly for sector format flashoppreamble_acc_29F ; 29F040 - sta command_ZP_29F + sta command_29F + stx flash_format_storex_29F txa - pha ; when write byte x must be set to either 0 or 40 temporarily and #$40 tax @@ -32,15 +43,19 @@ flashoppreamble_acc_29F ; 29F040 mva #$aa $a555 ; $555<$aa mva #$55 $a2aa ; $2aa<$55 ; $555<$80 or $A0 - mva command_ZP_29F $a555; will become command: FORMAT/ID_MODE/BYTE_PROG + mva command_29F:#0 $a555; will become command: FORMAT/ID_MODE/BYTE_PROG cmp #C_FORMAT_29F - bne @+ ; if not FORMAT, procedure finishes + bne flash_format_exit_29F ; if not FORMAT, procedure finishes ; FORMAT part, more to write mva #$aa $a555 ; $555<$aa mva #$55 $a2aa ; $2aa<$55 - mva #TRIGGER_FORMAT_29F $a555 ; $555<$10 -@ pla - tax + lda flash_fmcommand_29F:#TRIGGER_CHIPFORMAT_29F + cmp #TRIGGER_CHIPFORMAT_29F + sne + sta $a555 ; $555<$10 +flash_format_exit_29F + ldx flash_format_storex_29F:#0 + sta $d500,x flash_lockchip_29F flash_unlockchip_29F rts @@ -66,7 +81,6 @@ flash_wait_unit_29F ; lda $a001 ; rts - softid_exit_29F sta $D500,x ; x=0 or $40 else will read wrong lda #$f0 diff --git a/lib/lib_39sf0x0.asm b/lib/lib_39sf0x0.asm index 35f1cd3..3bc1050 100644 --- a/lib/lib_39sf0x0.asm +++ b/lib/lib_39sf0x0.asm @@ -1,30 +1,41 @@ -TRIGGER_FORMAT_39SF equ $10 +TRIGGER_CHIPFORMAT_39SF equ $10 +TRIGGER_SECTORFORMAT_39SF equ $30 C_FORMAT_39SF equ $80 C_BYTE_PROG_39SF equ $a0 -M_SSIZE_39SF equ $1000 ; sector size -command_ZP_39SF = $f0 +M_SSIZE_39SF equ $10 ; sector size M_VECTORS_39SF jmp softid_entry_39SF jmp softid_exit_39SF - jmp flashoppreamble_39SF + jmp flash_formatchip_39SF + jmp flash_formatsector_39SF + jmp flash_writebytepreamble_39SF jmp flash_lockchip_39SF jmp flash_unlockchip_39SF - jmp flash_wait_unit_29F + jmp flash_wait_unit_39SF + dta M_SSIZE_39SF dta c'39SF0x0',0 -flashoppreamble_39SF ; preserves X - pha +flash_writebytepreamble_39SF lda #C_BYTE_PROG_39SF - scc + bne flashoppreamble_acc_39SF + +flash_formatsector_39SF + lda #TRIGGER_SECTORFORMAT_39SF + dta {bit.w} ; skip next 2 bytes + +; main entry +; c set ->format (either chip or sector) +; c cleared ->byte write +flash_formatchip_39SF ; preserves X + lda #TRIGGER_CHIPFORMAT_39SF + sta flash_fmcommand_39SF lda #C_FORMAT_39SF ; only if c set - sta command_ZP_39SF - pla - .byte {bit.w} +; entry for command in A, mainly for sector format flashoppreamble_acc_39SF ; 39sf0x0, 29F040 - sta command_ZP_39SF + sta command_39SF + stx flash_format_storex_39SF txa - pha ; when write byte x must be set to either 0 or 40 temporarily and #$40 tax @@ -34,18 +45,22 @@ flashoppreamble_acc_39SF ; 39sf0x0, 29F040 mva #$55 $aaaa ; $2aaa<$55 ; $5555<$80 sta $d502,x - mva command_ZP_39SF $b555; will become command: FORMAT/ID_MODE/BYTE_PROG + mva command_39SF:#0 $b555; will become command: FORMAT/ID_MODE/BYTE_PROG cmp #C_FORMAT_39SF - bne @+ ; if not FORMAT, procedure finishes + bne flash_format_39SF_exit ; if not FORMAT, procedure finishes ; FORMAT part, more to write sta $d502,x mva #$aa $b555 ; $5555<$aa sta $d501,x mva #$55 $aaaa ; $2aaa<$55 sta $d502,x - mva #$10 $b555 ; $5555<$10 -@ pla - tax + lda flash_fmcommand_39SF:#TRIGGER_CHIPFORMAT_39SF + cmp #TRIGGER_CHIPFORMAT_39SF + sne + sta $b555 ; $5555<$10 +flash_format_39SF_exit + ldx flash_format_storex_39SF:#0 + sta $d500,x flash_lockchip_39SF flash_unlockchip_39SF flash_wait_unit_39SF @@ -67,7 +82,6 @@ softid_exit_39SF sta $a000 rts - softid_entry_39SF lda #$90 bne flashoppreamble_acc_39SF diff --git a/various_flashers/034M_Action36ACS_orig/034M_Action36ACS_origflasher.xex b/various_flashers/034M_Action36ACS_orig/034M_Action36ACS_origflasher.xex index f4d267759140561d126175e40141f94a4a311dec..d45c3ed3081cc8bcbfc009977037912a6a523ecd 100644 GIT binary patch delta 1921 zcmZ8hZ%k8H6u)f&TR<&;oW+^!()af+4AJR^EM|-h?ATkfWPzxO@(>EG&SGlW&?Od} z1wy!lN#YmM?5&}R7kHJ8nCQgCWto92n3qhI?yF-3^Z?L@H|QB-iOF40(N@T3+(imH&LtI!LS9n-VOW5F53>)f4GpBv0K04 zr(DAB%F0TFSCkooOLcnlW;mB%n7|y&hTlBoZF2>(02APl;&ZM6|LI2jA?RoR0TF3jw zDspy42ZT`%>wsPYIWusl%IyrdyCtnc1aG8M?4fAMV|I%4zKAc0_#=_C=}!EIs5&h> z>ryjz_8H`0723>-6Uwoc=id@xGVH$|vwPBfo@ zy}K;l1^bwNnLnwHZcg^bTfND?_;Ig}P_pmAaj%t|?0wMc)j^DV6F**y4Eb0ca0j3~ zRs;OiTr&v$lrt7VQM8!gzs2Oxg2QrX1HAD~5*$IZWHw7tPY}}%X+xw%@NUAj4Xe1E zq?;sA*DSH@VzXo|^DFQQ(ON_}|M7-kD0n8|Z%5h%3G_|BVBOx7dBX>K_}%1s)--_w zXGuSo;Na*N63-1%cX2os73jQVUKQxVIu13Z`#I-;R1N*t_R89;vQ{csrz?hg4#?IgJPplt4#2u$j1w1Q<} zC#tWb`4hS+TsQG`(|g_YOqkD4m}L{X_LHpLm$g1wJ1=YJWbO9q|7#iT*}uxp3@e{i zRWLW5m02$}oqYZ5-a7fU zRc_t@mZ2zWKvS$K#D9N!p<<^xN_tWqD$9dBct&Nf(_)na@$8a;;dd$(A1FZ*ck z(i+#HfNr>1Hh~@>!xERRKb^kxyxp9)(;ZeoP1mS{)?=p+`m~NjJvx@uY8{Pqt33(S z=rXS07fAv!7tk6MZzjN<>Qcw0H}-f_*fyt2KW|_huj5(7LtsE z=HL4tyJ5mM-9(Icz@`g`wLM)JB~~#A*eHo*by916^DK%M5PWXKZURTGZ;aQ|MFhT_ zVxo@}kzp{bShEzi6&|3;x7L?{-hbiZ$Mt=&zDD>>=GXVedWXOrt8{r94B`m{Z8Sy# zL72&W3|KC+pZLre@#*lvremC-pIDC*NcWB0B0LBF3R<%gAY0cKsas>iE{|<-HtBi} Z+lprA$QEwCdut1J7D>O@AKAO5e*va#@JIjv delta 1800 zcmZuxZERCj7(Q*s=)keD0T!I`?0(;|j}8(k`?E>nXvj4gG06NO-q99X4ILR%i;3w- zoavUGrCNd{%aTj8{x}P#7Uv8jfoP0`sht4}i;n#3L%xw5_L-9}Q7~X|D-`_mBr&Gs~=&{hiU?|u+ zfpCYEM&o_L_(1_bt0o~wem4WLa^3$i6{Qenhrcfl0{4U3iDo3(SwA{m~Xs z7zpEo#|J}V2V#H=E1%#kB;Zs{#m35%?lbX@R8vJmd_+uo=pk4$V5b%?sNCkb-7Xug z5{$+pQjDM_4~t0ThJ;T__#KJUnQr`0(%iO__G?8aJp&lD*~mR`Lp>KIDD9GDZ(JFe zFaY;miDGh3qNU-X;S;P>!gX=Ia8ZJ?E=lYz*oAx20@&O1!kTFAmqA+A4!?fd6(@n zM)=C_mthZjW!5XlJrPX8^1m`Cbo`gbwS_fY&Rw=|-OfOF7XU ziAIivLqTM`D}%nX&)A=>EWY{_KiOjJhGNp(#e4VysuT`Cjby#=MBuCTnn=LcMTi2(sWemwVjc zZ3^2mWzr;f)6zOj$_R~E?Nt&@O0{OrO@<|p{T~wswgS5^~~x`agH_%Xr4)DnPYa+vBYVn`50hl!_&MvS}d29v}aNIyP!O; z{3KfyV{IyS>kJm7MP&|)z;iRY;>p7k(4rQr!JUV9pjCw%Uv;)kO(bgPedb)dO17$V zaj#06RO-SfRaS44KU^Lj@y~fxzq`xrIntz(X0`m_Xnxkro$0P-c>eCI_zN}J6!T^8 ztF#hkW1`Vcl2>Ekm@F+>7!F~(hPP_DRSS8w_Ku$nEiE(jhD|i?)JU}!!|u4wvve(a zAeKhHG7_&A5swA|>V>KSImW8_FzeKySgV$n(#?6y1hL$|+h#mTNX$rd}T7236g zecSDa`DG6kNSl+OML5^DRF4Ub&x`@SmB-&{b|pxP_j*jSpvC;2GIy8<2?PPb*2q<@ z=pt(t|HEN12$OF#>jkg{TeH^|t^yWd(~_xo+28UWnn!Rw#+EeLNb~>nn1yQ^ocQYv znmK+=8@sNV^aJ@DZXo!>{jX1SA1q&~0mI8M*}ShWc|>Sun_*Ma$X&pPa`mw$2o I>U>N78ww%C^#A|> diff --git a/various_flashers/034M_Mac65_1.02_DDT/034M_Mac65_1.02_DDTflasher.xex b/various_flashers/034M_Mac65_1.02_DDT/034M_Mac65_1.02_DDTflasher.xex index cccc64ea1a00ac5efef4e42dde158b845c15b32b..4765766cbee65578b9957a3384cdf42593663601 100644 GIT binary patch delta 1852 zcmZ8hZ)j6j6u(JqO{%t;O*M6b*W~@Xqqdz6j2&*Bu#$Ce45p426kgjz^Qujx)-@Y! zX<=n;=B*vU4?_xXu>o(lmsYzD-3RM%1A}XMPz&>eOmq&X5Hexl{;=%arfkl~jYd0tqg_6HLLP${aw6Ir?us3b>hFa^xGSO`Yr@DpD&q_>d-(S@Dmc`~7$Wt< z(O9n@J-i%+>+9>0n%tW2^qHMLuii-Itq{W#;70sTI2vj=)*B0nPi2D;+!YIjIovIK z^;)WJHIJkY+G@94C)qCFZDc(I>{RmsJMHkLo7Eh~*9q=VowmLHYJaZ0V7Gq3$Onm@ z=MwO5@-)F4A%KKp(Qp$vgEUyT#Cm%=`udjDcJ%g@B*P95Ov!d%bu-WKcDPqR^e*m* zhA_hYGY9N7wpD|E_EGAD10TrxnMSAl4AJv`X3z`%I4nm*niTOO8AnSd(&mv-aG6hL@ViJ-|N{0myJ zvUlGrZ|&RG6^r%}#8%I5u?l}eu0Mbu6KT6?BNkLt%G z;Sf@XQm4vl5*bp`0Ak?u=$9fK6`d7%E|Av1;q!iaT{JKF>Gvxzl#n0c6iG1v?N)b6 zYLldHlvE_Cm6F;lsgk5_kZjunds`agjR;E;{3OstWH3u(Zg60!0n8GOC5QXTAZeZi z7q?30risX;#>VPck?*X46%(52zi8r%rthNZoiLxBFl#3?^^T<8l++I;bx=~@m(;7v z@3#`#zH6DC8CC^rtYdEamBa?X z%B>*tFg=dSg>?YW!wBh-VPLqvh|0sm?p#2-bWEm4eDF7 zA-Me~s|g&n_GG-4_Yk-_HAEZrkdt88dUa7|Rqz2#!BSr$sZFkimb1hg(QR~?M0A+8 z{CZn1bA$xVVG`8fV&;c=rV(P@OCv2fdWE#YgTEnsu8^wIB6}ru%H_3LGv{0zu+1|w UM=H5lc&!pUJ>nhvU3*;o2X@iZFaQ7m delta 1808 zcmZuxZERCj7(Q*c(eYV@VL=nl?nm!Ex^>+^Q|rYZdC zh*_Ll&r;I}(Way}tI27&v&%rigam$Q*pH2C*dm}yP$0nsnnL_RL{s0>EzzhqH|IU) zIq!X*=e_6S(>crStCkIw3c}-rWryCyy<&ddx9iG(Fw2k+`##=~jr#}=M~(#h2Z8~2 z8sQhE92yGL0p!TxaXQQRE~ zV1#{B`>YL?_y;2UDD$$7iJ4byY-MJLjiJm=8?$A6Hf_)CSK8AI(W1z7Iw?YLN@Q7j zMvOssRHg|TpCTDFZyjK&U1F^cA$#zBexDB+V59+bG6ZpV)$)oxl@R4rTC=fJ_5 zwBkcMlygyn$}UM}!_q*90l@bphUtBYRfYzKjvJKLu% zEH9|ZRr$e8uaG~U=@WE>^2ZnY1hY0jxX>%;V8*eGFYYNa;%7e44ncXW9rV52GZ-D` ziq};zazn*P&W}vnOq-VAKYpJKOVA}7U2@zR#`J*vkIYj9TL|}dK*bN#(mom7b;+zU z(#g&YWFCHB}?JXp-adN+yfq^yb9nMxC~kqIQsRc+mzv9$Fx^JzeS;L z<@{!aHY?1APb$V*lm2dV@(Dk{etU=A89&sl&=$pTD`BMijTVmPI-1}PEGzgsCHZX3 zJ5g3x9ej?HDtn2VN(_KZWj>2x&uvk$TP@bknu_DDpAOD1O6(2kXslMH4mAeWc~X;_ zd^?sy-YO9<7SX3wm|$@aR1M5A!@hyax=66=LLwt_H91vVp z>6}GPU9vay&8zf^ntcuM(pA-5QJRBqfs0ji(qUfVJv5DA_b0BYv{2ChPhT%xS7Afn zQ1!9vY61dVshw0*Zgpx2(tHzW^Dsz#jkr diff --git a/various_flashers/128kFlob/128kFlobflasher.xex b/various_flashers/128kFlob/128kFlobflasher.xex index a6bd4648fde1d0e629efcedb0ae0c749ca58402f..3fca1256c5385e321983ca9689065d478b6d31dc 100644 GIT binary patch delta 2007 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 diff --git a/various_flashers/1MBOnEscape/1MBOnEscapeflasher.xex b/various_flashers/1MBOnEscape/1MBOnEscapeflasher.xex index e0082dfe7357e425e8884f9b0b0a76a16f4fa33b..b34c46ef89b64779c3a81bdb08ef1b07fc3e97ed 100644 GIT binary patch delta 3279 zcmZ9MdvFui6~qKTDU4#)JVI!pB%KA@K{Bxf*nq)+ zOcGMzutr2l73_Gbacr7(S!3#uh5k_-$OF${ST}g4lYt3oprvUMf@Y>29#zlol?F{U zn*Hth_S|#6dw1{s>Lb^qk6cBG1cA1eiqXRjXqTgJ(ifBBPek3}Whi*O=mQjFk=NH$ zzq7f%uDpvtoU@1MXtH-S+tJ%}NX;3WQh9(zpR&?H^?Hkl8@M=vVcxAi|4y%OE2{N) zx1;j%a)NuKB-Uh?n(S6@gJojjA2^xGDB`zy*bb}pew%;O@Lg@f4?689YVW+*v#eIh05mXm+HA`ykBUy31 z@>f)7hw5`x8z_qzT!I)DW!kYiPg4!dAgiiDw$AUXuVT9h9%{_c7iFkoxJqxIxK^$4 zv-+Lh*Y={#zB)vp;E-QGS(ovyL;N5dG@!r*hsX=V4v`QpI>e}O$9MZ63q)qv=NQ`!oN+zI_j4wkkIyXS) zr#`=LcH`#eS`XT?x4GU?MMzK=R=!icLIMgf>t0^^(#x}J{k~?F5VJ>ZO8hY_MkTM7 z5dE-pR?#lZ(F??NUT7PaCMv=s1CP2KA*=WrJO!6x6tyxc2URX7IhPZnj#g)jK#W_Z zR;TcT6Pj-!rUR?A%MHbP7w)DoMPf| z+u=h}B7rusv1?A4wBnQ=1Ft@DUIpF}|B%zqgv@+Vs_=1END||_+#lh}maQ`}05V<@hW;%pSRmg44998KxwRjyl6(NaO6`4oIou&P80o(?7 z(8UTIK+LzhSyw-VXcHw(>-F^WVyH|^s85n&PA@Mx&PnK;WIrcad!^~UQc*9@{fpv$ zpt$!b?p=!Opt$SWf1D!bEzr7)Q6)#LC=)HhSCrT$d_r|7R6BGkhpJ+~u)a@RFZB1o z>aOpDFM48{WErt229SFQNDU8V+2{9hduYx_b2geQra3FkH75U-=N90(KI_KQ(Cw#m zhnH>-C$gpl)DCB%LvgoW>wC6aH?FqsSL0->vsx>4zG7URxENA?N2tGlQ$8wAMl+5E zXtbJ@h^TOYmUK}8&a!Wk$|xKz2k5vN^?OmRB*z%?xHUX0R=8F%NP*>Z3e$0Mxdz0%F5wjFST;tT3I8)_@$dvC7mK zVwDNdFx`Qe;8~Y)>Hk$?gn-R-)XBoz+b-Q zCMTy?nvxz&O%JT;K~Z`zEj^f?9u%hsGtz^ZS^!Q9|7p;iqPz@^bILFmbC@-+W4>|} zbK5Ck(m54A-fxqCb0y>NwxmKs*$kZ=zL$}ak{C#;llA7z-ju?EGFAS(Eb~E1Db%Pu2jFvwHz-o|U)zve%`IF9e$hb+Y?dcKgg^(jt&f z>g2%b>@6v2F-T0lY`Kwrs}QU|xTlr=G~cLoDk#UCxe9Z(4|8D$=E?zJviJ&l?SK)g zXDP-lGoh3>hI3l-O?Kx)xTZxAU|9FaJ|V`l$2IRTuL4l`EqX7gvgqga%M&D z`%O8r)oZcBa+o7B%C zQfM{`a@qFWJt^z2sFRx{|M6Jvk16R@b#RIN&FS2~sXi}W!}Z7RW8Nyr)B4??gZbap znC9)6#UadDgP2tcFzIWnT6$5Wq9VsAzZcKDlxpcw_2=cV#r(C}a%+WIYq5I`FgbKv zL?}1)MqF#nF4@1s>{RpK3q5<@D0ha;PJ=u;WWHSt&wj7q8lS~66-&NW^VSdwkYb}%3);I*XF-8sZIAI&I~f(!)I^bDr0Go&T-2sV~NEMr20 zNK$0dddB1UjEtvI3$d*l-03NtFeUUL{TNaxU_kho;F+WY9TGk#fDkEdGnvk)Z*OHB z%|xTQ-@do|-uu7ZyZvgv_so9p^h}0A3o4{o`^#vDbEx$1rRo1ky7r~0zGwQcQ9XwO z!B-o%Zfk6)+()50*C5rs-O(L#AfAcfHJ7G(mNDoToV*-AuTg0OpGFWCXbQG$4FsFe zMt@)ns;sP}__xYa+a2VMx9mDNa7M9$2CeVk(V*z&m15?e9bZF{vd_gb1}Suk8LmMOSY&Y!|2)m_#eNR^>$!%OVBUJjWh%^cwz6;ddK8?ocsC4t$|HD(1u_GqEP*j&H5=i<2z32-QHgs(7KaONf1vt zB}zQ)lw#r;X9$Mlg`8`CyLRjlTOu;I^|5A#ysPcPdP{0 z)Q=@9IY6tE0R41&DXMj?MfH1(rB=uTC(w_dpsCzAEl=V+0;=s@Y@8V$a7OIXCfGKp zCB=}D#T>@`9?dUzfz=&$g+yx1E{9!W%7x-C)a$~@1v9eItXb7dEo@pZ{T6aabNJye z%%J`w7c_F&rB2Bj0vO=VxFjS}w3KOYYu_bjGKdXxsgGRH#ATP90bZo&i@=-G2l;U} zVjXJh+u<16)%UtXps1l;S6_FilZM)^?r;borr3l}va+JnCoP5AerQix2=zT!GYD01 z#d|CWxzD1>^ib!BK{fCLc%PeT*zq7O2kEdqfW)2j*H%_mpi&NN+sPs$mujX#T@WNE zgS2`FAM13E-|m7l-M1nT47}=ZY@qnPH0V26rk*gRYkZ&wzlK;3(F6t@oj5|nIf>_J zoExN8VfX2c=$)XbnhS3J zq?_O7=4I`laL;>2E8&x35xvybp7zgaPj~t_ZyZufaj||#su$yfLunYni&r$^l8V9Q zkN5r~&k;VvFJk!l4F9>CpU2>T!ae^PqWv2Z>$Sv3`*dSCcf3zOhSMK~^mZ8I3SXbY zb&mSuxK$~w^%zl)Qrb^-|HS=>jv2#U&oXE>C&Sh(V`N=SgexeP^(5g=SjMES;7-ED zu$+Ngz;f_erlX^H#3LME$%r+~@fD2dWh4WNGxB6r{K{a*6FzYJ%wDs-*~^Ga8SMgM zeezQ59Q4kC`_I6lPnbwWDC|iXSSb&}(SBB1B3@@g;ONVY#SpxbD_K;-4o|vxohiQK z6Whi}iM4)#>bA3@lMR7%yl4p~herrOfmjmV zVbwg4wAL<&H`tKRuGRMAIT7X{!7Wz2&87`v{^gt!F&U=C&)8TkFtzR$s}`hgLoUcI zWdzQvj^YtDLczz@F0I86VGm-@!pn+^uuVATKv5T|& z13GaN=MPX~6aHpZi`>NdY#MW!+f0?>9`|3&)G0yFKal|so}424asvFu6&N6+|Ae7#^Ws{ zKASB+$12FN3Ue%Lj%CZSigK*t9IJ#_pkmke^_rTxkjEYRM{8#V21uMqC;BJ4j%C|@A_^F6}zg_9ol zz(wK2rYZlOGwESjwyg@{%B!7lJ^8qnNrYIaIaMa4lY|TI6E3snY4bmLif}_M;g)8? zut?Y~6ZRzu58fyIlhvffpL>e%lUiU_*mtn7qtWw06RW`E$#KDpu)3W(<&E8@&e_?u z-^IS)>6AYlGQBkJTa10IExP%NX|nSC6;rY#yLbssT&mRC%so0~^nq#Pc!c-y#G~jB}uq5^Gwyb73=`{QU&v2}s+ zuhj*YamuqTFjYWqg>{sW2}eKOQ!q{Wa(BV~@tu4TN0ckp;ey*Z;@_hrsWCkfDQJ<4 z(*VVl^Hb+lXS`I`OV{|s8(3M#QZty3DGupOM8-JMpg#}9jK9m=)Cws&;O!uhsa zvmj&n8k?rDx|MKA58;S1~$TeZv##R>cmM$tU;iW-{g^W#_G$;uq^dS+tc0w!NKu}s^x}mYHlXu=b=>}NV z`@QqO_k7%Q-@T)6S7qL=nv=;8y4A0#Ew9pD-kurfW~9H=Y%NPEJ2a=Wnn^Sq*%54P z3f7k$A#{zen3fmJU|sZ;NO)JUp4NrJ4GSpI_XzZir0+GKACt60 zzE3Ipk!^N7=FwvwcesN2ion&JO)KbY!AO01Lu0i5F;AF5>!S5RQ%(r(@ErDHk=`tX z345tXB}17^IOvCe=qH!3EM0qQLu#Xydj` zO-UG*+zn>j4Z+6n=ACp?q@EHmmqoWVY-$Wb3zd`2c84vO zbQ5g~J?zywJD7vU&w4e5o%3pho%d=g8}`QFwTojaM>qRB$+%9GF`}k(^t0anb6)yO zE_K#xI8x`lsq-d>z4|%tNW%D|M#famm<;IR(o5+o-$qFOpGY)P3N_b-=*v5sg5Cv0 zhq$moUFH)e(73pE-IC|mmDWWgO%lTP#xn_(2H)Kr=fO%9l>=H%r*u#yR1jFEA-p761|KHBG_KlYh16(=p^M5kfb zqGH>_6dhg!=``Mj51=k#GO`(#3fHKn@DoGModU6*Tkxt5npd3hEu`*?W+ zFE8Zf65ckya_x$WSOuXAdHAHDt3=fdMRS1xujLBpS_K+lE3E;ksuxVE@cI+K3iT>l zdx@4YM=Y^pRo0x~175z%%Wv`WVP5Xww>&PkbQz&B*;$*a^u9` z^^Iq6S^rNK6d>73AsG>@WcG10@~KYSxS6lF6KqI%3Q|64zCS)Tk^7XD+gz)bW+bk{ z@{K-X{=VdQ@b@`&QrkX(u9I}4vOR)sQyJWMf1Xgr;11d&r1L=@gNtad05?v~@qNPn z{jQNpW#|ooH48&60!s**gWeYKJh{z*0LTGnmD9Z~A+Uc6)`ceqv^W9L)Q(w-(p^;o zH*s8~MPj=Y>yL|C7Q~?=qPCb7i>A<-8CNNM$ZJJfBMwZyR4lq~1^#z-H-;3|rDeLw zHKH26TgC%tAT?~)hwbbMBP6EQiu;Wl&H(gjLW#Q-x=5^4NHQtLx=D48dWCGp6bi%bY@T={ zNAHpX`cWyMz|l+{H4}76#*J>G1d>-JGY0)YGEcTth%fzDJKo9piS6deXLDy!oB!lG ze}Rd*Y7338T4-*y(B5mI>w<;;PfZN|F4typ)Q|jAH89)H?I-(5-r?)jwyzHsY_WYh zcS4$CN>2?wdBAq(D=FWabr@!q4}Pc5c4jU_oqZ9a)6`yBG+Ey(Q$kcmFz!HdYFcaVCX!}9-aG4kSb$d9%lZy!KD=tE|YB4>Su z$W~MMp-*kU#t!$?~(UaK9);_SFC< zHtbu2Cu*{tUs($uv7UXzTJ(su7%iw`a)Hx|KBEjcQS4Hy*vl4_re z9Yj{Wi(LIa@};}TZH0N3|Lf(*1FMm5MUmP;j=if(Oy^Fk2IK}e+dpXiki=5Vg zENVwq3?LU9$W>|Ni>`dje`^JDcP+BD0r~TGn>3Y2S{V zdI(8RAj>Z!7u`eFOf9thUzms7vIew7?_pZmoA7kiTXFQ_gh A3;+NC delta 2912 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 Veo%3=zuYyc#3SBy-gCyqe*i-!{ty5F delta 1952 zcmZuxZERCj7(Q*;=mtm?HVc?=c0YRW9s4K)O<7``Rj?V?7#$F@skvkA*7DKKF-_r5 zOUxo}J+r2PCC-|HeL#lOJFH?ehE|)Y9+8-Vax#qh1Av!g~X~eF1;n z2*S?_qiD#_4Fx#7K}x_F=LM{L;SZ(!ABUjjbFA ztz{NQ5uTK?3jRq3#@`(dG%6!VgLqSS@1FL)zM|ju-agYb^ss?R(aJ6JGL3D4-caX0 z+#dF0guPR()(T7XU7o(5deKJt)J7X!oNBgFl-g{gwv^YVZu@m(;|N70%TtX^@(@k& zG)<225eNrG5*P8R>J*yOkv4jybRLXSh3D3+_9Dc*nlJ0N;po5QY^QWMA;_Sny=&Va222#$@e+r=oE_ z;iR27`v8*DG`=q}%rbmNRM!g78rm&H2%2;1y9M&2fQJPf6IeFQjvooK-LTSbId7$( zf(ETovk&Z0&S?QEJ0lns^9>CeK;IQ8Cietd=#TXu&CtC zGZ-CX8L!A-Mhx)NE`8;gMiY#th51g#mXB#Ve^SRMb?&6@9811lYJc^V zOU=5}c9;55@f~qBY$&Gi(R9K}WBvJHO@DsCr!-|inr6t>ak`acM#u9I!A@NIH$@#l z1vAO%Qm*zhRgqLIsXw^X)e?J0TO@Xc4u@?twic2y-o@t*{9btcC@Jm?!df+ zzmpQx5zj6nTn5tXM==$tC0Yg_$Z7tVnr~=OX@&>K6?WQ`rDiZOnEa;fkY!}5wY(BrDyQD6evCn^xd<2q=Qd^Q43Bs2`JJ2d z`<-*&JvX|ZcGVV(2=8lP*5JGNh?HCV&Dz4B%rUqdM?bASkD~-fqNhXs1EFB!MTED@ zS(NVar4Re?32j8|;p-B88vcUVLGgZo3NGU*hQCFQM`Qhw=yBW^j-0}cjg81i)#rPB zc8|{+X{MX%Vb4OS8NVNj2AfXx$AYaG*-MfM^1fIwB;bJNjnvXZ^>(ioLA1NxLf4DM zLiKQOJ=Uh4S?CTg;9F$!uLJ0ydCfEE;Mh7m*2@9nRWi0?cf3`s#N2Ao_NwKXU904n%_(f%``6>?D3ju_Oe!>`;5`kaXwF9FEV2rf zc21fclkg`>J|}TkeoV@b3(F*XOqxmZ?-`m+DZC6!QYq}lO>#G|{}qizx1J0P^o4Qn znSqehifqUW$B-0n*nkuIfv)zqy0-Skq5}l6irG3|_yZczVu}@G1!rbx*^0!p43%G%`Acr79UK!JSUr>(rjKM+983|znOll-&{MPHTehhXnL zlJ9|i%x+Xo=p)N>$N*uxob6Qj6Y;q;6Qf6lMqliRL?frep&&9oQb6D3I)1aF(C!C4^@&A6B~jqO zS<_1j94x)8h~%KPNxqf9k+s>Vju zSgty@w;bqbjyEH`QH4(mx{55uP38dymQ5z$thwZXZw~oM+XT3{UA5PL8J;lN$QD)< zkp(cbwY)a;gKBWq_)sHwYJk(ZMl3q~LSJk0XRyIKo z=GZ|xk%dMc%)!UIW(nk(@o*QwSp-~}^X0xo&Ui;Nx-_FqGn|_7w`v^FN{{E&U8S=A zBkRzBtU*if*A~c}b0YKfsAEp>O^kvMl+!@DL9AblEpksUaEn@5fue*3BAKw~a^S1a8ouL$@7_Pg8M-je~1{-`a?Fx}4*2ta|2FCb>NZ3|3SQ^!tygv2LJ zos~l#JfXAKX^k#`(c+wi;X~e`<3@d|>|TxTdE)=~?skVw%fpIUG>Y=V3j+LqEqKyZz9oMI_-hah={`qI67;XVKnDYaGi2hFB%gS`=3h;GT@>(2#Dg z8HcV}vjFmPU<81=NZbzt@2(aWA+aBFml0Y{3NBi8|9|Y34Poja);_TLGQwZZmxl>o z4FZ-*Vnvg*@!Kz=Xa>Q}8m=O6)aKItX1<&@rEM~njql_jA3!Ld8M5semg<@Cfvb%LS#x3{y2+FfBG8P3qSl75m%V3EG;Il ZWzJT9=J@u?hN^YgU9CKF{^X1){{U)x&G7&L delta 1811 zcmZuxT})I*6rSBhSP&~krHeJ~aQ|j5DxmEH@FMy^HgNj@VoQsfE3mq2;;u!~u6^k8 zBPlV=W|cI3AS4^Y24?kA5=%szCO*^(TJYLRVw#wks*%2|8(wN#&GyVfTbp<@nRDhl zbHDSQ`Fq-OwWTzZLD*By;{(U>Avv-6`sVa=?ikpIYtEH^g==&i2%hqFb^AIiMi72i z8AH)FDSA-CRU{_n*d-A{@G;$@qJMzWF5@YN-vY;ip{_vi81C=~PU4D+3S{(_rP?H` zP4Wb)*jr^VCmX85pZJ2El_$GGowXQQFOiAl9idL2fED5i6tfS?ER_ThYb}eTE167s z{ZM-uCetf%G-szV)29wf50L#jkgyLWP{clx#_Eh~7(%#ac*xOMetJGP?X-Wxe~A3M zgsd@yC&{#qf2M$RhJwCYeFT{>J>w|N5#aDPr?ja?g6R9cuE5dL_(-r5BV2Q-$+^Xm z^O?+hhL5{&WJ2a9o0K_XNtwsl1vw0EpUV1GTwFeimMmm0pm;jpnvka^Wqd|WO~|$@ zH7Tc(!d{TANqN4C?y%`H1SLcwkw@w|n%?et$zceN=fcnD9gc(}wWoebSISROps8NCpNRV{H&Mn1J!;gpVu1GE7gESqM&a? zWV9&=xkK^qO5*Ii%XS(4Vq=2GT+caZEH6+a_)Qt7o?&|&ZRpBbci((sb zp~kD=L@^YHX0Cd|MDPyH+B$CXn80~vEh^B0anq7#Ej(*UvzBMvdUM<=9XE|>&6v=P zR?Rqe0KW%(k>cf;NHpV5 zih6lETW8FkLD}ycZI5mF9UaDO&dadlOszCW<~MERTjk zx|k%>*x~RPs?HLLY7r}@5a3l%H4ulbJTaVlE-H%`@yr;ykK%UavK@Km_NL~X)|``V zwf!`;oetWM-CiKbBL6%Ceu{q~9uvB1GYkph3;0KB=YphGkICj}*z3vW_KO&U7!cf~ z>=sSCSi#-@rHES)WK1STH_w=Qoqbz)Xdc0h8M;kjm(5q{F;g~$ zOK^vpQJW5d;e|$&@O#;9w29KY&=H4tLAWw;FY?)u4M#xM8UV x9e5gb`|%huz0p3s0Y2QXiwml6Ty>`UhQH1K(sBM$Q$Y!KZ%}`AK6HMp{tcaZ%69+& diff --git a/various_flashers/8kB_WSFN/8kB_WSFNflasher.xex b/various_flashers/8kB_WSFN/8kB_WSFNflasher.xex index 3919dc240f083be24b8a894d8f01413fa08eff6b..dcb34d03f5f8dbdbc6c3d891632758e028f87e2d 100644 GIT binary patch delta 1859 zcmZ8hZD>6bdB_Rp$gCAd2awrbUZr){Fiq>0or>&Cq4 zpu<&9=oU66rEm!i_Ec{vXdU&Bb7RB&sNNqI989Pif@6>c88YT1dru=|E%Uq+)r>cb}BqD7!Ea#BfM2k zqhxm=c_@HSXk%i{-3?~1hR2EBC&nd|_ZT@0e~TWE#RsCXOxN~)@Gkr=(dx`x5&()z!Gv^h9vAj02Hx{8aF7 z6|(Se+AP7F zg*_?FWF$PSz<3_m~=%2^pv4;Mh!M+IY zJu?`VT9FNT;TlXa!UAmSon5>3bv5+GV}k_o@`Wu<{uvxZ3l%AN9M3-S^8jmdGjxx# z#G<{{VSjljPDo>Zehi|Zl3SSS!p;g?rx=P1UXsc~3@!R?Dzm#XJ}=`zS>&W%{JX4s z9XF5bd3Wm5l9$YDGVFX#cGi1g@8D2yV74T4%pS_TFp?MJrNkB*y!GFk^(X7Yu7zuGPdlgXBq1YXYKZ@B=WyQkwI$TGDv=JR| zB)Po`sOwO8VWC5D9*gJFM2v134tl&j8jGHaghR;qPyu~cwm9FE=XV7`Pp$bvP*D^( zaMx^Ffs19A6_FgYHVOEW#BM3}l*GP$0mGhhrr=B{EpX~agK9LZMzv}@Rg4nV*r6Jm zRAZIu+Sbz9-aOQd@Fo?W6r3uuxI?)Q9GEsyzQNoL z^f59tb5!SLkOy;}zrm_>0ZbGYEeub1yN(<5+0r{zy6U77P|L>)Y4iYDj{Mm9 z(;Lj)cH6hzY@=gF^xSs+ob$*Fv}_rQ=zfY{(_1J?#`K{y+EZaoVTnNdssLJx;W7f; zGcg?wq}xx2;LxlE0G%>m1c158P!L*OR*Q&`SP!X72rDId539Vlf<2;}mJM-+i1iNG zTnTYr$(0gk4G37Nh!-enbH4jOin0i5>Ouu!)6;b2dYY>wP##r;CM(GWFno=X)%a={ zKvS@I2NC+o$Emdy_3amlKN5AZvm_FQ9xUqGsjy8Fw9k?tg#yf-70FEEJW3-POkO8@ k;D^5^qJGKh;$-G}YNX-|*AG`;t=xdUmCDcVU)(X}A8=m9TL1t6 delta 1790 zcmZuxU1(HC6rSCUag%6Gs<9iTINAF%b5~7LeOdF+MxnCWTS#iuG{$mcc6GPluEZdl zhqBp7TCth1VQC*KfhBYkX7R>=M2QqEv|3}?y1Q@;hu2h1a4?(K>9#^ zq0?)2dOeXQ_If?6DY=^PsZcc7c%nBJY{tlZflLJNi3LLfmWU_vDmzeb$|Qo=!TJoE zEf(#n;qH1&rk`Zc4a>&E+SDQM9c0x23G48JBKE#_yhXo?!G-v*P1eo6F^se=L!FwRo8#&sKyQ4vju>WGK zv({18FY!b=;=+jui5qNE;)rpHXIM^(!!W6^K?T?N#?YdPj6BNN73PFAH7ViKN?}5> zT!l%gz=h38=A<+?VExQdeo(PifJrL$F5Dz{K;%E8vFO(0-F-b_e5AiGBsC)wcwyI* zqK5@ILHD)qe6M|LPb}J}A-*!d$+Dk8-hM++@ED$c;^AJ_=w#@Y!3Gx1wHEusW#B<6 z<>5!c3o3aAKP19V3%fR zlDH&8=9guw)(yGC#DEEm?#djqdonK$4GbmCVi8wqg-bFdeOWf|f}Ou7&x5_suTrdZ!ENfwr-A(Z(#H&+l zaFxoN;6^c&fo3d?gz@0bs=47ygQo<}i_2cTIlZ&IuI+-VPpJAqRZo@LsJd-Oi88=5 zDJLHovcp@3?6U!_B?nYI$M$FWewG{0+AxBPx#mBJR|6EzrLUHI6BqPNL|;$zysFm{ z(MHwnJC?M*gxFako*8p23hvyPb5YRG0KEssBEpM45oacx6RB~#lv2u?L8b4a`lkAm zk||3JQ-U3u30t8O(~)8D44qy^^6(6(#9j?>9^L{%pz za2IA|sUkeW5db*gZgG2#ON1$;^ytulsR(eqWedE44+#E>qs(GiAZFNSPcaS zZ-T6WIBu4U>C`ikS*Ds7$I)$+u^Jy)iKp&B;fB+^;ba@EFfI7#8SB0~00brEpNbDt z{0s3I(D{ux1jyv^_tYu}NgW=8eMjQ~Pbqd-_!#(rV2-kz)ONATTmK7@F~QBQ(agJG z3te;6sw&(BF5u=xLu;`X#0bqHD30NI3a4zmOpj4mpm5(UYK$zda<=~J$A2B?mF)|Pbhx_E;GL0 diff --git a/various_flashers/8kB_test_cartridge/8kB_test_cartridgeflasher.xex b/various_flashers/8kB_test_cartridge/8kB_test_cartridgeflasher.xex index ecce7de12f2f6b3a246fb1c08905882598bf78a4..01a11651e8f969d65811be806a636b1f2cf22f89 100644 GIT binary patch delta 1836 zcmZ8hZ)j6j6u(JqO{=zJCBMQzCYk+_6qJm3%iXqZC6p0QR zkwZ&SxT&cLX^BnwUZ2(L^BOHw*#t2>0dB$Xh9be{ql3|)^jtOw!F|zSh{OGg*QlrZ zChKtOfTRAU8zkH3yNm1>fSu|-V5dF4beopL_y)nlsZ)+O-x$u77o7Gl82KR4%UlBf zO_?KjJp_~QByYT+3z;rq*FhtJ@%%taq7%V3wnvn4BhAFgYA$8Z ziImR@wktm?CvGU{vIwRc(h|J&T@oBZ zw`6ro?Op>@LwY81cLUx=xVDoj7D>KK0(IRID=u_P_CtQsJBZdRLTgXA8xiAJI21(M zSn6b1T|7fd8bA!39{o~+qoVT?&jr$&Iebo_Hze!4K)+vxp@jSdr$|VCXt%aq)>>t4 zy{sWwtCF=gS(9aLo$T1+-_za_Ye86+;U|GEB9qxV^MC_O9bgu3DLLFv1W4NqxVS^M zHcW?SbT-+@ihO4oten;@;i82vTE2^xciMV!+Nz({wR^I5Th>03wNY97K-R7;z2C}c z%Z?>>X4;jkrIC5)S27!+XXNA+IZI7kTFSDaRt`o0$S1 zDCdE4BVRwix6D1i#LXMP3KYdn=!yL~;?K|W0r@A%TyY|z;8%%-OnOAI943WHm0Ly@ zV0s);3TpsffDtmFz`&^ZBBG3sdvbpL(ouyTRxU*q+OIGdzNJ_-HvPlprT4C4y*Z{>bU*D9e_S9 zBXO^eRn@PfWK4~vQAdS&7H=kL#43Q+q}W4%I~!A>AzfZQ23<230JO`25dgZH!~$$J z#D@76kB8h&ON;E))X9od4*P;sxemK)rF+i% H&Y1KMe80+V delta 1773 zcmZuxZD>P8HV)iArDcZ|_0(r)9{CT%h`k=l*u zpHxPfYja9QP+=vIh33Zz-Y%uO>0qGj1N)=(4lPqR!OaN{G(>;N+{oUO7B;qB4(EN( zbKdj3&wJ0ulb)}8wp1zzH#M{D*t>X8%y0U3Q~3{O8S`WR$6K-qzltN#qoLuEP|!Vv z@XJyTO$LR@kbrk6DTqa)Ht@W0~2O|3@^Qw)BnO!!vF05nAch^8;63Pfta`5YwCdHdFWtK8`9xAoIoTjC zK8EBhiytZ67P);%*4iZ)O&*fs6fHT8LlXT_!e=BrD)DT(9Y2+b-L$e8DO=g6z`$0rG9G|kd?+n~y~n;> zQy{7J`O(avkUxklM~JerU&JJL^d>Ii^{bfB=`|2^~#{GPiB>c zKH0p_k3g-e1tr-3sjf&gax@$YBJD#N^qp-qFRd=`41k`d6+O$EU;ukbKbK+S=od2Q z2B~cvo=b>yK{n2bba4fTno1KqXHxdU|JNE_n(We^%GwJqt=^?=a&>sSyF76ZVvf`X zT<>BYI5HGvq3O#WH~2-Dv2|K!DGsyB$|OhEOzVbt!N3;`;ez3uPQO)afAgYCE4s9P zm-b1uO}RRDR8s_4Hf3d_W94wmSb034b{2q|73khP+e-_%d>K4Ai5vcgm;<12Aw6F! zw0@?kiiQ>K2bb2U@HXYzwqsfQe~HsOS8uH2gy(_K38VT1_~8OChLx*Tq|EcE`hDdJ zxPF$itCAfGUaJ~VyGJoBSqg6sT|pM$9q=gS^#CuxW6-X^)vr6-p`1MFnD^=zw=2}G zT->J6R)yK{8O7LW(%)@PJ`n&oVDGd$6Ng(B+NKz8C4xx6Xya(EvjyJ3vVy-;Qq6Ji zOj%*IupFlddxe@x9Dqz^DU0FEZ70}GiZzR-;Kt`U0O zLeiJ*^+QX9UM1Pr0WV!6=GxMASPNXNqN|7TrimJ|V#6r8(a0JmFehJMwqel%G-D*IG>r(1gfu~0` s@8ysln4C~|!-tb9zisM7{HCg8k7zki*@IJ6uKE ztIb2n1GcISx5!k$b01kNfStB`fSn%nq?)vw7~di|mON$KrG7YDnzviOW19yOy}~8n zKa>o?ZU`WOXe8K3P9q(Hm)fg}Iha)Ko>kj<^t-{{a7RCGj|4EnvFZJGm#z4?z=o1X zi*WqBz;v1s7@`*hX3%LN2GfK@hb6qbW*p6#NY5f8UuK>crZNH^k#gq+t0Lr z7R-z=J7E3HPrDZua6H4V{X=gGfzPdGjO-cZHC(|lI9h`8|@Zj z6wSHKZjs&<@hK6(XnqlDd%8Is2_Fds z14uiO94m3f&yocVAO=p8&PZ@{^jnGN0%@B#d_kbMBy(Dz*+m$(kV|liVW}R$2vSHJhwe$l7*UQ)F$8Y};JFr`a3xBCN=8X`qV8V3y9D;J{P|n8m#d4)+s2(liM! z-X)uBCqk1t8>?jnzOo3GPw1v_(Zm-`&qdQcVXm7nt0r{qfvnw?wLw`sE^8ml+O_%r zx{NkA%(FAYDreqW=A_@rY=BP4qgUj_0u!4gbZ?sNrIRTr=H4{i*;Q=vKgc=jw2Ht> zArO!}Q|gJQwN6DlplB6}woK6+inf38cfQ)Nu-E_D-d2F^HD$C_nP;=l@ys*hwmHr> zISxKh&H&|lK7V;_k$YyIn-_rPDT*6V6YDF)zu)8o@_orD9*HV=8!?eVdlb`VQ0P)O z7m+MU`v*19J;p`$D?mWQ7#EhYU-6Wc}&zX7x& z;e$FYBCT#66SZDPqy1_ug?5%1=WrcKAyx*o2E{7~a8LECP>_9YJqA@XvH)78zz6_c zPGUZ`3}QokiN{0k3PPPE`Gvz3UqR?nV!Q=#u7X%=a!z8c1ilv)u!2sStRG)S(JX?; zKC+s?$?7l0>p2&Jhf+!OQ5P8j!&Yi{6jlKPNboI`A*7!;{^=)gCacRx^8|5+!Zv!6 zgu>8r`J1-N%mne7Cy7so*O)uW^CgJ&FoksA=vA^4KKujW&4g4eOs1|T$I3pp{WL9? PS7L`t`o;dh-Y@+Ngr&q+ delta 1777 zcmZuxZ)j6j6u(JoOgqJPYK>Cx_WggQOVT>GSYhidblLU>8*7KqPF~lfO@>We?MB=_ zq=gkqmm4y|rcetpm=Cx3y0%(Y{V=9XW`)-0Xok}j#7%G?e8hg5L&(le3vi=wPTf)*p?077F6taO7AEMn;p2KUR%qHr_==hxQmlW~4tF z8;nHz%URgt@gVKXdMm^kAVW&bnx3_g9AN7LuI`^gG1}0A;Jpcu{KHJRBNW?vSyW&viY0U=IM!EFo(;qa#MCgliM3by~R5hifx8{c@`?>tcWSG+t%8#suIdfBfc(tF?K}_{#wqtb-;{kdI zYKNgc+5+|cOfv}0vx>JB5OPPsHZecG=rA1`VGG?Q!jgB3Mz@%7M=&`mK9yP5fbA;N zc2vP@iq$28x^9t{mbyjr0o&KjsumJpQzzOZ(a7;|D2TK%5%itgYyPmg_*ww;)Nkln z*8~&TJMx_f8$}jG#tl-v48D-y$+Bq7^W??`4n0{(R+ET+Sbq&mnj~pYM6FTMY9(!_ z)a-w+-52*ETAkj8YbEM~BSKIXUVYtT2EQa3d(P@K&0t#E2r{(ltZwiN23|0@1;c$d z^MTX#?j=c^m9!5fZKC|1mYNTgO9W^(ZKuPd#c<dc3ySgW*H?lEo7qw@2;^oDd#%vL0l`((UDHDGC)WW$yv@SjO-AWLxfo8;nF zfS2G0&@97suROO;9viD(^y?S*%fu^Rd{HJInL6+(+1PH9za4HC2ml;#wYuB`9+~)L z!z)LS5-@xW%(XVcZ|{+ef0EM;@q~Z+kxZTNIsQtauacW`9DvDEA&cQi?pLr^nc1{_ zQ?7mxAj5_A5{JV&N;wr$qr^cvOL{>`ABpFXzf8osMWjxF0QEuFKpZz}*mT;dzz5lC zTFRkSlr_B%%*0==fOXAoT(grsW>~TID`Vz;R{#jg2<3>^PS8qN!GFkZ9R|N1hXUCp z{EK2bLDFHjPJUM60e87}n8gUhfM7)-1*Pa9RV)7~ku@MpOeOm^SgU(QF`u&vzy;j2 zq^qsw4d$Um1eYcGs{*^MKTD5p-B#fI-%<3`Z6yhYZqZK3v=Ro;u)a{4cPhQ@G1VQ8 z*hq&Ojv&&>?yOm9bgBWPLk;L~yQ~fscsf<{eh%q@R8oBt9!ykrIn{0J&U7+!weoA* T>GNGxwb->wyl4O2{<-)MbHBTX diff --git a/various_flashers/M091_BASICXE41/M091_BASICXE41flasher.xex b/various_flashers/M091_BASICXE41/M091_BASICXE41flasher.xex index b929b0a32ff8c5f4ea5ede626dd11142b81ffe69..412574837b87c9f60b2f0652a5a906cbbd5c7899 100644 GIT binary patch delta 1921 zcmZ8hZ%k8H6u)f&TR<&;oW+^!()af+4AJR^EM|-h?ATkfWPzxO@(>EG&SGlW&?Od} z1wy!lN#YmM?5&}R7kHJ8nCQgCWto92n3qhI?yF-3^Z?L@H|QB-iOF40(N@T3+(imH&LtI!LS9n-VOW5F53>)f4GpBv0K04 zr(DAB%F0TFSCkooOLcnlW;mB%n7|y&hTlBoZF2>(02APl;&ZM6|LI2jA?RoR0TF3jw zDspy42ZT`%>wsPYIWusl%IyrdyCtnc1aG8M?4fAMV|I%4zKAc0_#=_C=}!EIs5&h> z>ryjz_8H`0723>-6Uwoc=id@xGVH$|vwPBfo@ zy}K;l1^bwNnLnwHZcg^bTfND?_;Ig}P_pmAaj%t|?0wMc)j^DV6F**y4Eb0ca0j3~ zRs;OiTr&v$lrt7VQM8!gzs2Oxg2QrX1HAD~5*$IZWHw7tPY}}%X+xw%@NUAj4Xe1E zq?;sA*DSH@VzXo|^DFQQ(ON_}|M7-kD0n8|Z%5h%3G_|BVBOx7dBX>K_}%1s)--_w zXGuSo;Na*N63-1%cX2os73jQVUKQxVIu13Z`#I-;R1N*t_R89;vQ{csrz?hg4#?IgJPplt4#2u$j1w1Q<} zC#tWb`4hS+TsQG`(|g_YOqkD4m}L{X_LHpLm$g1wJ1=YJWbO9q|7#iT*}uxp3@e{i zRWLW5m02$}oqYZ5-a7fU zRc_t@mZ2zWKvS$K#D9N!p<<^xN_tWqD$9dBct&Nf(_)na@$8a;;dd$(A1FZ*ck z(i+#HfNr>1Hh~@>!xERRKb^kxyxp9)(;ZeoP1mS{)?=p+`m~NjJvx@uY8{Pqt33(S z=rXS07fAv!7tk6MZzjN<>Qcw0H}-f_*fyt2KW|_huj5(7LtsE z=HL4tyJ5mM-9(Icz@`g`wLM)JB~~#A*eHo*by916^DK%M5PWXKZURTGZ;aQ|MFhT_ zVxo@}kzp{bShEzi6&|3;x7L?{-hbiZ$Mt=&zDD>>=GXVedWXOrt8{r94B`m{Z8Sy# zL72&W3|KC+pZLre@#*lvremC-pIDC*NcWB0B0LBF3R<%gAY0cKsas>iE{|<-HtBi} Z+lprA$QEwCdut1J7D>O@AKAO5e*va#@JIjv delta 1800 zcmZuxZERCj7(Q*s=)keD0T!I`?0(;|j}8(k`?E>nXvj4gG06NO-q99X4ILR%i;3w- zoavUGrCNd{%aTj8{x}P#7Uv8jfoP0`sht4}i;n#3L%xw5_L-9}Q7~X|D-`_mBr&Gs~=&{hiU?|u+ zfpCYEM&o_L_(1_bt0o~wem4WLa^3$i6{Qenhrcfl0{4U3iDo3(SwA{m~Xs z7zpEo#|J}V2V#H=E1%#kB;Zs{#m35%?lbX@R8vJmd_+uo=pk4$V5b%?sNCkb-7Xug z5{$+pQjDM_4~t0ThJ;T__#KJUnQr`0(%iO__G?8aJp&lD*~mR`Lp>KIDD9GDZ(JFe zFaY;miDGh3qNU-X;S;P>!gX=Ia8ZJ?E=lYz*oAx20@&O1!kTFAmqA+A4!?fd6(@n zM)=C_mthZjW!5XlJrPX8^1m`Cbo`gbwS_fY&Rw=|-OfOF7XU ziAIivLqTM`D}%nX&)A=>EWY{_KiOjJhGNp(#e4VysuT`Cjby#=MBuCTnn=LcMTi2(sWemwVjc zZ3^2mWzr;f)6zOj$_R~E?Nt&@O0{OrO@<|p{T~wswgS5^~~x`agH_%Xr4)DnPYa+vBYVn`50hl!_&MvS}d29v}aNIyP!O; z{3KfyV{IyS>kJm7MP&|)z;iRY;>p7k(4rQr!JUV9pjCw%Uv;)kO(bgPedb)dO17$V zaj#06RO-SfRaS44KU^Lj@y~fxzq`xrIntz(X0`m_Xnxkro$0P-c>eCI_zN}J6!T^8 ztF#hkW1`Vcl2>Ekm@F+>7!F~(hPP_DRSS8w_Ku$nEiE(jhD|i?)JU}!!|u4wvve(a zAeKhHG7_&A5swA|>V>KSImW8_FzeKySgV$n(#?6y1hL$|+h#mTNX$rd}T7236g zecSDa`DG6kNSl+OML5^DRF4Ub&x`@SmB-&{b|pxP_j*jSpvC;2GIy8<2?PPb*2q<@ z=pt(t|HEN12$OF#>jkg{TeH^|t^yWd(~_xo+28UWnn!Rw#+EeLNb~>nn1yQ^ocQYv znmK+=8@sNV^aJ@DZXo!>{jX1SA1q&~0mI8M*}ShWc|>Sun_*Ma$X&pPa`mw$2o I>U>N78ww%C^#A|> diff --git a/various_flashers/M091_OSSBasicXL103/M091_OSSBasicXL103flasher.xex b/various_flashers/M091_OSSBasicXL103/M091_OSSBasicXL103flasher.xex index f57597312d6820c7c363698d4f72094b77af2bc8..069034e535345f50fb62ab7c9d3c40b9d865bbfb 100644 GIT binary patch delta 1821 zcmZ8hZ%k8H6u)f&TOwLPpj8vEeShzQh%R%$w#Z0kI`{TrQx_wNKBa|rLd%d%;7f51 z=SnYu^n)J=N!QTm?e<6sy5T;F#zkUEUN)O7F(&R03rn=={IW&2bmszb#+R3S?)kl6 z&hMOa?>oQ$XqmWcaTkjS-yxE=+?|XJ5F8Ah_V@Pref1Lv zzab{ksLwO%_uwuyB2SJM)-9R9|aLC_GCXf!~^;UNY2jj%*scPly5B$Bsjsbik?l>ZHdLp!@q^tA`@$$>t<(2NX-3;iA8D-iHj_28j5 z-#@goJsj#Ih^@P8(m$9I=(i^PO67wf>8$B+(7;4YQh47YnFZMO*CXqVVe zQO;#_iS(X`FN%0bmt-TFPhbBjt&mM4@HLQ zBasz{hlbA@#Uj=sB!69mI_E{>A=t%7;v(23_FZ{e9jizUO?G%vXD2&7Izp+l_d7ji zX=>c}Osngb*Qr%At&;OOYL5|0I`?c(sPK(mr@MWBmoFqDuV;Sw>a5!$Ua$=d6( z=9V?9tT|<^Rn}BlbIF!HjR*HP^fw@^%5Z6*izvZNojJjQtqw4YG^{$@k9tW<8eFW& z#+Io-T4!T*tjNEtf#p-WAdl;NJzwcljzo~)ghwR5r-k+oYZ@Aop= z)3l<_5@tDTsAEn#C$k}%l1Jy|=&BM+6M8ts4%2iJnt3<{ceaY9pFz$Ar)dK(i6DV^ zvdr^pN((63aYb_~T7{xH6z$mB>wLLswbuXD-cvyB6=n3O5{>7}Y8+hQDkyA=|5;WQ zVQay!t_0^5vH~xajhSB|{w&MK<)5WQNvub~EyO?x8d3~Pg2EKKvxa10GK7>u1;AMt z4`Bs{f#d5Q<-!H$LZg1ISE1d?wT~3qr7#=LDMpn^pV(adgEs=W*WO}xb$2OrNin*W zAX2>y0mh-rD}bJCse}1=O2rlG80nurrLr=JgRiP=AFWk6Fj>qcFx=LCDsECUrHi$y zbJIHMj4zd&=j<|IElG>=F z(LuF8i4Hgtm+>x=M9cxQ35qKTXipES(2yf8y&syE$O34Vfg%8O1L^m&^}r4APn-{- zorG>81sg5D`%Ha{8PC{DBb9`%Cy94~mUj}fHou9Om7xE8LaeBh7W3wdC|W=|La}N> z(`o&AzMiik@MF{xeYA$ez_3a!r?8E%KuX@#wgmL^pMG}kt+>ZQ_NRy|5VX)J2?Sxp z@_*QL7$d}MM2T02zb_x<@kWTbltj9B^aeQq557tG@E{vkH`6!b;|`bQhuO5F23u-o V=g9_c%(pjSdyVvq^;hel^dI+t!d3tP delta 1797 zcmZuxZERCj7(Q+H(V@WPvm+YLZtv~A2VpH6LO~KHS!RQm9|&9cvB|}?Td&DlQidtU zq{C#%#GO*@4_S&mQr)x@f>vvow0MJG* zA&YQco*?*V1w6rMB(#l;A`Qmv(OCb%fq{zNgRy~m(GcN@Y1u9;Z{rx9p_tx#6d#NP zF~V*6F8fMb)sUNgkUrwTU6XF6(Y%`>I^|{tJ>!nUkV-TuVS{8)!9>~&GD>ykqi`IrneraAU}f*V zS6<(@p(h#{Ac)n@thGviLG6AGZ%=!xo=+s*DHrR-6LUb%4E#Xmc7j{Kq_&7KOGd;v zMFp1`5$UXmPl@dG3SJW&WTXldC^+AFwtNF?xM&r zy)Uxz(BRN9vs}ij6Qp=fgu2d)W)bYA`{E_AciC5q#+20J++ZdwfGRLSkORBeJ$TZgB%aAoxmN2g4s6U_jAo4^fYI@seq7M3bsqRmJ`}CsBJvSlZEcJ)$2Dhk{6b zKYgNlWg!Xy4s_z@-+MRw)^5f#OhN^@oEqA!5N{*fTqolxWQXI=9=Z7X)MM4th^A#ThhC0 z8uoncQ71iWk4OEa(lVartrf@sGg5XoI8+L+A1WOWkk&DPVq>%;$2#a(HdlfX9JQtY zx>!B9!ei-+HA3PG^+j0~Wc5dn+9>mu@w9B6*ZLG-dj)tZV=Hj%v5dXI;imxJ1!KV_pN7_=Z<7lB}O*Mcrh_yDVk-|W>9!oPAqt4;IcQ%rN!W$ zfg9f+@g;hE*=PgJK$_}y868`-6)$r zSw~91+{m5T*7fkt&B^$JoLU!8_{ZmDRs+A|j}*3pUXkPA$dn5Ph7-40!9Hc8`qCA- z{$79%7Un7Thc%R}Rp>G$4$^s2lahKPo<;r&5U&=|7ZeCEA5;y%adR1;j@K&igHg}Q zSu~3b%X`mCJah(%7wqN*J6&UimEvY)*t+Ws06@jV1nRX@bSG(B4JrUK{vmZBwZDkEUnv+60C)j6*~yvbQ0@s7HNSbCA;9mNy6U(vUGkhPKkz`@rTok rbl(l28in@(+3HRYf0N1oQnw1*T=_rA5^kz@Ex}Hg^sD`j{axuF7jnif diff --git a/various_flashers/M093_Action36ACS_orig/M093_Action36ACS_origflasher.xex b/various_flashers/M093_Action36ACS_orig/M093_Action36ACS_origflasher.xex index c2cda8a16ec3d9816d9c081bac823a7b37b1d7aa..b7ee99aa7aabd6688b200db611504e7c4096e805 100644 GIT binary patch delta 1921 zcmZ8hZ%k8H6u)f&TR<&;oW+^!()af+4AJR^EM|-h?ATkfWPzxO@(>EG&SGlW&?Od} z1wy!lN#YmM?5&}R7kHJ8nCQgCWto92n3qhI?yF-3^Z?L@H|QB-iOF40(N@T3+(imH&LtI!LS9n-VOW5F53>)f4GpBv0K04 zr(DAB%F0TFSCkooOLcnlW;mB%n7|y&hTlBoZF2>(02APl;&ZM6|LI2jA?RoR0TF3jw zDspy42ZT`%>wsPYIWusl%IyrdyCtnc1aG8M?4fAMV|I%4zKAc0_#=_C=}!EIs5&h> z>ryjz_8H`0723>-6Uwoc=id@xGVH$|vwPBfo@ zy}K;l1^bwNnLnwHZcg^bTfND?_;Ig}P_pmAaj%t|?0wMc)j^DV6F**y4Eb0ca0j3~ zRs;OiTr&v$lrt7VQM8!gzs2Oxg2QrX1HAD~5*$IZWHw7tPY}}%X+xw%@NUAj4Xe1E zq?;sA*DSH@VzXo|^DFQQ(ON_}|M7-kD0n8|Z%5h%3G_|BVBOx7dBX>K_}%1s)--_w zXGuSo;Na*N63-1%cX2os73jQVUKQxVIu13Z`#I-;R1N*t_R89;vQ{csrz?hg4#?IgJPplt4#2u$j1w1Q<} zC#tWb`4hS+TsQG`(|g_YOqkD4m}L{X_LHpLm$g1wJ1=YJWbO9q|7#iT*}uxp3@e{i zRWLW5m02$}oqYZ5-a7fU zRc_t@mZ2zWKvS$K#D9N!p<<^xN_tWqD$9dBct&Nf(_)na@$8a;;dd$(A1FZ*ck z(i+#HfNr>1Hh~@>!xERRKb^kxyxp9)(;ZeoP1mS{)?=p+`m~NjJvx@uY8{Pqt33(S z=rXS07fAv!7tk6MZzjN<>Qcw0H}-f_*fyt2KW|_huj5(7LtsE z=HL4tyJ5mM-9(Icz@`g`wLM)JB~~#A*eHo*by916^DK%M5PWXKZURTGZ;aQ|MFhT_ zVxo@}kzp{bShEzi6&|3;x7L?{-hbiZ$Mt=&zDD>>=GXVedWXOrt8{r94B`m{Z8Sy# zL72&W3|KC+pZLre@#*lvremC-pIDC*NcWB0B0LBF3R<%gAY0cKsas>iE{|<-HtBi} Z+lprA$QEwCdut1J7D>O@AKAO5e*va#@JIjv delta 1800 zcmZuxZERCj7(Q*s=)keD0T!I`?0(;|j}8(k`?E>nXvj4gG06NO-q99X4ILR%i;3w- zoavUGrCNd{%aTj8{x}P#7Uv8jfoP0`sht4}i;n#3L%xw5_L-9}Q7~X|D-`_mBr&Gs~=&{hiU?|u+ zfpCYEM&o_L_(1_bt0o~wem4WLa^3$i6{Qenhrcfl0{4U3iDo3(SwA{m~Xs z7zpEo#|J}V2V#H=E1%#kB;Zs{#m35%?lbX@R8vJmd_+uo=pk4$V5b%?sNCkb-7Xug z5{$+pQjDM_4~t0ThJ;T__#KJUnQr`0(%iO__G?8aJp&lD*~mR`Lp>KIDD9GDZ(JFe zFaY;miDGh3qNU-X;S;P>!gX=Ia8ZJ?E=lYz*oAx20@&O1!kTFAmqA+A4!?fd6(@n zM)=C_mthZjW!5XlJrPX8^1m`Cbo`gbwS_fY&Rw=|-OfOF7XU ziAIivLqTM`D}%nX&)A=>EWY{_KiOjJhGNp(#e4VysuT`Cjby#=MBuCTnn=LcMTi2(sWemwVjc zZ3^2mWzr;f)6zOj$_R~E?Nt&@O0{OrO@<|p{T~wswgS5^~~x`agH_%Xr4)DnPYa+vBYVn`50hl!_&MvS}d29v}aNIyP!O; z{3KfyV{IyS>kJm7MP&|)z;iRY;>p7k(4rQr!JUV9pjCw%Uv;)kO(bgPedb)dO17$V zaj#06RO-SfRaS44KU^Lj@y~fxzq`xrIntz(X0`m_Xnxkro$0P-c>eCI_zN}J6!T^8 ztF#hkW1`Vcl2>Ekm@F+>7!F~(hPP_DRSS8w_Ku$nEiE(jhD|i?)JU}!!|u4wvve(a zAeKhHG7_&A5swA|>V>KSImW8_FzeKySgV$n(#?6y1hL$|+h#mTNX$rd}T7236g zecSDa`DG6kNSl+OML5^DRF4Ub&x`@SmB-&{b|pxP_j*jSpvC;2GIy8<2?PPb*2q<@ z=pt(t|HEN12$OF#>jkg{TeH^|t^yWd(~_xo+28UWnn!Rw#+EeLNb~>nn1yQ^ocQYv znmK+=8@sNV^aJ@DZXo!>{jX1SA1q&~0mI8M*}ShWc|>Sun_*Ma$X&pPa`mw$2o I>U>N78ww%C^#A|>