@L `}/j5  $% l0?$)$$Hȱ$ ShL$ `e$$%` h?/ `  !I PR@1 YL I`! S S) H$ЙH 0}Џ$%`@ $% CC$$%e%dU$% ]0%$% DDmLp   % J)Lz J  (( o L (y/)  [L< ( yL Z 0o Tya y }4IB [y32C/10m?4 V V  wLL a ` V y/})23LzA! ߰")-݈ y" $zzG@LL 08` k")};1k0 -G$Ș݈ SL! 9 y8(()(0˥)Nk`$GȘ݈LS )L ݈ L GzȘ} ݈LL )W>Z   HH)H o h  yhy00hy11/ V  }L> L JJaHJJJh) yLT J u (`  IBLH % 6h HHGH`LdJ })LJJLw!,"!,/@F  L! ! 0E^  }^ E E7EȩEdE/EȩE / ! Vΐ )L   mx n wym }?x7x?4 ( ) w y32 R V LL n w ) V  L y / o   }E` , ny/) / V Ly/) 0BM݌L݋ ML  N݈ L }NLML [ fEqEHȱEqEh 3Gȹ G KLL GzɛL  L}FREE SECTORSy /H) *Gȩ GȽ4G GȌyh%*J >G<-+=!*?%% &%z3%$$HEL{*DIR*LOC.CLR.LOA-VER%INI+UNL.FMS.SAV,MODg%CARR*REN?,FME.H"}EAP)BAC_%BONo1DEL.FMD.SUM(RUNm*BOF|1COP3&FMQ.TYP.)EXE$ 1Y5P" O."8""@R'S15%#}0i5i5501ȊԢx5"JFJPWy"HH *5")IAY54 4> 4,0$}L#N #L|*J #L*J #14"4`J # 1Lk*v} 4 *%H$H`)?4 $ 4 #$0 %} 2 4 $ y$, L$LL-19" !"H "H` $ $Ѻ Ѻ걺 2ȱ 4ɛL"ȱH&}H 2e滠滱 u2`> 8e滐`+"`e` y$ 2" 2Execute: W. /p O. '}/ 1L"*ԆՎ l$ 2 \*L#L)4 % HJJJJ 3. 4h 3 3XFHSEX; 4L4(}"݅pq y$ 2ݹp` %ݱp 3`,5 2`N5 l$ /0 / 1 l$L$$8n" }$ 2pq y$I eppq> )}4pq 3 3p,"0 ' 4 3L& 3`p8pqŠ 2ݑpȥpȄ(` /5D . 5 - #( l*}$ / #(莉5 2Reading: . .ii e֥iש 0( . `1,P3 1S / / 1&+}& 5$?♵5 -8tu E( rȥs(0 O. .Еߥ .8 ' 0( 2Writing: rȱsr* / /,} ,` / 1rs8 E($0 O. . .C .L'5  e . 'Lx&,5PJC`,50 2I-}nsert ( 2sourceL' 2destination 2 & hit key ! #ڭ ҍ5L25`5օtׅu` S2tu /.} 1HrettIseuu(` (x / / O.L1`$0'5 / S2 1XY O./}8` W.r n( (errstuvw 2LEN: vw 3u 3 2 SUM: st 3rL3 W.$0 * n( ( 4LB)0}N` W.ʆ n( ($0,F (!$0բ 2No COM-File !LO. (8ԨՐυلإ5 * 1}2# 2RUN: E* 3 2INIT: E*L^) * 3 2. ԥ 3- 4֥ 3 2 LEN:إ 3 (L)إL^) 2}( ( 3L3 1 y$T 4T l y$l 2l *" 4 3 * $ $ 4 2 *ݥURL4` 3}, /$0"I" 1 n+,"0e+Di5Ei Q2 1 2 V/8," 24}LV+ԩ 3: 4 4I 4L+ 2D5:1 4 2: $;0+ 2SINGLE 2 DENSITY 2 RAMDISKL* 2ENH5}ANCEDp 2DOUBLE 2QUAD }/5,5$ 1 O.$0 `DOS.SYS8f5ȩU5ȩP5婿t"Y56}L, / - l$ / /X,L. /,55 5.5 橛5L/LL$ }/ l$ 2 2刄t( 287}$, 2RUN : y-ft 2INIT: y-ft 1 -$tP`$tPF$6ee8}ȄԄՠ$0֩ /$0 q- /8ਥi S2 L15 4ɛ 2` y$ 2 " 2Load: W.9} /$莞 1 -5 lL"0L2`")i"` 1 . / Q2 1'  Q2 1٠:}0 V/ .L.L2 BLVhihi / -i(i( -8((((.. . `1 1 - .;}`5  e`,,,,"H 0hZ,!,#,$/ /$0 $0ZL/ -/L. / /!L11/2/5<} 5 H.5h5ک5`5c/d/ 5? $08`$0`45 [2519 5=}55 /$05455 /5ED` *50 4`5008f [2R0/@ 2.>}/ȱ 280@0  eiȱ/\FȢɛ  o- *  D.8;+"/+ȱ0"?}LL$V ȱ+F/ڊ u2 80 ? 00 0/+$0Wy`5 ` 2Sure ? 1Q`$O 2es, @}o or bort? 81YN 4(` 'ɛ)YN A 2AL"` * 4 `)  ӆiA}j O.+ /  /$0Ș,J, 1B V0`1 O.:>ݩ,".U * 2 is locked !Unlock file? 1ݐ`B}$ 1УԢ5 )p O. * * 2# 4 3L"IH`:;:` ,ɛ`` u2` *C}hihi 4eiHH` ," 4 2 8`0:` 3` 2iԥiդ o$ԥ(`LL$ 2ԍ2Ս2D}Ԇՠ+22ȱ.6'`0#: AG6  &&`8`芄  (` }$ 2 2 3 E}2=' 38nɛL4ԥ 3 2=.݆ކ&բuݕت 3ߊ, 3HJJJJ 3h) 0:i,  F}4,500 BHI V,L2,"p:ɛUR.* t4 t4^ 81 t4( $x0Nhh`S8R^`倈G}HH`p@BDE-HI V0H-` O. 4L2L"ȱ 4ɛ`D1:*.*pB 5H}0#452"/ $/38%by("arth&"ruchhaeuserc -2eitershan#omputertechnikI"L2L"ȱ 4ɛ`D1:*.*pB 5[ .LyLzLLLgy@ԩT a8jdpeg 0.8(14Sep02) Raphael Espino -: Displaying ;:g Add extJ}ra ':' at end for directoryFile:D:XiYi - } ɛ`  , 0 K}}N瓰׭: l cH Error h ֏ - ;L i0 Prev L Offset col:C L. OffsetL} row:C L. TOGGLES SCREEN WHILE DECODING1) GR.840x25 2g 1/12) GR.1520x25 4g 2/13) GR.1540x25 M} 4g 1/14) GR.910x25 16g 4/15) GR.920x25 16g 2/16) GR.920x12 16g 1/1㔭L{ 7) GR.840x25 4 j 8) GR.1520N}x25 9 m 9) GR.1540x25 9 j A) GR.910x25 31 p B) GR.920x25 31 m C) GR.920x12 31 j D) HIP20x25 30 mO} E) HIP40x25 30 j N) Run againS) SaveChoice?ꀹ͔ D,mꀮ i N怍 1 LP}qzJꀍ.怹y|Hy|HA }`2}Z}a}|||4W~2}Z}a}|||"~)~瀩,  Žꁎ끌6CQ}<i(큍Ȍi(Ȍ쁍P耩 쁈(耩Aoj ŽZ[deR}胩B瀢4胩 ĎjkQ8J ˩̩S}̑B〢m x X`iN~ Dither (Y/N):Y 18N ` ŽmnAT}o )L} `~L} }1) Micropainter 2/12) Micropainter 1/13) HIP 2/14) HIP 1/15) PGMN) Run againChoice?U}쀹ݔ Dm N 쀹ݔ 1NL53H }h LX~J - ; T Press for default filenameFile:V}D:.ʠ 쀘) Θ󩛝Xi7YiĢ }8 :ɛ Lc~` L.MIC.HIP.W}PGM 0ꭙ d ( 5ʊJ.NY=󀍥J򀎤 Ǐp  Ǐv. mX}n0 \L`jk`0L\/` )?(:>H/『/ԍhL0u ,H]ȑY}ɛ y񩀑iUąTe^e_hh@ S BHBH` "H"H`jjjZ}00VVV&&&&K&0 \0 `L cm8&8&8&8&i0" Jjjj& & & &ĘL[} #JJĮL遱)ȱJJJJȝ0u0u(Lqm耍ꁐ끭6iP큐 Lk`S\}iςiЂ ꅠ)ȱJJJJĝ0uJ)pȱJJJJJm₝0u(ͭmi(mni(]} ТS%逩 L0uЂ@`L Rm 8&8&i0, &J&ĘL" # ^}) )йĮLi)ȱ)JJąȱ)JJJJąȱ***)ȝ0u(L邭ji(jk LキS逩jk _}L` BHILVI 8I8`LڃU @`"3DUfw*<^ +69 ʭ8L:H ݌ Zhl `l}iР䀪)2 D8$ʊ81 S `~I d 0);2 \0# ]0 " f File Saved!Lq " f L,L3m}P8©éd'm'mȕ6 \0P 딩P ΚΠ \8©PéΛLK S Imagen}: - ; Mode: Dither: A,iN Size: i Offset: L *** CORRUPTED FILE *** o}Help:-Change options-Run again-Back to image-Save (modes 2, 3 , D, E only)-Exit to DOS/-Changp}e image colours (: Z ݌l !>LLy L ɀm  f`XY01q}o Z d ݌ L dXY01o  茭ԭ)DLp"Lf@Ԡ_&r}L\Ké¨H‘hˆ`x X`H%) N) N<3:3s})D A NNOOhL_P3`)DЩA Lhh茦ԍԍt}H* \hԍHH`U8`Ta bXƥYǬaƈ0 i(ƭ`eƅƐǠ k( H詛0 ):RS`u}L^`@i `I@`` ` ,0 L^)?`xԭӍ)`ө@X`A`0ȩ@mA0ȩ0ȩv}0ʭA4i@mA0ȩ0ȩ0ͩA0ȩ0ȩ0 d01"/`/Эi0Eʎ`w}ЍЍЍoЩ"LfЍ Щpԩ. fLB i l͌0 0```0 àˆ` Hx}**  𮆕i0hйi莧8텕*L\ ^ɛ H Vh)a)` by}ɛ)_C8`) mmLR`JLT ©Pé8ĩŢd'ˆ 'đˆ 锠'Ĉ iPĐz} Lʽ:0):):Ly ʩ*.`ʠʹL`.JPG{}K, B|D}E~HILV@:TZPᓕ(@@ ` P@ J䓍哠 T|}   mHȩ (哩¥í响擩A0 㓭X Next Prev Up Dir Quit}}@ ^)<Rʽ):SȎRL-- ȥ8阅iN }LLG)_A㓰8A…~}Å0 L͒R:ȱ  瓬SR>(. SRɛ:}ʢ@L Col= ֏ Row=L֏ Width= ֏ Height=L֏ * .8힕ퟕJ}j  ʎ`K:㓢)㓩 Ȋ  mL锥DEB`@ʽ𕝀`@ʽ` }L^eTi8`TU > UiT `1,2,4z g /1 (64K)` JLTE:0"L\HݢH͢㔅Ȇ}h` 8`123456NS789ABCDE12345N@,(e`(e…`HA ԍЩ ԍh@HH ԍЎЭNO ԍЎhh@}H ԍЭN ԍh@ `OOP5 #a8jdpeg-0.8 00000 00000 255 SD:ꀩ } ꀠL .   ( "#####...0/}32 # A#}based on juddpeg, slj 11/11  " " ( ! " L !L ɀ=H # A#error at pos=$. #}. #. # #h [# Q# )L#!!#!N\jxzl^n|~&. ''?IiL 8񄅒񆅓L8e(șLL}`, #*(Ƒ #&&Ƒ(`` l ` 8厑ȭ 发 i  i }`") n!9 )"iHiH   (hhLs) (eHȱehа")`)ɀ6) #}ii   Ӡ0Heheн`)0 #L)# #`LLi *L}Li首&8m `) *& J%) *LL솖 *ɀjfɀj}fii ,*i@i*` o-8壅夅ee8嫅嬅e}e8婅媅ee8壅夅ee5}66i }鵅5}66i 鵅ee<}==i aIiIi7}8}8i 錅銅8咅哅9}::}; {Neeee8奅妅e}eee8婅媅ee8塅墅eeee8姅娅8姅}eeeeeeee8姅娅8埅堅8嫅嬅8壅夅`D }8.> 8.@ 8.B 8.D 8.F }8.H 8.J 8.`0.Jf &eeȱ0*`8咅Jf}*eeȱ0*8咅`/K $1@Qdy6Rp!Di$Nz@q >tI"`A}&lYJ@:9 q@zN$iD!pR6ydQ@1$  $1@Qdy6Rp!Di$Nz@q >}tI"`A&lYJ@:9>==<<;;::9988776655544332211100//..---,,+++**})))(('''&&%%%$$$##"""!!!  }} } !!!"""##$$$%%%&&'''(()))**+++,,---..//0011122334455566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKLLMMNNOOPQQRRS}STTUVVWWXYYZZ[\\]]^__``abbcddeefgghiijjkllmnnoppqrrsttuvvwxyyz{{|}}~}jԉ>]|1Po$َCc͂7}V u*ߔIh҇<[z/Nm"׌A`4Sr(ݒGfЅ:Yx-Lk Պ?^}2Qp%ڏDc͂7W v+Jiӈ=\{0}On#؍Baˀ5T s(ݒGgц;Zy.Ml!֋@_~3Rq&ېEd΃8W w,Kjԉ>]|1P } !!"#$$%&&'())*++,--./001223455677899:;<<=>>?@AABCCDEFFGHHIJJKLMMNOOPQRRSTTUVVWXYYZ[[\]^^_``abbcdeefgghi}jjkllmnoopqqrsstuvvwxxyz{{|}}~*?Ti 3}H]s'>??@@ABBCCDDEEFFGGHIIJ}JKKLLMMNOOPPQQRRSSTTUVVWWXXYYZZ[\\]]^^__``aabccddeeffgghhijjkkllmmnnoppqqrrssttuuvwwxxyyzz{{|}}~~N:}%t_K6"p \G2l XC/}iT?+yeP<'vaL8#r]I4 n ZE0jVA-{gR=)}wcN:%t_J6!p [G2l XC.}hT?+yeP;'uaL8#r]I4n YE0jVA,}  !#$%'()+,-/01245689:<=>@ABCEFGIJKMNOQRSTVWXZ[\^_`acdeghiklmopqrtuvxyz|}~}  "#$%'()+,-/01345689:<=>@ABDEF}GIJKM}}b&Lr6\E k/U{?e)Ou9^"H n2X~Bh,Rw;a%Kq5[E k/Tz>}d(Nt8^"H m1W}Ag+Qw;a%Jp4ZDj.Tz>c'Ms7]!G m1W}@f*P}v:`$Jp4  !!"""###$$%%%&&'''(((}))***++,,,---..///00011222334445556677788999:::;;<<<===>>???@@AAABBBCCDDDEEFFFGGGHHIIIJJKKKLLLMMNNNOOOPPQQQRRSSSTTTUUVVVWWXXX}YYYZZ[[[\\\]]^^^__```aa } !!""##$$%%&&''(())**++,,--..//0011223345566778899:}:;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNOOPPQQRRSSTTUUVVWWXXYY}ZZ[[\\]]^^__``aabbccddeeffgghiijjkkllmmnnooppqqrrssttuuvvwwxxyy}zz{{||}}~~ } !""##$$%%&&'(())**++,,--.//0011223344566778899:}:;<<==>>??@@AABCCDDEEFFGGHIIJJKKLLMMNNOPPQQRRSSTTUVVWWXXYYZZ[[}\]]^^__``aabbcddeeffgghhijjkkllmmnnoopqqrrssttuuvwwxxyyzz{{||}~}~ } !""##$%%&&'(())*++,,-../00112334456677899::;<<=}=>??@@ABBCCDEEFFGHHIIJKKLLMNNOOPQQRRSTTUUVWWXXYZZ[[\]]^^_``aab}ccddeffgghiijjkllmmnooppqrrsstuuvvwxxyyz{{||}~~} } !!"##$%%&'(()**+,--.//01123445667899:;;<=>>?@@ABBC}DEEFGGHIJJKLLMNNOPQQRSSTUVVWXXYZ[[\]]^__`abbcddefgghiijkklmnno}ppqrsstuuvwxxyzz{||}~} } !"#$%&'(()*+,-./01123456789::;<=>?@ABCCDEFGHIJKLLMNOP}QRSTUUVWXYZ[\]^^_`abcdefgghijklmnoppqrstuvwxyyz{|}~}} }!"#%&')*+,./02346789;<=?@ACDEGHIJLMNPQRTUVXYZ[]^_abcefgijkl}noprstvwxz{|}}    }!"#%&')*+-./0234678:;<=?@ACDEGHIKLM !$}&),.1368;>@CEHJMORUWZ\_adgilnqsvx{~}  "$'),.1469;>@CEHKMPRUWZ]_bd}gilnqtvy{~}  "$'*,/1469<>ACFHKMPSUXZ]_begjloqtvy|~ q ----------------------- A8JDPEG a JPG viewer: -----------------------Want to view JPEG images on your } Atari 8-bit? Then you've come to the right place. The programs on this page are based on Juddpeg, the JPEG decoder and v }iewer for the C=64, written by Stephen L. Judd and Adrian Gonzalez. The Atari 8-bit versions use a modified version of St }ephen L. Judd's decoder along with 3 new viewers.NOTE: The display modes marked as 64K really really do need 64K! This i }ncludes using the RAM under the OS. Most versions of SpartaDOS also use this area and your machine WILL crash if you use a } 64K display mode with one of these SpartaDOS versions. The 48K modes should work though. If you do want to use a 64K dis }play mode with a SpartaDOS disk, then either give BEWEDOS a try, or take a look at PgmView.a8jdpeg and JpegView can both }convert JPEGs to the Atari 8-bit Micropainter and HIP formats. If these don't suit you, or if you want access to the unco }mpressed image data for whatever reason, then they can also convert to PGM (Portable Greymap) format. This format can eas }ily be read on the Atari 8-bit (and many other machines) and converted to whatever format suits you. An example BASIC prog }ram for reading the PGMs produced by a8jdpeg is available.BugsHave you found a bug? Do you havean idea for further imp }rovements? Ifso, send me an e-mail.This version should work fine on most baseline JPEGs out there. It will not work on p }rogressive JPEGs. Progressive JPEGs are designed for viewing over a slow connection. When viewing a progressive JPEG over }a slow connection, it starts out as a low quality fuzzy image which becomes clearer as more data is downloaded. The way p }rogressive JPEGs are implemented makes then harder (although not impossible) to handle in 48/64K of RAM.Progressive JPEG }s can be converted to baseline JPEGs using the jpegtran program provided by the IJG (The Independent JPEG Group):jpegtra }n input.jpg > output.jpgThen try displaying the new image.This may also fix other problems with images too. The jpegtran }program is available for many systems, but unfortunately not forthe Atari 8-bit. If you do notalready have this program y }ou candownload it from:ftp://ftp.uu.net/graphics/jpegUsageFirst boot up into your favourite DOS, without BASIC (hold }down the OPTION key when booting XL/XE models, remove all cartridges on 400/800 models) then load a8jdpeg, JpegView or Jp }egShow (use the L option under DOS 2.0/2.5/MyDOS or equivalent).JpegViewOnce loaded, JpegView will display all files w }ith a .JPG extender on drive 1. To load a file, press the letter displayed next to the file name. To view the files on a }different drive, or redisplay the files on the current drive, press the appropriate drive number (1 for D1:, 2 for D2:, et }c.). Pressing the Tab key will allow you to change the files listed. Change the mask to *.* to view all files and subdirec }tories on the current drive.JpegShowJpegShow will start displaying all files with a .JPG extender on drive 1, pausing }between each one. To change any of the parameters used press the Esc key. To make these options permanent use the save op }tion, this will create a D:JPEGSHOW.CFG file on the disk in drive 1.a8jdpega8jdpeg will first prompt you for a file na }me. The device or drive number displayed can be changed by backspacing and replacing them with the new ones. Pressing the }Tab key will display the previous file name used. If no extension is added to the file name ".JPG" will be added automati }cally. To stop this from happening, add a dot at the end of the file name: D:ATARI.JPG load a file called ATARI.JPG } from D: D:ATARI load a file called ATARI.JPG from D:, .JPG is added automatically D:ATARI. load a file called } ATARI from D:, .JPG is not added automaticallyFiles can also be loaded from the directory list by pressing t }he corresponding letter on the keyboard after displaying the directory. To display a directory type in a directory mask u }sing the '*' and '?' wildcards and place an extra ':' at the end. The above rules for file names also apply: D:*.*: disp }lay contents of D: D:*.JPG: display all files with a .JPG extension on D: D2:*: display all files with a .JPG } extension on D2:, .JPG is added automatically D2:: display all files with a .JPG extension on D2:, *.JP }G is added automatically D2:PIC??: display all files that start with "PIC" followed by 2 characters and }have a .JPG extension on D2:, this will match PIC01.JPG, PICEL.JPG, PIC75.JPG, etc. D2:PICS:: display all }files with a .JPG extension in the PICS directory on D2:, this assumes your DOS supports subdirs D8:PICS: }PIC??: display all files that start with "PIC" followed by 2 characters and have a .JPG extension in the }PICS subdirectory on D8:, this will match PIC01.JPG, PICEL.JPG, PIC75.JPG, etc. This assumes your DOS } supports subdirsTo return to DOS press the RETURN key, leaving the file name empty. The file name can be up to about 60 }characters long (if your DOS supports this). An error here probably means you mistyped the file name. If successful the i }mage size will be displayed and you will be asked for the row and column offsets, these default to'C' meaning centre the }image, and you can just press RETURN. Since JPEG images can be (much) bigger than 320x200, you can specify here at what ro }w and column you want a8jdpeg to start displaying the image.Each unit for the row and columnvalues equates to 8 pixels, }so givingvalues of 4 for the row and 6 for thecolumn would display pixel 48(6*8), 32(4*8) at the top left hand cornerof t }he screen. Then you will be askedfor the graphics mode you want toview the image in, select one of the options from the me }nu. If this mode supports dithering you will also be asked if you want the image dithered or not. Dithering will provide }better image quality but will slow things down a little.The screen will then start to flash as the image is decoded and }displayed. While the image is being decoded you can press the S key to toggle the screen, speeding up image decoding. Pres }sing the Esc key while the screen is flashing will abort everything and take you back to the file name prompt, pressing th }e C key will abort and allow you to change the display parameters for the image. Once the image has been decoded the scre }en will stop flashing, and you should be looking at your JPEG.Pressing the X key will take you backto DOS, pressing the }ESC key willtake you back to the a8jdpeg menu.Pressing the Space bar will displaythe image information/help screen.The + }and - keys will allow you tocycle through different colourvalues. The S key will save thedisplayed image in modes that sup }portthis (2, 3, D and E).Technical detailsOn a 48K machine, there are 3 display modes available:*320x200 in 2 levels } of grey (Graphics 8)*160x200 in 4 levels of grey (Graphics 15)*80x200 in 16 levels of grey (Graphics 9)Plus 3 options } in a8jdpeg forreducing the image horizontaly(JpegView will automatically reduceimages).64K and greater XL/XE machines h }ave another 4 modes available:*320x200 in 4 levels of grey (Graphics 8 flicker mode)*160x200 in 9 levels of grey (Graph }ics 15 flicker mode)*80x200 in 31 levels of grey (Graphics 9 flicker mode) *160x200 in 30 levels of grey (HIP flicker mod }e)Plus another 4 options in a8jdpegfor reducing the image horizontaly(JpegView will automatically reduceimages).All mo }des (except the GR.9 flicker and HIP modes in a8jdpeg) also support dithering. Since JPEG images can contain up to 255 dif }ferent levels of grey, these will have to be reduced to the number of levels supported by the mode selected. Without dith }ering this extra information will be discarded. Dithering finds the closest available grey to the one used in the image a }nd displays that. The difference between the requested grey and the one actually used is then calculated, this "error" is }then distributed over 4 surrounding pixels, and modifies their values. This can provide better quality images at the expe !}nse of speed.JpegView and a8jdpeg can convert the images to Micropainter (62 sector), HIP and PGM formats. This is the s "}ame PGM (Portable Greymap) raw format as found in the Unix world and beyond. This is the best format to use if you want to #} extract the image information for your own use. Take a look at the PGM page for more details, a PGM viewer and sample co $}de.This version should work with any 48K or more 8-bit Atari computer. To get the Graphics 9 and HIP modes you do need a %} GTIA chip though. Since it doesn't use any memory below $2000 (except for pages 4 to 6 and the top half of page 0) it sho &}uld also work with most DOSes. The 64K modes also use the RAM hidden under the OS, so will crash any DOSes that use that '}area (i.e. most versions of SpartaDOS). If you do have any trouble with it on your system, then let me know along with det (}ails of your set up.Source codeThe source code comes in two parts, the decoder and the viewers. The decoder is a port )}of Stephen L. Judd's jpy1223-8 file, and is greyscale only. The viewers have been written from scratch for the Atari. New *} viewers can be written by replacing the viewer code with you own. No modification of the decoder is needed. Details of ho +}w to do this are in the decoder and the viewers source code.The source code is in ca65 format, part of the cc65 cross co ,}mpiler package. It should be possible to modify this to work on native Atari assemblers too (MAC/65, AMAC, etc.).In the -} pipelineHere is the current development plan:* Get the colour version working. Currently the decoder works but needs s .}ome changes already made to the greyscale decoder to beincorporated. The viewer has beenstarted but still needs a lot ofw /}ork.* anajpeg: a separate program that will display extra information about JPEG images, spot JPEGs that will break the 0}decoder and tell you why, and if you're lucky, it may even fix them.* Find a way to display progressiveJPEGs. This will 1}probably be donewith a separate program that willconvert progressive JPEGs tobaseline JPEGS.* Add support for extended m 2}emory.* Update a8jdpeg and JpegShow to include all the lastest features.Any problems, suggestions, comments,bugs, feedb 3}ack? Let me know ...Thanks to: Stephen L. Judd - for writing the original C=64 version and making the source availableA 4}lso thanks to: Rene de Bie, Mathy van Nisselroy, TJ Edmister, Marco Antonio Checa Funcke, James Bradford, Chris Martin, An 5}dreas Magenheimer, Piotr Fusik, Daniel Miller, Andrew Floyd - for comments,suggestions, ideas, feedback and other help. 6}Raphael Espinoer, Piotr Fusik, Daniel Miller, Andrew Floyd - for comments,suggestions, ideas, feedback and other help.  .LyLyLhLLD1:*.JPGy {z JpegView 0.9(17Oct03) Raphael Espino ڍ- 8}  ,e S Nhڍ  0 }Loading Lۍ CH  Error h h - ۍL\|Jn||9}} Jn}}(hgs ix噬噩v}uh}, 晩(虰 :} 陰 u vuLez} ffset Col:zC Lz #y0 Row:{C Lz y0 ;}j creen: q OffL{ On1j licker:  tY,N ҢR <}eduction: 0}٩}}8 7L{ Best  Run againRXx Screen: 40x25 Image: ۍT=} TOGGLES SCREEN WHILE DECODING: GR.8 : GR.15: GR.9 : HIP  Save As:: HIP: Micropainter: P>}GMChoice?噹r|4t (64K)T癮y0$8 , mx i >  }4L?}SqIqL zOJz{ Offset Col:C ߎ.z  Offset Row:C ߎ.{и L|FtIt@}L zRᮓ}٩}}L zɛ L|JL z xѩ ȹ}H}H`}}}~~~~%tA} Ao2 t  噍xyhfu0ffv0ggz8|fJB}mfmg 9…˩̩̑]sq /q +4n ox X`t Ao )LC}}st ~LyL}ۙ} ͍ ۍ Save as rM2H#4 PGM Micropainter ޙT PresD}s for default filenameFile:D:.ʠ: ޙڙ:ڙ󩛝:XiYiĢp ~  <:=E}8` !LՓ.MIC.HIP.PGM. 0ۙ + ԑ 9ޙ0s9J8 Y™“ Y™2.ȍwѩҩF}ҩ0 ? !ۙLՓLÓ`wg` 8 XYr HH`hG}PtL11 I ˕  ( 炬bNd Ȍb1 i M΂L`1s I ˕ą  (H} ! ( ₰ !bđϥmNd Ȍb1 ^ M΂Оs# mw8탖wѠ cLÓ` mLtI}L*1 I ˕Ĭcm 8&8&i0, &J&ĘcL ))cгČcbNd Ȍb1 i MJ}΂Lsw8탖w _0`LÓLmU$Im9Uq"3DUfw"*3;DLU]fnwK}*6[*Gc +CU}9"ʭ8LڍH Ɨhl L܆iОw8탖w`r4 2t ɒ ~- + 葢0r4*6 ?0 0 V}File Saved!L@ ՓL@ݙP8©éߙdܙ'mߙꙈ'mߙ: ?0P TP wܙΠ ?08©W}PéߙݙL ! 葩"L- ɒ Image: ͍ ۍ Mode: r4$ GR.r2 9,8 L 15L t Flicker SX}ize: Offset: ڐ Reduction: 4 *** CORRUPTED FILE *** Help:-Change options-Run again-BackY} to image-Save (GR.15 and HIP only)-Exit to DOS/-Change image colours (ڍ  Ɨ l !Z}>L‡L܆ LU HIP`JL7@<:Kґ(@ :@!P if  ( P[}Hȩ Rf(f¥ífgAdf0e ddSc U - Dir U Quit U Maske\} U Next U Prev U Up Dir }< hL1- ڥ8ЅgifNe ]}eз  ЌLL܆"@    ;8.L1: hLRAdL&8A…Å0 RL΋ :^}hȱ : >hh.: :h:ɛʎ@ LR:ʆ LxcicL_}@ #JL7@L#@ Aɛ)`ed)d Ȋ ( PLRRwXPǑXWXXiͅĥYiŠ`}|i)ĐňUT`v0 `|z8`XiȅĥYiŢG`zX)"{0X a}1 |zzX 򩛝@@):`XiĥYiŢ :򩛝:`@ʽ:`@ʽ:b}` LA@ʽ:`@ʽ:`Xx* ТȢɬ` 8`/` )?(ڍ>c}sH/q/ԍqhL0u ,H]ȑ:ɛ 񩀑iUąTe^e_hh@xno X`ʎd})?` <ɛ)_C8`) mmL厭`LA Aɛ H Vh)a)`♍96䙭h8(e}75㙢 .8.95.6.᙭8ᙍ᙭♍♬u0  ᙭9  8988923856f}h4878)8㙪 䙍㙊v0 NjNjȐȍ`N7NnN6n5`0715-g}/6.Ll412-/3.`0Gύ֐ЍאэؐҍِҐm1ϭӐiЭԐm1ѭՐiҦˤȎXYLѐ)֐ϭאq}BDOS SYSB(!DUP SYSBIA8JDPEG COMBYA8JDPEG DOCB7JPEGVIEWCOMBJPEGSHOWCOMBR^PGMVIEW COMBREADPGM BASGT2ARNIE JPGADEFIANT JPGؐѭِ` Col= # Row=L H (h #)L | # x}L#v0JiJiLhv0 Quarter}r` Half` None` ™HǙ*șș*  șșǙi0™hHǙi:;8Ǚ<=&Ls}? # JL7E: àˆ`Ké¨H‘hˆ`H%) {) {tt}:383r4 A08{{||hL_P3`r4ҩ0A8Ly _L\ Ɏ4u} q -`XʙY˙0̙1͙oϙ Ɨ +љ LÑ +ʙX˙Y̙0͙1ϙo 葢љv} Ιԭr4Lܗ"L-111u-v0< I1i@ϥi M΂ѭ0Lm 67"0 ?0“w} “ M΂` Ñ  ͍ L_ 瓭ۙ aL~8` Save error s h L! )<΂ ˄ M ) 56JűJx}eŝ0u w-`vL)`L)L L ) ˄ M ) Ȅ M ) ̈́ M ) Δϔ8y}JűJeŅűJFeŅűJFeŝ0u w-`JȱJeŝ0u w/ࠐ`ԠL z}u`abJJȱJJeŅȱJJeŅȱJJeŝ0u w/ࠐ`$JJȱJeŅȱL[JȱL\{}L`¤`ύҐЍӐэԐҍՐ`X˭Y̬q8逍ˈdebc`~~JJJJq8ˠˍ~Jm~jJJih|}˭~JJm~jJq8(ˊm~jJm88˥̬cee. -d8`Iݞ ݞ8ZI8`}}챖ݝL hh:Ж;<=<=ЖH& ?hЖHH` ``@i `I@`` `0L? ~},0 LADEB`K, BDEHILV:;= < .= .=m<<=&0L?xԭӍ})` X`@`/Э8i0`ЍЍЍoЩ"L-Ѝ Щpԩ. -L ©Pé8ĩŢd'ˆ} u'đˆ R'Ĉ u RiPĐLK:@,(e`i(ѐҥi(ϐ`(e…`Ϡ` `0}@m 0ȩ0ȩ0ʭ 4i@m 0ȩ0ȩ0ͩA0ȩ}0ȩ0 ԑt ԑ +}01"/` }i l͌*0 0`HA ԍЩ ԍh@HH ԍЎЭ{| ԍЎhh@H ԍЭ{ ԍh@``0 `OO}1234HMP( (P5 #JpegView-0.9 00000 00000 255 <x  xL  } .   k"#"##"...0/32 " #}based on juddpeg, slj 11/11  " " }( ^! ! L !L ɀ=H " #error at pos=$. b#. b#. b# W#h 2# +# )L" !!/!=!Not a jpg fi}leRead errorQuantization table errorHuffman table errorHuffman errorUnsupported jpg @ @N}` #Unknown header:FF$" b# ! " ` )"$"! `ЯL%L#L#L $Lk$L% # trying anyway` })"$" #Not JFIF format !L!L! l"  x#`$" l"72 l"$"&  l"&" l"8%"&" &"`8`}i "k" "$" `...".HIDE #H 8`"""""`"} " l"""` #D#E JKBLVE:hh 2#HH L#DD#E#EIHmD#`_# #`HJJ}JJ m#h) ii0LY#%" &" &"%"%" &"` l"'##    }@, Y# x#LW# "## "##`# # #}##`" l"####..` x#Z l"P)M@MM-M) %" &" l" x#@}L $` x# l"L%) ) (( (%" &"c l"^. x#+),)j$,)+)j$}.(,).+)j$馐(( l"j$ .) x#L$ x#Lp$`.. %` %  %8("  % %}8'" %% % %H).hJJJJ. %.Ɗܢ......`J~'"'"%" &" x# l"hh}`k" # & %% % %H).hJJJJ.Ɗ % % %%% # &%  & & # L&.m%%}&'"'"n%&.&& m&,Ɗ o' && & % &&%(" `}i(&`&&&.&.%&&& "' &Ƌ&Ɗ`&$8.&!i(8& *& yn'}yo' t' ' &й Q(L)NXb&. (( ) (&}..L.e.L`&. ''(( }) 5JJJJLL@򄐥) (LL@`M@MMM "0@2$ &4BP`RD6( *8FTbprdVH:,.}N\jxzl^n|~&. ( (?IiL 8񄅒񆅓L8e(șLL`, "*(Ƒ} "&&Ƒ(``l`8厑ȭ发ii`-) M!9+)"}iHiH (hhL~) (eHȱehа-)`)ɀ6) "ii Ӡ}0Heheн`)0 "L)# #`LLi *LLi首&}'" `) *%(")& *LL솖 *ɀjfɀjfii ,}*i@i*` z-8壅夅ee8嫅嬅ee}8婅媅ee8壅夅ee5}66i 鵅5}6}6i 鵅ee<}==i aIiIi7}88i 錅銅8}哅9}::}; {Neeee8奅妅eeee8婅}媅ee8塅墅eeee8姅娅8姅娅eeee}eeee8姅娅8埅堅8嫅嬅8壅夅`D C.> C.}@ C.B C.D C.F C.H C.}J C.`0.Jf &eeȱ0*`8咅Jf*ee}ȱ0*8咅`/K $1@Qdy6Rp!Di$Nz@q >tI"`A&lYJ@:9 q@z}N$iD!pR6ydQ@1$  $1@Qdy6Rp!Di$Nz@q >tI"`A&lYJ@}:9>==<<;;::9988776655544332211100//..---,,+++**)))(('''&&%%%$$$##"""!!! } }}  !!!"""##$$$}%%%&&'''(()))**+++,,---..//0011122334455566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKLLMMNNOOPQQRRSSTTUVVWWXYYZZ[\\]]^__``abbc}ddeefgghiijjkllmnnoppqrrsttuvvwxyyz{{|}}~}jԉ>]|1Po$َCc͂7V u*ߔIh҇<[z/N}m"׌A`4Sr(ݒGfЅ:Yx-Lk Պ?^}2Qp%ڏDc͂7W v+Jiӈ=\{0On#؍Baˀ5T s(ݒG}gц;Zy.Ml!֋@_~3Rq&ېEd΃8W w,Kjԉ>]|1P  !!"#$}$%&&'())*++,--./001223455677899:;<<=>>?@AABCCDEFFGHHIJJKLMMNOOPQRRSTTUVVWXYYZ[[\]^^_``abbcdeefgghijjkllmnoopqqrsstuvvwxxyz{{|}}}~*?Ti 3H]s'>??@@ABBCCDDEEFFGGHIIJJKKLLMMNOOPPQQRRSSTTUVVWWXX}YYZZ[\\]]^^__``aabccddeeffgghhijjkkllmmnnoppqqrrssttuuvwwxxyyzz{{|}}~~N:%t_K6"p \G2}l XC/}iT?+yeP<'vaL8#r]I4 n ZE0jVA-{gR=)wcN:%t_J6!p} [G2l XC.}hT?+yeP;'uaL8#r]I4n YE0jVA,  !#}$%'()+,-/01245689:<=>@ABCEFGIJKMNOQRSTVWXZ[\^_`acdeghiklmopqrtuvxyz|}~}  "#$%'()+,-/01345689:<=>@ABDEFGIJKM}}b&Lr6\}E k/U{?e)Ou9^"H n2X~Bh,Rw;a%Kq5[E k/Tz>d(Nt8^"H m1}W}Ag+Qw;a%Jp4ZDj.Tz>c'Ms7]!G m1W}@f*Pv:`$Jp4}  !!"""###$$%%%&&'''((())***++,,,---..///000112223}34445556677788999:::;;<<<===>>???@@AAABBBCCDDDEEFFFGGGHHIIIJJKKKLLLMMNNNOOOPPQQQRRSSSTTTUUVVVWWXXXYYYZZ[[[\\\]]^^^__```aa}  !}!""##$$%%&&''(())**++,,--..//0011223345566778899::;;<<==>>??@@}AABBCCDDEEFFGGHHIIJJKKLLMMNOOPPQQRRSSTTUUVVWWXXYYZZ[[\\]]^^__``}aabbccddeeffgghiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~} } !""##$$%%&&'(())**++,,--.//0011223344566778899::;<<==>>??@@A}ABCCDDEEFFGGHIIJJKKLLMMNNOPPQQRRSSTTUVVWWXXYYZZ[[\]]^^__``aabbc}ddeeffgghhijjkkllmmnnoopqqrrssttuuvwwxxyyzz{{||}~~} } !""##$%%&&'(())*++,,-../00112334456677899::;<<==>??@@ABBCCDE}EFFGHHIIJKKLLMNNOOPQQRRSTTUUVWWXXYZZ[[\]]^^_``aabccddeffgghiijj}kllmmnooppqrrsstuuvvwxxyyz{{||}~~}  !}!"##$%%&'(()**+,--.//01123445667899:;;<=>>?@@ABBCDEEFGGHIJJKLL}MNNOPQQRSSTUVVWXXYZ[[\]]^__`abbcddefgghiijkklmnnoppqrsstuuvwxxy}zz{||}~}  !"#$}%&'(()*+,-./01123456789::;<=>?@ABCCDEFGHIJKLLMNOPQRSTUUVWXYZ[\}]^^_`abcdefgghijklmnoppqrstuvwxyyz{|}~}} !"#%&')*+,}./02346789;<=?@ACDEGHIJLMNPQRTUVXYZ[]^_abcefgijklnoprstvwxz{|}}}    !}"#%&')*+-./0234678:;<=?@ACDEGHIKLM !$&),.1368;>@CEH}JMORUWZ\_adgilnqsvx{~}  "$'),.1469;>@CEHKMPRUWZ]_bdgilnqtvy{~}  "$'}*,/1469<>ACFHKMPSUXZ]_begjloqtvy|~   "$'V .LLLL*L)ڝ@ԩ JpegShow 0.1(07Aug01) Raphael EspinoPress to change configuration}L Ll x X   0z I08Xɛ<{ɛ ̘L䌌 ̘}L Bad D:JPEGSHOW.CFG fileUsing default configuration L,͝.ȭ뭭 ܭ ,͝Ȍ}  % Can't find files in * G ۜL  ILZά ILZ  ̘>`> ` } .` `𩛝`  0z Toggles screen while decoding Showing Using option L}ۜ  L No files on diskL CH  Error h / - L ɜl N8n .}HݎH`)0,  pϓГǓȓ <i(ʓȌ˓Гϓi(ғȌӓ}ɓѓP ɓѓ(@oW p4 rđő}iɜl ̝//Ԣɝǝ8J` pefOP}@o]0  l  )?>,ɜ!h@H//ԍhh@L0u) ɐHɐH`}ꑓÒÒ}}}33 })ȱJJJJĝ0u0u(miP )в` P })}JJJJĝ0uJ)pȱJJJJJĝ0u(ѭOi(OPei(ef )ЦLc })ȱ)JJąȱ)JJJJąȱ***)}0u(ϭ Ēđi(đő )Ъ` Pąű*&*&Ș)ĝ0uŝ0u(ӭi(i(}@ )L󑭮 c`  ʜ Save error 0C / ۜ L AÍJJȱJeȱJJe0u }ࠐ` P }I JjjjĊjjj J ąĊ Ņ J ąĊ Ņ JHŮI0uh0uI(i(i(} )Lǒ c`)JJJJ^Hnh` P }ąű)ąű) iȱJJJJHąhH}h)ťĝ0u0uŝ0u0u(ǓmǓȓϓmϓГ ʓiPʓ˓ғiPғӓ )LLc  } ɀ ۜ l  \䭮c 闩@ԭ+ >:)F f  g,g fQ} ԥm˝ɜ )??H_ \@ԩhl /`H%) f) }f=3;3  @ #ffgghL_P3` ΩJ#L}hh}茍H whHH`LI`@i `I@`` ` LI for config, to con}tinueɜ!l xԭӍb)`bө@X``0ȩ@m0ȩ0ȩ0ʭ񖈙4i@m}0ȩ0ȩ0ͩA0ȩ0ȩ0  P  c/01"/` i l͌0 0```0 à}ˆ`0|}| 0~0|Ȍi|Ȍ&LGd ) ii0 BHILV} IɛH Vh` ɛC8`)ᗢ mmL`JL? P©Pé8ĩŢd'ˆ 'đˆ }'Ĉ iPĐ LcK, BgDhEiHjILVY0@l(8(ٜ(`@YK:}UT`XiȥYiɠ 镝򩛝L̘:݃):>`@ʽ0`@ʽ0` LI* **}* Configuration Options ***Mask:ɜ  Delay:˝ /U  ˝ Offset col: Offset row: }[ ] 1) GR.8 40x25 2g 1/1[ ] 2) GR.15 20x25 4g 2/1[ ] 3) GR.15 40x25 4g 1/1[ ] 4) GR.9 10x25 16g 4/1[ ] 5) GR.9} 20x25 16g 2/1[ ] 6) GR.9 20x12 16g 1/1Ld [ ] 7) GR.8 40x25 4g 1/1 (64K)[ ] 8) GR.15 20x25 9g 2/1 (}64K)[ ] 9) GR.15 40x25 9g 1/1 (64K)[ ] A) GR.9 10x25 31g 4/1 (64K)[ ] B) GR.9 20x25 31g 2/1 (64K)[ ] C) GR.9 20x1}2 31g 1/1 (64K)[ ] D) HIP 20x25 30g 2/1 (64K)[ ] E) HIP 40x25 30g 1/1 (64K) [ ] O) Disable screen while deco}ding S) Save D:JPEGSHOW.CFG X) ExitChoice?XYT8 ͝,8 ̝8 }L$h͝I͝L̝,̝L   0 CH  Error h / Creating  GL" G0 }l Ȝǝ CLȜɝ / U Ȝǝ Ȝ>ǝɝ`  JL?E: `123456OSX789ABCDE `}@,(e`(e…`H@ ԍЩ ԍh@HH ԍЎЭfg ԍЎhh@H ԍЭf ԍh@ D:JPEGSHOW.CFG}D:*.JPGD:*.JPG8 P} ۝ҝLc .   ( " $ # $ $"""0/32} 7#!# ]#}based on juddpeg v0.9182736 slj 11/11  " " ?) ! '" L !L ɀ=H 7# ]#error at pos=$}" #" #" # #h w# m# ) 7#` !!-!I!`!w!Not a jpg fileError reading fileError in quantization tableErro}r in huffman tableHuffman decoding errorUnsupported jpg @ @N` ]#unknown header:ff_" }# " O" ` b"_"! `ЯLt&L#L$LV$L$L% ]# trying anyway` b" _" ]#not jfif format! }"L!L! "  #`_" "72 "_"&  "a" "8`"a" a"`8`i "" "_" } `""" #1HIDEB VH 8` #### #`!# !# ""#"#` B V }[D#E JKBLVE:hh w#HH BLVD##EIHm#` BHILVHJJJJ #h) i }i0L#`" a" a"`"`" a"` "' $ $    }@, # #L# " $$ " $ $` $ $ $$$`!# } " $ $ $$Z&`&` #Z "P)M@MM-M) `" a" " #@LV$` } # "Lp%) )  -) .) L)`" a"c "^$ #))$))}$޵$().)$馐-).) "$ ) #L,% #L$`y%% B&` B&w% B&v%8}w%JnJnJn B& B&8JnJnJn B&x% B& B&H)y%hJJJJ% B&%Ɗܢ%%%}y%y%y%``" a" # "hh`Τ" # B&x% B& B&H)h&hJJJJn&Ɗ B& B& B&f&}g& J$ 8'x% 8'x% 8' "$ Q%mg&g&ũg&Ny%f& &f&f&8i }L& `5'3'4'y%3'%g&86'5'7' z' 6'Ƌ4'Ɗ`6'.7' *4' y'y' '} ' 7' (L*`NXb3'n& -).) ) (3'}Z&Z&L`&e`&L`3'h& ''5)6) ) 5JJ}JJLL@򄐥) (LL@`M@MMM "0@2$ &4BP`RD6( *8FTbprdVH:,.N\jxzl^n|~3'}% U(V(?IiL 8񄅒񆅓L8e](șLL`, ##*(Ƒ ##&&Ƒ}(`` l `=)>) 8厍J) 反K) i  i J)ȭK))=)>)`}) !9), L)ȱHehe`1 ##0Heheנ``LL}i *LLi首6' `) *f& v%) *LL} *ɀjfɀjfii ,*i@i*` -8壅夅ee}8嫅嬅ee8婅媅ee8壅夅ee}5}66i 鵅5}66i 鵅ee<}==i aIi}Ii7}88i 錅銅8咅哅9}::}; {Neeee8}妅eeee8婅媅ee8塅墅eeee}8姅娅8姅娅eeeeeeee8姅娅8埅堅8嫅嬅8壅}夅`D P.> P.@ P.B P.D P. }F P.H P.J P.`0.Jf &eeȱ0*!}`8咅Jf*eeȱ0*8咅`/K $1@Qdy6Rp!Di$N"}z@q >tI"`A&lYJ@:9 q@zN$iD!pR6ydQ@1$  $1@Qdy6Rp&}!Di$Nz@q >tI"`A&lYJ@:9>==<<;;::99887766555443(}32211100//..---,,+++**)))(('''&&%%%$$$##"""!!!  )} *} +} !!!"""##$$$%%%&&'''(()))**+++,,---..//0011122334455566778899::;;<<==>>??@@AABBCCDDEEFFG,}GHHIIJJKLLMMNNOOPQQRRSSTTUVVWWXYYZZ[\\]]^__``abbcddeefgghiijjkllmnnoppqrrsttuvvwxyyz{{|}}~-}jԉ>.}]|1Po$َCc͂7V u*ߔIh҇<[z/Nm"׌A`4Sr(ݒGfЅ:Yx-Lk Պ?^}2Qp%ڏDc͂7W /}v+Jiӈ=\{0On#؍Baˀ5T s(ݒGgц;Zy.Ml!֋@_~3Rq&ېEd΃8W w,Kjԉ>]|1P0}  !!"#$$%&&'())*++,--./001223455677899:;<<=>>?@AABCCDEFFGHHIJJKLMMNOOPQRRSTTUVVWXYY1}Z[[\]^^_``abbcdeefgghijjkllmnoopqqrsstuvvwxxyz{{|}}~2}*?Ti 3H]s'5}>??@@ABBCCDDEEFFGGHIIJJKKLLMMNOOPPQQRRSSTTUVVWWXXYYZZ[\\]]^^__``aabccddeeffgghhijjkkllmmnnoppqqrrssttuuvwwxxyyzz{{|}}~~6}N:%t_K6"p \G2l XC/}iT?+yeP<'vaL8#r]I4 n ZE0j7}VA-{gR=)wcN:%t_J6!p [G2l XC.}hT?+yeP;'uaL8#r]I4n8} YE0jVA,  !#$%'()+,-/01245689:<=>@ABCEFGIJKMNOQRSTVWXZ[\^_`acdeghiklmopqrtuvxyz|}~9}  "#$%'():}+,-/01345689:<=>@ABDEFGIJKM;}<}b&Lr6\E k/U{?e)Ou9^"H n2X~Bh,Rw;a%Kq=}5[E k/Tz>d(Nt8^"H m1W}Ag+Qw;a%Jp4ZDj.Tz>c'Ms7]!G>} m1W}@f*Pv:`$Jp4  ?} !!"""###$$%%%&&'''((())***++,,,---..///00011222334445556677788999:::;;<<<===>>???@@AAABBBCCDDDEEFFFGGGHHIIIJJKKKLLLMMNNNOOOP@}PQQQRRSSSTTTUUVVVWWXXXYYYZZ[[[\\\]]^^^__```aa A} !!""##$$%%&&''(())**++,,--..//001122334B}5566778899::;;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNOOPPQQRRSSTC}TUUVVWWXXYYZZ[[\\]]^^__``aabbccddeeffgghiijjkkllmmnnooppqqrrsstD}tuuvvwwxxyyzz{{||}}~~ E} !""##$$%%&&'(())**++,,--.//001122334F}4566778899::;<<==>>??@@AABCCDDEEFFGGHIIJJKKLLMMNNOPPQQRRSSTTUVG}VWWXXYYZZ[[\]]^^__``aabbcddeeffgghhijjkkllmmnnoopqqrrssttuuvwwxH}xyyzz{{||}~~ I} !""##$%%&&'(())*++,,-../001123344566J}77899::;<<==>??@@ABBCCDEEFFGHHIIJKKLLMNNOOPQQRRSTTUUVWWXXYZZ[[K}\]]^^_``aabccddeffgghiijjkllmmnooppqrrsstuuvvwxxyyz{{||}~~L} M} !!"##$%%&'(()**+,--.//01123445667899:;;N}<=>>?@@ABBCDEEFGGHIJJKLLMNNOPQQRSSTUVVWXXYZ[[\]]^__`abbcddefggO}hiijkklmnnoppqrsstuuvwxxyzz{||}~P} Q} !"#$%&'(()*+,-./01123456789::;<=>?@ABCCDEFR}GHIJKLLMNOPQRSTUUVWXYZ[\]^^_`abcdefgghijklmnoppqrstuvwxyyz{|}~S}T} U} !"#%&')*+,./02346789;<=?@ACDEGHIJLMNPQRTUVXYZ[]^V}_abcefgijklnoprstvwxz{|}W}X}    !"#%&')*+-./0234678:;<=?@ACDEGHIKLMY} !$&),.1368;>@CEHJMORUWZ\_adgilnqsvx{~Z}  "$'),.1469;>@CEH[}KMPRUWZ]_bdgilnqtvy{~\}  "$'*,/1469<>ACFHKMPSUXZ]_begjloqtvy|~]}   "$'*,/1469<>ACFHKMPSUXZ]_begjloqtvy|~ .LyLyLPLxLD1:*.PGMyO d ML nj PgmView 0.1(17Oct03) Raphael Espino nj- Ѝ _}  ߉,7 Í % N:  ߉0 }Loading L CH Error h : - L.NJnNN`}O JnOO(KJEڐ ;JssH}G'K{}, ֌t(v ta} tw G HGLdz} ǖ ffset Col:LC ǖLz K0 Ɛ Row:MC ǖLz K0 Ɛ Ŗb}sj ǖ creen: sC OffL{ OnV1sj ǖ licker: s FY,N ǖ ŖҢsR ǖ c}eduction: s0{}ّ}}8 L{ Best  Run againRXx Screen: 40x25 Image: ܐ Ŗ T d} TOGGLES SCREEN WHILE DECODING: GR.8 : GR.15: GR.9 V : HIP . Save As:: HIP: Micropainter: PGe}MChoice?s D|TuK0$8V , mJ Vi nj > u nj  O4VLSsCICLzf}OJLM Offset Col:C .L ̌ Offset Row:C .Mи ̌L|FVsFIFLzRs{}ّ}g}{}Lzɛ ፰L|JsLz JѩP s ȹ|}H|}H`}}}~~~~~%F Ao2 h}F  sJKKIG0IIH0JJL8NIJmImJ i}P˩̩̑]EC /C @ Ax X`F Ao )L}EF ~Lyj}L}i} ǖ Ŗ Save as DM2H#4 PGM Micropainter ׉lT Press for default filenak}meFile:D:.ʠș lhșh󩛝șXiYiĢB j~ m ʙ:˙ɛ8` L.MIC.HIP.PGl}M. ߉0i l0s J +P@S +PF2.ȍIѩҩҩm}0  iLL`IJ`TU  O;C9"ʭ8LH o zhl Li|}nОI8UI`D4 2F  ~- 0D4*6 0 0 \ File Saved!L \ LkP8©é}}mdj'mmx'mm: 0P 藩P jΠ 08©PémkLɇ "L Image: ~} Mode: D4$ GR.D2 9,8 ǖL 15L ׉F Flicker Size: ܐ Offset: Reduction: } *** CORRUPTED FILE *** Help:-Change options-Run again-Back to image-Save (GR.15V and HIP o}nly)-Exit to DOS/-Change image colours ( ْ z ol !>LL ْL' HIP`JL @ʙ:}ߗ(@ ș@/!xP ;8   "Hȩ 8(8¥í89A}6807 _66S5 ' - Dir ' Quit ' Mask7 ' Next ' Prev '} Up Dir O< ]:L- ڥ8Ѕ9i8N7 7з L^L" nj } 8.L1: :L$A6L8A…Å0 L Í::ȱ ș >剙::.}ș ș:剎剹șɛʎ L$șʆ LJ5i5Lnj@ JL @L@ ɛ)`7}6)6 Ȋ  "L早RwXPǑXWXXiͅĥYiŠ|i)ĐňUT`H0 `NL}8v`XiȅĥYiŢG`zX)"{0X Ж1 |zzX Ж򩛝}):`XiĥYiŢ Жș򩛝ș`@ʽș`@ʽș` L@ʽș`@ʽș`Xx}* Т Ȣɬ.` 8`/` )?(>EH/C/ԍChL0u ,H]ȑ}șɛ ޖ񩀑iUąTe^e_hh@x@A X`ʎ)?` 玩厹ʙɛ)_C8`)探 }mmL`L ɛ H Vh)a)`p rK ( q .p . .q.ro}8ooppG0 op   8K8  )R8q rq}H0 NqjNqjSqȐȍS`N NpnoNn`0 L>`0Gύ}ЍэҍmϭiЭmѭiҦˤȎ;}:,:)@2"@:#, A" A@2SKIP COMMENTS$ @:0,)!@:9,A@-MUST BE A NUMBER} IN ASCII.! A! @A@8$K-----------------------LREAD A NUMBER IN ASCIIQ6-V}6-$@%&@H`.)@$@:0,*@:9,. Aj6-%@t"@6-$~"@}6-$<"@*AU9(UNSUPPORTED NUMBER OF GREYS<$---------------------READ A COMMENT})@"@)"@$ A D:READPGM.BAS---------------------READ A COMMENTKJFIFVT-Compress (tm) Xing Technology Corp."}C    $.' "+"(6(+/1343&8<82<.231 @"} }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZ"}cdefghijstuvwxyz? ((((GҬ >>"}C 㷿_@(Dk3?lL.,-Rx$\Q+RQEQEQEQEQEPzsV۫oA,=xg[Z"}6CpkGoۍo$8\Qv cs׽e>4 #$K+&$ [遁R[mVMW`%lQOS?Ҧ"})}£w9X\!=G>S3&ݬ x;zUļt+.GFֱOw(y)!A֬i:r%(B%<97>Kq/.GLgr3="}{YcxX`P gQEQEQEQEFBB8k𿆾354V$*aoJK+x<8Q]nIGbr7ְgl^j^C?/8'?"}J{D dcCL4P1fe8MGq;g5R@$*AWM!z>De6>xL 9 d)(w㯰zRBm|csyϥIki,"}?]4hn$#E\=3}g͵;DkpNI=柯*іa4\[(.]6Qo} 첹8,3k;QEQEQEQE "}03tZlLȲm8]-Hcd@ܠkʽFG 99`I>CrsaGZn$S$Ẋc PǮ;ӊǶ)Q!CqjL>ʥX"}#OO?J/CC2:$#)CQOQҦr*Y/YZ 08>kMr 098x"}e/=AɭE-/\ ~Us=6~A:t^\t)1Jq=( J 9<=iRt`NH ̆8̙\8Pzdjۃ(HPŵy<"}+,5mG$Y1anoBqI]O0BBY#\p upZm1[rqU|qmfĖѮ#09<1J`,!"}z(((u3a!2N(7ҭMYe&OUn7!&~F2H'ecڕN\vNٔ,u;i6o9mn*iDBwjZ%܄m"}+_ͷ~#ٸWS2$9犱.8_qڑp0\OQ{ڍOm#'a<`dYY_,+A]`}G4b}&ʯ>tCRED["}E;R:]R+nӽY%MT O=ǥtPvhԮY`syy?4]RA L~*=yʹEQEQEQN[zjOA9k"}!b{jJP(␮):v!{zV6Jر721ЌƝBp܎2)c#GcVBmAUd@*3VcF>ɧ<*!jTa:l"}qS-gD3;W ] m)7܅1]'=Li[ qׯ/OJyυfe.ztEχ|۹d GYpAמ1\֩Ĭ[f!YUbt淳@>@(G\1: a{V$JSm,~XEsZHw-&59'%|d`{=)4"}U7؎>W5(.1L0Tӣb&?vNF#_<'"%Ɵ{$1' b`3;zJk)' vwWQ^D.d ;?y74oYB3 r d1%QE !4ꇡ<ס <^ejQj4W $nx*y EB( 9lgj?tv\xVU"}2Oב]F\:i[c/!'yXSA^3&ImF h†q`cٮj(((٧ѵ;P2R{;OvoGi.6_E 9I*NϿ5/a]?"}j.p8϶k|%i=:Y0i dJ,#k:7Ƕk((T֌Vo фnHcO:Ř47_؏.NZ}IZ&<t=h"}PwL7A4b{k?r6'_^Wm٧N@cg<'a=Q+}('`GxfCE'I[U((((yZ=S^Eo"}?\UQ8SH<ݛq~U05椻!!aQH_k| |~#lsV?,1+GE 4mNyk((i @k׼v=Ni3#ѧ"}j#'?zsMi:.T;zό;mB* ?:[9+0-Yqy‘ׯv|8=Ec\"PcO7`\ ryHaI-aL6#9';E:"}6r{W>&J6mnd͢(((+_zM:6M8=b*kѦo6soe"W<wo, +A ? sϥqm"}~GQQLFpqS}/1U`1F+nfs@+qoЍٮ^ӥu cFR2ӭE#7 Z h Yڇo 8 cڭhz4v"}4<@¢۫Cz|qc@ z;Wjmod+ ɯ-vgbK19$ǥQEQEQEQE+KW?cqcc0qLvx&"}^+r1VVG8 :42Bdd7VHӥ Z+.^Һx,%|#9Zzƶthz<96?x~!;ya"}rpWM}J oHa#+ ښ ?7#TQEQEQEQEQEIj.ba,_NG%h{o|“t"}n&F9sڧ,l8?p!c'CF(q[";ykLi݀簯N8;TQwO;gV9|AK}coSsҸZ(((((W^.H4{Aƪ0Xm}Wjg"}5XrS; TnlL$ڼŖ.̡q}k(^Y7DaEu* +K.s\-#VS"Xv@Rxc"}ckWI5ҩE[^LJ$ r`ןjt^O qxz袊((((+V1j3 W_\OczeHbH VC4Iׯo]4,@ǿ"}s^@ F@zn$rqU1EȢ }4h!DoQ]原^ĉ$$vf[1hAڭiCT.۞d ~sP^ &zO_F3*9?y^"T%xz*Z%^9_ړB!>#}KqwnFv9F?CXL9yY]`E\Y=*T)>)nb.;EW3N`'rh#}]xzHLf+$k<io]V$?Z|#}q椋}*XV/-n%ʇ ~UQgV$?Z| :JFIFddVT-Compress (tm) Xing Technology Corp.'}C    $.' "+"(6(+/1343&8<82<.231 @' } }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZ' }cdefghijstuvwxyz?8'3~RvKR' }by`qHy( (R"()r)(֓4RfsRF= c7t =aR$?!+r 45g<pG ?Y!m#أ' }GYR|?A[^~gukvq_݉_^ĨO x{U#JJ?.)J5= R}e4^W*~P(G# 4cm)֍jYX\' }dδӌ~IIf_躎3ye4KO8%}):vԠ{Qj0; 0=(Qj(IzqIj? N*U1IJ=l,wXL']y?jM:ď"V#,k^9'}z~".5_Ʒ5t8h!ra vԚjnQ.2$~Ur&Km"]Dzչ K[X.2?SZZ7S@(}9NF]'}R0 /tl>2yY7xok3Wekqk~}kO Ij *K z6W#IKf#7csg_Qu=(]Y(Oƺ İl'}dpJe>j0:\\nKYK&ܩ*+ռ Y-C@U<5-IPS1I(QL 1F(`RbQ1F=Iʃ+J(nI'}G"3;fΧm嬍)RUlֿ0#t Aa]'|[6<6k/`ݧJ0>TPƱu5"s]S\\hwlF׈/5'}Lgh}kxL\F%^G ZM[xg`؁sS$$+n+K7O*<}w=k,fʼnr7?[?tD-m o0cyM'}-ʶʟ1]}Y0#O®Wxwf }3`u4>l ) ?CgG?ck|՜eOхq=+-wlX!Ed2JLqI\x'}Rb#1N 㑎GHbpR]Cl<68+==g"p9CM.ہ5C+t?k(ښC'}WAii<@?$=jӋ]"H*弌iGFemISڥ;TV_֣B~SFG7Uךeo 2+4i*~Us'}0'yǥg=qwclnj֚o5~2edS+bI?UJg֮D]Uu* 4c`񖵔$D펟D88kie;'}meT[V,KpДesޛq(vlNrsTWm@ ЎYvEʹYFw-\^kxmOW6>D/+񞋨v.L:p3} rL^g'}cIP)tLb0)L{PA]e\e]OڳAz/qGEHd%YOvF B]H.ct>U]>ҬZ=eH?kFRJ'}q]L2EsNg,6\z\]e{6ˈl>7);Vޙ[8VI8cyOһ+Ķ?]fkH^52_On[2t:7Us6z' }x- PujK[pT{5mjbC@+B(eC4jAXOZVμP @a;z[O:*/qӘ"+uv 1b,h ګqUgEp'!} u4neݺ%BfkDMʀ%5!5źPӜOyj")44T.TrM)# _4L3WFMm(#XuтǴf#RY'"};yɮ4rq[p-[ڞnQNjg `;U؝@==$FhÕ5MB]ѴEgnFPZ[o!ޞ9dҹK{mdpEvO'#}WWvpUxo&ZדɜL-{}{  R`e>apzQZb~WPҌjn-)ՔWYX`"[ n 1(TH0'*}%tU'V=K# E M#?I~~! iE[LKaK?p+7K]vȘU䑙)ԱI\Q}m-ͤEq'+}%0fӮe Ǽ[0jOO5ĩ(UG=jơr9Qҧe=9#j4&Y$ =m#sF?eExğ ajh\e+Sk+1S',}1IRL~6(BUS;۲ߍhizy&7q}So@rGA{H[gQҬGn+U[&@P&1?ejցc~'/}}̰\?<ʏqU!xpGXt"v89kzZj~GyU.09 ;zUBA371p)bIR x"n2JaI>Ƴ&X`:u[1'0}߱8).ŚA-*V MSUk 4 }0xxX)u^iH-" C{{F}3冪Vd$ݖobʵE?E~G>'1}e&0SuK;f+mp:ŲS;մr>*SDbzU`g eXᏯ4=ycyV;/؁&s{ _i>Ik,QYՅkjq,ɏ/=#J5M(KVnK6/Ad>v4mV7Wzjpc'3}5") 7ƏFSFA+feɸ;gUֶt jΧ>n7ij$lT0-u>EO -qֺaF),_wBsOj%'4}ƣqrc.OAQCrPvP*{az8D?h"P'r{TMm,T\ϥk[_pKx?­gT2޼#OzT1,S sU{g3['5}wFKi..{}yι:kAN$һF,b͌yovV)PC+}BA'f5b;SuA׎$6a? _i)8qч'6}T%_TތSG|I뎆fuI⒦lPisb8#oiWv< .0Z!qS$T8h#|'$OZ46W/zxt|'7}$mnŽy\W~"o%|ɴ#)ϮAk y8^/ 5YTR}P*.jXc u'jKA! H@nm!*|dc['8}Vz9V5+l̚| r}inkZo/GF}ƴeL#Ɖc+G)+I`w:miܴ#}qLqIq'9}x~Qn-?{{^SM{98 J譧x5đ{JZմخ+q_7x,:x.ŒA\g5θLUCr_/f#^ZE⏒b8of^[;-/)"h,rЊ0E>hC tnx U ˋiRE^E_vC ~U}'=}O׬$Le3 | ^xrvP8q>0)L 3ԸPqLҐpxȭkO^AG5[z'1MkIL7L{firSp*b'>}c/~(REq,'1H8?&_G8|Onl{5z gO !a%@}=&u"+b2Y%^iunG}"BjpHQS&G&YOg'?}xW6U^jEYbw+]b iW3ZΓA#FAo爄E( %"&r3Bpԅ\t2 DydG e{Cq exG,e̅'@}{׀x÷ hXeGJiSȤA%'J#AxdT2_f k)2oKqowٸ ZOƱ9o@^D :Yw#1Sʁ{'B}.XrqWk:dM+CñHE>iyAIF)3@M4ڔ^;Q(xE))q0h4-O3&޺2e+P +'C} Sa]|j,u) ۞C?zarFPIRhtݴ}ir>nֹ1kve0s19GڼJHR9)h)1Ij1IR"Fp)1G_'D}Z1Qj1F=ǵbt>u*ޟ=bu= u^o~MC_Qe?#\JRE#Һt&l}+DwFYͪy'E}1OXf\gfIN''ҔJ;PM7uz )%A@G3G>((wҒ:QRӊ[YDHQl\'G}Bc.5s\++JU TwQ)8A;R54IځNQA֜zCQSTvR H:S(PbtR`zQAGaI%Ql\$v