@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu  } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED736 FREE SECTORS COPYING---D1:DIRECK.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 138ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u1000 ; RGB_COMPRESS1010 ; by Clay Halliwell1020 ; -----------------1030 ; USR(addr,outdev#,width,height)1040 ; (output: bT}ytes written or1050 ; error code if <256)1060 ;1070 ; O.S. EQUATES1080 ICCOM =$03421090 ICBAL =$03441100 ICBAH =$0345U}1110 ICBLL =$03481120 ICBLH =$03491130 CIOV =$E4561140 FR0 =$00D41150 HPOS0 =$D0001160 GRAFP0=$D00D1170 PCOLR0=$2C0V}1180 SAVMSC=$581190 ;1200 ; CONSTANTS1210 PUTCHR=$0B1220 ;1230 ; VARIABLES1240 OUTDEV=2181250 WIDTH =2191260 HEIGHT=2W}201270 COUNT =2211280 SAME =2221290 STACK =2231300 LAST =2241310 XCOR =2251320 YCOR =2261330 SX =2271340 SY X} =2281350 PX =2291360 PY =2301370 ADDR =2311380 ADDR2 =2331390 NYBS =2351400 NYBBLE=2361410 TYPE =2371420 INY}DEX =2381430 PIX =2391440 PRVPIX=2421450 ;1460 *=$5F501470 ;1480 PLA1490 PLA1500 PLA1510 ASL A1520 ASL A15Z}30 ASL A1540 ASL A1550 STA OUTDEV1560 PLA1570 PLA1580 STA WIDTH1590 PLA1600 PLA1610 STA HEIGHT1620 ;1630 [}TSX ; save RTS addr1640 STX STACK1650 ;1660 LDA #01670 STA XCOR1680 STA YCOR1690 STA FR01700 STA FR0+\}11710 STA LAST1720 STA HPOS01730 STA NYBS1740 STA NYBBLE1750 LDA #31760 STA GRAFP01770 LDA #101780 STA PCOLR0]}1790 ;1800 SCANLITERAL1810 JSR INIT1820 LDA LAST1830 BEQ SCLIT1840 STA COUNT ; value of LAST1850 BNE WRITELI^}TERAL1860 SCLIT1870 JSR GETPIX1880 LDA SAME1890 BEQ WRITELITERAL1900 INC COUNT1910 LDA COUNT1920 CMP #221930 B_}EQ WRITELITERAL1940 LDA LAST1950 BEQ SCLIT1960 ;1970 WRITELITERAL1980 JSR RESET1990 LDA COUNT2000 BEQ SCANREPEAT`}2010 LDA #8 ; set LIT bit2020 JSR PUTCOUNT2030 LITLOOP2040 JSR GETPIX2050 LDX #02060 JSR PUTRGB2070 DEC Ca}OUNT2080 BNE LITLOOP2090 ;2100 ;2110 SCANREPEAT2120 JSR INIT2130 LDA LAST2140 BEQ SCREP2150 JSR RESET2160 JMP b}SCANLITERAL2170 SCREP2180 JSR GETPIX2190 LDA SAME2200 BNE WRITEREPEAT2210 INC COUNT2220 LDA COUNT2230 CMP #2222c}40 BEQ FALLTHRU2250 LDA LAST2260 BEQ SCREP2270 ;2280 FALLTHRU2290 LDA XCOR2300 STA PX2310 LDA YCOR2320 STA PYd}2330 ;2340 WRITEREPEAT2350 LDA COUNT2360 BNE REPDATA2370 JSR RESET2380 JMP SCANLITERAL2390 REPDATA2400 LDA #0 e} ; clr LIT bit2410 JSR PUTCOUNT2420 LDX #32430 JSR PUTRGB2440 ;2450 LDA PX2460 STA XCOR2470 LDA PY2480 STAf} YCOR2490 JMP SCANREPEAT2500 ;2510 ;2520 INIT2530 LDA #02540 STA COUNT2550 LDA XCOR2560 STA SX2570 LDA YCOR25g}80 STA SY2590 LDA LAST2600 BNE DONEXIT2610 JSR GETPIX2620 JSR NEWPRV2630 RTS2640 DONEXIT2650 LDX STACK2660 TXh}S2670 LDA #02680 STA HPOS02690 JSR PUTNYB ; dump buffer2700 RTS2710 ;2720 RESET2730 LDA SX2740 STA XCOR275i}0 LDA SY2760 STA YCOR2770 JSR CHKX ; update LAST2780 RTS2790 ;2800 GETPIX2810 LDA #02820 STA SAME2830 JSj}R NEWPRV2840 LDX #22850 STX INDEX2860 GLOOP2870 LDX INDEX2880 LDA SCREEN,X2890 STA SAVMSC+12900 JSR LOCATE2910 k} LDX INDEX2920 STA PIX,X2930 CMP PRVPIX,X2940 BEQ GNEXT2950 LDA #12960 STA SAME2970 GNEXT2980 DEC INDEX2990 BPl}L GLOOP3000 JSR BUMPCURSOR3010 LDA PIX3020 RTS3030 ;3040 NEWPRV3050 LDA PIX3060 STA PRVPIX3070 LDA PIX+13080 m}STA PRVPIX+13090 LDA PIX+23100 STA PRVPIX+23110 RTS3120 ;3130 LOCATE3140 LDA YCOR ; new x40!3150 TAY3160 n}LSR A3170 LSR A3180 LSR A3190 STA ADDR+13200 LSR A3210 LSR A3220 STA ADDR2+13230 TYA3240 ASL A3250 ASL A32o}60 ASL A3270 STA ADDR23280 ASL A3290 ASL A3300 STA ADDR3310 ;3320 CLC3330 LDA ADDR3340 ADC ADDR23350 STA ADp}DR3360 LDA ADDR+13370 ADC ADDR2+13380 STA ADDR+13390 ;3400 CLC ; add scrnaddr3410 LDA ADDR3420 ADC SAq}VMSC3430 STA ADDR3440 LDA ADDR+13450 ADC SAVMSC+13460 STA ADDR+13470 ;3480 LDA XCOR3490 LSR A ; /23500r} PHP ; save carry bit3510 TAY3520 LDA (ADDR),Y3530 PLP ; restore carry3540 BCS SAVPIX ; ods}d pixel3550 LSR A3560 LSR A3570 LSR A3580 LSR A3590 SAVPIX3600 AND #$0F ; clr hi nybble3610 RTS3620 ;363t}0 BUMPCURSOR3640 LDA YCOR3650 STA PY3660 LDA XCOR3670 STA PX3680 INC YCOR ; update X,Y3690 LDA YCOR3700 Cu}MP HEIGHT3710 BNE CHKX3720 LDA #03730 STA YCOR3740 INC XCOR3750 ;3760 LDA XCOR ; column pointer3770 ASL Av}3780 CLC3790 ADC #423800 STA HPOS03810 ;3820 CHKX3830 LDY #03840 LDA XCOR3850 CMP WIDTH3860 BNE LEXIT3870 LDw}Y #13880 LEXIT3890 STY LAST3900 RTS3910 ;3920 PUTCOUNT3930 STA TYPE3940 LDA COUNT3950 CMP #73960 BCC TINYCOUNTx}3970 LDA TYPE3980 JSR PUTNYB3990 SEC4000 LDA COUNT4010 SBC #74020 JSR PUTNYB4030 RTS4040 TINYCOUNT4050 ORA Ty}YPE4060 JSR PUTNYB4070 RTS4080 ;4090 PUTRGB4100 STX INDEX4110 LDA PIX+2,X4120 JSR PUTNYB ; put RED4130 LDX z}INDEX4140 LDA PIX+1,X4150 JSR PUTNYB ; put GRN4160 LDX INDEX4170 LDA PIX,X4180 JSR PUTNYB ; put BLU4190 R{}TS4200 ;4210 PUTNYB4220 BIT NYBS4230 BMI NYBFULL4240 ASL A4250 ASL A4260 ASL A4270 ASL A4280 STA NYBBLE4290 |} LDA #1284300 STA NYBS4310 RTS4320 NYBFULL4330 ORA NYBBLE4340 JSR PUT4350 LDA #04360 STA NYBS4370 INC FR0 }} ; bytes total4380 BNE NDONE4390 INC FR0+14400 NDONE4410 RTS4420 ;4430 PUT4440 PHA4450 LDX OUTDEV4460 LDA #P~}UTCHR4470 STA ICCOM,X4480 LDA #04490 STA ICBLL,X4500 STA ICBLH,X4510 PLA4520 JSR CIOV4530 BMI ERROR4540 RTS4}550 ;4560 ERROR4570 LDX STACK4580 TXS4590 STY FR0 ; error code4600 LDA #04610 STA FR0+14620 STA HPOS0463}0 RTS4640 ;4650 SCREEN4660 .BYTE $41,$61,$81TY FR0 ; error code4600 LDA #04610 STA FR0+14620 STA HPOS04632(CCCCCCCCCCC1C15PICNNPIC55VOFFPIXFDIRLFNAMETXTLEMODCONV8DELDEBRBOPIBAY }FXTBBLOADMOVTBARDI@@@@@@@@ @ @ AU }B61 @B61AY`wAA(@vBB4!B3 }@ ,== z!@i"@#@$%Af&AF'@(B61)*+ },-,,.i''/ee0;;;1@㩠젛 }d AP A@ כ# - A # AK śLA 6-?:C:,,!6-@:7,,'6.A6 }7<%,.7$%<$%,V -%7<,0  `67<%,..RGB ěH A`56-?:<< }%<@9,=-D)H ""6-?:<%<<%$&'<,Q )))))+@V/5"GA# }@dQ AP% "A @% AP6-?:C:,,6-?:BD<<<,6-?:Bc<, } ٛK@4#6-?:C:,<$+!,,/@w36'9'?K6-?:C:,,$ Λ% AF6-6- }6-%6-9 A@ /(}Enter -, ubdir, uit96.D1:5 )"@+ 2A)@H51 }!@H* @X'67<,.>:,1 A@p@A@0;AR"(}Enter subdir./@;AR }L6-B:,%6.'67<%,.*.RGB2L(}Reading directory... 3*AA] -(7<@ },367$%<$%,.7<,;6-%C6-%O"@W6-%]6- A@?")(}Ϡ Ӡġ }1-5 ? A@  -%( PIX|"h 6-6-6-6-*6-?:<<<,26.C67@e,.L67 },.^AdAUh ACPg ԛh$ )" AD$ ABr""@E6-6$+!,"6-|%"@a }6-+ @,%6-/"@C6-6$+!,/6-6@$+,3"@B!6-$+ @1,36-@$+, }"@'A@"@2 AG"@e AFP"@h AE#1%%# @e }AC 96-?:<<<,6-%"6-%*6-%96-?:<<<, 6-6-6- ABӛZ0((}Use }, to (de)select picsZ(%: New directory : Start show41(": Show all pics : Set delay () }4$/ũԠÛ0! 1&!@2AD :- 6-%67<,.>:,!-&*(-$D -%7<,0 }>:, N- 6-&-67<@e,.7%<@e,X -&( $ ٛS AEARS(/}Enter i }nter-pic delay in seconds(0=manual))@AR& ACP)$ Λ_+ A @ }1AA=AR_6-F:A`,%F:Aa,$AV`%@q%)%@#%7%@%`( }$ORUHE by clay halliwell LA!AA/A %=A`%I@4L$) ̛* }Q -67<,.>:&, %6-/@2?-@0E,Q/@4  AG6-$[כ\g } B+6-?:<B@ ԍЎЌƩ ԍЩhhh@F-?:: Selects and de-selects pictures. Pictures are displayed in }the order they're selected. De-selecting and re-selecting a picture will move it to the end of the display queue. : Starts the slideshow. When all selected pictures have been shown, the cycle repeats until aborted. CSView automaticall}y selects the correct display mode (9 or 15) and supports an optional 40-character title, centered underneath the picture. } Commands during slideshow: OPTION: Advance/Unpause SELECT: Pause START : Abort Joystick b}utton: Pause/Advance F : Freeze interlace. I threw this in just for fun, as it lets you see what's really goin}g on in a ColorView picture. Press any other key to cancel. : Returns to the main menu. ll pix: Selects} all pictures sequentially, regardless of prior selections, and starts the show. elay: Allows you to define the dela}y (in seconds) between pictures. A delay of 0 seconds activates manual advance.QUITTING In the event that you want }to use your computer for something else, and consider the RESET key gauche, you may simply select uit from the main menu t}o exit to Basic.USER FEEDBACK If you (yes, YOU), ever put CSView to any sort of interesting use (group presentation,} in-store demo, etc...), I would love to hear about it. I would also like to hear any criticisms, suggestions, comments or b}ug reports concerning CSView. If there's a feature you'd like added, let me know!SHAREWARE...THE WAVE OF THE FUTURE } CSView is shareware. If you find this program to be a useful addition to your software library, I strongly urge you to send} in the paltry $5 registration fee. It's people who support shareware developers that are keeping the 8-bit Atari alive. } Send check or money order to: Clay Halliwell 407 S. 2nd Street Clinton, MO 64735-2107it Atari alive. jOP(| BLOADCONV8TMOFDIREDINDOUTMOVDIDOUIBMODTITDIBATLETITX,,A@AU}B&,==d B1 K ( s i''}/@ (@@%BpB䩠}젠d AP Λj A0G(5Enter load file (no extender; RETURNfor directory).L(V A2}j@RA R*("Enter new input drive/subdir.7@H6-B:,%@R A#"@ A1}# A(@4(( AH 6.67<%B:,,.267B:,%@,..RGB< A@HA} F:B2y,"@AP**6-?:C:h@ԥb \`,,$1@w'AdAU1 A } қ U +AA1A @CAv@UAx@2 FF(>ColorSquashView v0.71}Compressed ColorView RGB file viewer 63(+(pd) 1993 LonerSoft by Clay Halliwell6$ қ u (}AdAU}!6.:67<%@,.*.RGBD A1 X( Directory of u@@& O(-@@'@}A(7@<@,E O A10 7@('(Press any key...4)@7$ &6-F:Ad,&"}AUA2 $Ġ›| A@P6-@6@@J-@@W)@[ }_|6-?:<@<@<<,5)@$-@@1)@5 G +@$AY+"@} =A#@dG A@0E6-?:C:,,!A@3A @EA@Q,6-?:}<<%@<@9,0Q6-?:<<%@ &'@<,YAY@4<6-?:BD<@<@<A,M6-?:}Bc<,Y6-@$ ԛ]];@D,;@a,;@9,;A,;@@,;A,;@}@,;@0,H66.,h hh`hhhhBhEhDhIhH V`?6.D:H6-C:,F16.'hhhhhhh֑}`:6-C:,F6-@GG6.=h01eeAO ݩ֩N`7"@@}K+6-C:,76-Bk-@"C6-?: ԍЎЌƩ ԍЩhhh@F))6-?:A @V6-?:"@G+%AdAU1A; B> $ }ś B +@V"+A#@d7@4?6-#B$ > "A'A @3@4;6}-#>$ V6-?:C:,,A-A @?A@K@4S6-#V$G ΠҠţH  6-B:}, $R 7&<,4156-@\ 7<,496-f 7<,486-p $ĠҬǬ›T A4 A}3"6-B:,%/67<,..76-%<D-T67<,.7<,{$@3%@2$B%@@H%@}2$o6-?:<@<<A(%A$<Av,tx {$Š›; +@V16-?::B:,,>:,P$$6-?:BD<<@<A,3 A0}")( DISK ERROR!3 AE`l6-B01&B:,.(COMPRESSION COMPLETE!l(A&P:A$', % reduction (&} bytes saved).%(Press any key...")%$ ԛ[6-@6-%6-%'6-%/6-%76-%?6-%}G6-%O6-%[6-AY;@D,;@a,;@9,;A,;@@,;A,;@@,;@0,;}@0,;@,;@,;A,[66.,h hh`hhhhBhEhDhIhH V`@6.BGRI6.D:R6.D:[6}-C:,F16.'hhhhhhh֑`:6-C:,@6-F6-GG6.=h01eeA}O ݩ֩N`7 +@ 76-F:A`,%F:Aa,$AV%@Z+ @;6-F:@,%F:@},$AVHKTB2VZ6-; -"76-?:) Instead, I opted for a Koala-style algorithm that shrinks areas of identical consecutiv,}e pixels. Operating at the byte level, though, wouldn't yield much compression in highly detailed screens. So I scanned at -}the pixel level of the most common ColorView mode-- CV9. I briefly considered compressing each screen separately, but r.}ealized that the repeat/literal areas on each color separation would be nearly the same. Thus, CVSquash treats each ColorVie/}w pixel as a unit, saving on redundant control codes. In mode CV9 the vertical resolution is much higher than the horiz0}ontal resolution, so repeat sequences are much more likely to occur in the vertical axis. Therefore, CVSquash scans top-to-b1}ottom, left-to-right. The two-tier count value scheme was implemented so that highly-detailed pictures with frequent oc2}curences of tiny repeat areas wouldn't bloat the final file size, while allowing for larger count values on large solid areas3}. Thanks to this arrangement, CVSquash saves space on a repeat sequence of as few as two pixels (N R G B (two bytes) vs. R 4}G B R G B (three bytes)), but still manages to achieve compressions of over 80% on certain screens.CONTACTING THE AUTHOR5} If you'd like to get in touch with me, I can be reached on GEnie at E.HALLIWELL, or leave e-mail to The Loner at PAUGS (6}602-278-8505), owned and operated by nwPAC, the Northwest Phoenix Atari Connection--dedicated solely to the 8-bit Atari!SH7}AREWARE...THE WAVE OF THE FUTURE CVSquash is shareware. If you find this program to be a useful addition to your softw8}are library, I strongly urge you to send in the paltry $5 registration fee. It's people who support shareware developers tha9}t are keeping the 8-bit Atari alive. Send check or money order to: Clay Halliwell 407 S. 2nd Street Cl:}inton, MO 64735-2107it Atari alive. Send check or money order to: Clay Halliwell 407 S. 2nd Street Cl6NGhhJȱKȱDȱEeeHHLVhhDȱEȱHȱIeeHHLVE:K:D1:*.*S:P:D1:FILEN!<}AME.EXT B V B V0 B VB 6 `60B 6b6 k=GGAGGA B 06A2 B !=}06!D0B 06nG B 06nGnGLGL8GGL8DL8R k= L6ZL7!Lx7CL|9@!>}L8L61O<G   Y y@L6 B 06D0B 06nG B 06nGnG)YL6 B 06!?}AGGGA B V0 B Vl B 06/D"B 06rG = B 6G y@ B VL6 B 06wE !@}B 06rG0 B 06rG B VL6 B 6D y@ B VL6oGoGoG B 06G y@ B VL6!A} B 06yEL6 B 06QDeB 06rG y@L6sG:tG: DG:GrGɛ . G .GRG-G詛G =!B} >L6 y@ B VL8 B 06D B 06/D"B 06rG y@L6H*rG.sGRtGuG =GIGɛ:HG.!C}.IGRIG詛IG ѩG@L B 6IG y@ B VL6 B 06rG8 y@ B VL6rGɛ!D}eζL CɈд B VLLG ɰ    >L> <``ԭGIG.G0G \䮳G2G4G6GЍo R< <Ԣ \,!N},`(oio <`ho8o <`=oio <`}o8o <`oi!O}o <`Uo8o <`90oiooiooio <`y'o8oo8oo8!P}o <`rGɛe͵L ʹL`` A?A` APA` AbA` AvA` AA` AA`!Q}eeؘ8ee؈륱 0AJJJJ 0A) 0A AA`hh BDȱEdHeI!R}eHHLV-File not found.-File name error.-BREAK key pressed.-Device timeout (does not respond).-Truncated record, input!S} too long.-Non-existent device.-Error number XXX occurred.} COLRVIEW V2.6 by Jeff Potter 10/92 <>Enter to start continous showEnter to view disk directoryEnter to load 3 GR.15 filesEnt!U}er to load 3 GR.9 filesEnter to restore color regsEnter to save color regsEnter to view current picture.Enter t!V}o exit to DOS.Enter to view shareware noticeEnter to unstick XF551.Press after viewing picture to return!W} to this menu.Press while viewing to swap display lists.Use H, R, G, and B while viewing to tune colors.Y!X}our choice: Enter directory specification.->Enter filename (no extension) of 3 graphics files for viewing.Extensions of !Y}.R, .G, .B assumed.->Exit to DOS...are you sure: D:CLRVREGS.DAT} Loading The last mode (Gr.9 or 15) will be ineffect (cha!Z}nge with SELECT).Press OPTION to freeze or continueviewing, press START to return here.} COLRVIEW ![} Version 2.6 Copyright (c) 1992 Jeff PotterThis program and documentation areshareware. If you u!\}se and enjoy thisprogram, please register your copy bysending $8.50 to: Jeff Potter 814 Banbury Dri!]}ve Port Orange, FL 32119You will receive a registered copy ofthe most recent version, and printeddocumentation.!^}Thank you, fellow 8-bitter!opop@ON(AD:*.RNNppOQ!_}O`!`}ANOOppOqO!a}AOPPppO!b}O!c}APooHmGmGmGiN1hL_HH8mG 0 ԍЍ ԍ !d} ԍߩ ԍhh@p}pHmGmGmGiN1hL_HH8mG*6 ԍЩ:Щ>*֍ ԍЩڍЩލ ԍЩЩ!e} ԍЍЩ hh@6mGiN1hL_HH8mG*6 ԍЩ:Щ>*֍ ԍЩڍЩލ ԍЩЩ !0Ѐ ԍЍЩ hh@6mGiN1hL_HH8mG*6 ԍЩ:Щ>*֍ ԍЩڍЩލ ԍЩЩ$ COLRVIEW.OBJ V2.6 b)q}B%DOS SYSB*)DUP SYSB.SCOMPRESSSRCB*CSVIEW BASBCSVIEW DOCBCSVIEWPDBASB$CVSQUASHBASB4CVSQUASHDOCB+;COLRVIEWOBJBfCLRVREGSDATBogCOLRVIEWDOCBDISPRGB SRCBEXPAND SRCy J. D. Potter October 25,1992 Copyright (c) 1992 J. D. Potter )r} Welcome to COLRVIEW, the advanced color display program developed for the Atari 8-bit computer family. )s} With COLRVIEW you can push your original Atari computer to color displays previously unattainable! The following)t} two new modes of operation are possible: 160H x 192V pixels with 64 colors (based on Gr.15) 80H x)u} 192V pixels with 4096 colors (based on Gr.9) Boot your computer from a disk with your favorite DOS (DOS 2.0,)v} 2.5, MyDOS and SpartaDOS should work). Users of XL/XE computers should make sure to disable their built-in BASIC )w}by pressing OPTION during power-up. Make sure you have not left any handlers installed (such as the "R:" handler, )x}if you have been using an 850 or similar serial devce). SpartaDOS users are advised to disable the TD (Time/Date) )y}line, KEY, and Verify. Now load COLRVIEW.OBJ (use the [L] command from DOS 2.0, 2.5 or MyDOS; SpartaDOS users may want )z}to rename the program to COLRVIEW.COM, so they can merely type COLRVIEW to execute it). After it loads, adjust the){} Hue and Brightness controls on your monitor until the background is a burnt orange color. You should now see a me)|}nu of commands. The commands available from the menu are: [C] Continuous show: you will be prompted to ente)}}r a directory search mask ("D:*.R" is suggested for starters). All files that match this mask wi)~}ll be shown in the same order they would be listed by a directory read. Each will be shown for 1)}2.8 seconds, and the entire show (up to 64 files) will repeat itself indefinitely. To pause on a particular )} picture, press [OPTION]. Press [OPTION] again to go to the next picture file. Press [SELECT] to t)}oggle the display list between Gr.9 and Gr.15 (more on this later). Press [START] to end the sho)}w and return to the menu screen. [D] View disk directory: you will be prompted to enter the )} directory search mask. Enter something like "D:*.R" to see the names of the COLRVIEW files. )} [G] Load three graphics 15 files, which are displayed in 160 x 192 resolution in 64 colors. )} [L] Load three graphics 9 files, which are displayed in 80 x 192 resolution in 4096 colors.)} Note: if you have found you have used the wrong command to load 3 graphics files (an L rather t)}han a G, maybe), press the [SELECT] button while viewing the picture to swap graphics modes. )} COLRVIEW V2.6 Documentation page 2 [R] Restore color registers. )}See how to use this below, under "COLOR TUNING". [S] Save color registers. See how to)} use this below, under "COLOR TUNING". [V] View the current picture. Use this to retu)}rn to the picture from the menu screen. [Z] Exit to DOS. You will be queried before y)}ou can exit. [@] Display shareware notice. Just a friendly reminder about registering)} this program :-). [!] Unstick XF551. This sends the necessary commands on the serial)} bus to return an XF551 to double density mode after it is "stuck" in single density mode. )}If you happen to get stuck after an accidental keypress (for example, accidentally pressing [L], and needing to escape f)}rom the "Enter filename" prompt), just press the BREAK key. Also note that whenever you are asked to enter a filen)}ame, you may enter "D:filename.ext" or just "filename.ext" if that file is located on your default disk. Subdirect)}ories are supported if you are using MyDOS or SpartaDOS. The total filename length is limited to no more than 32 charac)}ters. If the menu has scrolled off the top of the screen, just press RETURN to get it back. COLOR)} TUNING COLRVIEW has the ability to tune the colors you see without having to adjust your monitor's hue contr)}ol. When you load COLRVIEW, it searches the default disk for the file CLRVREGS.DAT. This contains the default set)}ting of the three colors for the tri-color display. I have set these to best match my monitor; yours may differ. To se)}t yours, do the following: after you have loaded an appropriate picture, press [H] (while the picture is showing).)} This will cycle you through the available colors, one step forward each time you press [H]. Press [SHIFT][H] to )}step backwards through color selections. If you find you are still unable to get the proper colors, press [R], [G])}, or [B] to adjust the red, green, or blue separately. Pressing [SHIFT] and either [R], [G], or [B] will reverse the di)}rection of the color change. When you are happy with your color settings, press [START] to return to the menu. No)}w press [S] to save these color registers to the disk (be sure the proper disk is inserted in your default drive). )} If you have become hopelessly lost while adjusting colors, you can type [R] (from the menu) to reload the color registe)}rs from the disk. This operation does not report failure to find the disk file, so be sure the right disk is inser)}ted. I have found that graphics 9 files and graphics 15 files each look better with different settings. You )}can of course use different COLRVIEW V2.6 Documentation page 3 pict)}ures to set the colors. With graphics 15 files I have found it best to try to balance good flesh tones with pure blues.)} The flesh tones can sometimes be too pink, and the blues can tend to be too purple if you're just a little off. )} ABOUT COLRVIEW I discovered this technique while playing with changing colors with display li)}sts. It consists of alternating lines of red, green, and blue images (displayed in graphics 9 or 15). This is in addit)}ion to a page-flipping VBI which relocates the starting color in each of the three images. It's really hard to exp)}lain in words, and it's full of VBIs and DLIs. I found this to be less annoying than merely page-flipping between )}a red, green, and a blue image. There will be rather significant "swimming" in areas of the image with pure (prima)}ry) colors. I can claim this displays 4096 colors (16 x 16 x 16), if I rely on the persistence of vision present in the)} human eye. COLRVIEW also displays graphics 15 (once called 7.5) screens in the same three-color page-flipping mod)}e. This produces 64 colors (4 x 4 x 4), with a resolution of 160 x 192. The picture files included in this p)}ackage were created by artist James Pittman, using both existing graphics programs, and ones that he has developed )}(view them with [G] to select Graphics 15). G15RGB shows the 64 colors available (also known as the color gamut) and th)}e levels of R, G, B used. I have also written a program to decode GIF (Graphics Interchange Format) pict)}ures to Gr.9 or Gr.15 mode three-color files. This program is called APACVIEW, and is available either directly from me)}, or can be downloaded from both GEnie and CompuServe. Make sure to get version 2.2 or later for compatability wit)}h this program. If you have a modem, you can download additional COLRVIEW pictures from GEnie and CompuServe,)} and from the following BBS: Computer World BBS: (716)247-8355 24 hou)}rs, 3/12/2400 baud Rochester, NY Sysop Bob Puff I)}f you like this program, be sure to look for the following graphics programs: APACVIEW The GIF decoder/)}viewer program mentioned above. Displays GIF pictures in 256 color APAC mode, or con)}verts them to 64 or 4096 color COLRVIEW files. Look for version 2.4 (new). )} ILBMREAD Decoder/viewer for Amiga IFF picture files. Converts them to 256 color APAC mode for viewing)} and saving. Look for version 2.1. COLRVIEW V2.6 Docum)}entation page 4 DEGASRD Decoder/viewer for Atari ST Degas picture files. )} Displays all Degas modes directly in COLRVIEW or monochrome. Look for version 1.1 (new). )} APACSHOW Slide show program for APAC mode pictures created with either APACVIEW or )}ILBMREAD. Look for version 2.3. GIFNCODE Encodes your Micro-Painter, Micro Illustrator (Koal)}a or Atari Touch Tablet), or Gr.8 picture files into GIF for viewing on other compute)}rs or uploading to other computer Bulletin Board Systems. )}COLRVIEW is a shareware product. If you use and enjoy this program, please express your satisfaction with a letter and )}the $8.50 registration fee (registration through CompuServe Shareware Registration (GO SWREG) or via a GEnie Gift o)}f Time are both encouraged). In return you will receive an autographed, registered copy of the most recent version)}, with printed documentation. I can also arrange to notify you (via electronic mail or otherwise) when a new versi)}on of this program is available. Registered owners can receive the next version for a nominal fee to cover materials an)}d postage. Registering also encourages me to create enhancements to this program, and to create other Atari 8-bit )}software. It would also help pay some of my bills on the pay services, providing support and seeking feedback. If)} you haven't noticed, the market for Atari 8-bit software has diminished such that large commercial software houses )} cannot justify producing new releases. So I encourage all 8-bit users of shareware to register and support the remaini)}ng small software developers. Your comments are welcome on this program. I can be reached at the follow)}ing address: Jeff Potter 814 Banbury Dr. )} Port Orange, FL 32119 Or on the following pay services/BBSes: )} GEnie: JDPOTTER CIS: 74030,2020 Computer World BBS: (716)247-8355 )} All company and product names are trademarks or registered trademarks of their respective companies. )} "The Graphics Interchange Format(c) is the Copyright property of CompuServe Incorporated. GIF(sm) is a Ser)}vice Mark property of CompuServe Incorporated." COLRVIEW V2.6 Documentatio)}n page 5 Easy-response letter: mail to: Jeff Potter )} 814 Banbury Dr. Port Orange, FL 32119 Jeff, )} I used your COLRVIEW program on my Atari ________ computer. I found that the colors did( )/sorta did( )/did not()} ) look correct on my monitor (which is a ___________________). I own a ____________ disk drive, which operates in)} SSSD( ), SSED( ), SSDD( ), DSDD( ). I rate this program in the following ways: )} Excellent Good Fair Poor Color Fidelity ( ) ( ) ( ) ( ) )} Sharpness ( ) ( ) ( ) ( ) Ease of Use ( ) ( ) )}( ) ( ) I use the following bulletin board/pay services: ____________________________________)}__________________________________ Phone Number (if BBS): ____________________ I would be interest)}ed in receiving upgrades to this program( ). Comments: ___________________________________________)}___________________________ ______________________________________________________________________ ________________)}______________________________________________________ _________________________________________________________________)}_____ ______________________________________________________________________ ______________________________________)}________________________________ My name and address are: ________________________________________)}______________________________ ______________________________________________________________________ _____________)}_________________________________________________________ )} __________________________________________ (1000 ; DISP_RGB1010 ; by Clay Halliwell1020 ; -----------------1030 ; USR(16384,mode)1040 ;1050 ; System Equates1060 SE-}TVBV=$E45C1070 XITVBV=$E4621080 WSYNC =$D40A1090 HPOS0 =$D0001100 HPOS1 =$D0011110 SIZEP0=$D0081120 SIZEP1=$D0091130 G-}RAFP0=$D00D1140 GRAFP1=$D00E1150 COLPF0=$D0161160 COLPF1=$D0171170 COLPF2=$D0181180 COLBK =$D01A1190 PRIOR =$D01B1200 -}KBCODE=$D2091210 IRQEN =$D20E1220 NMIEN =$D40E1230 VDSLST=$02001240 PCOLR0=$02C01250 PCOLR1=$02C11260 POKMSK=$00101270-} ;1280 ; Variables1290 PAGE =2031300 LINES =2041310 MODE =2051320 COUNT =2061330 ;1340 ; Constants1350 DLIST =32822-}1360 LMS1 =328271370 LMS2 =329231380 ;1390 *=$40001400 ;1410 ; INIT VBI1420 ;1430 PLA1440 PLA1450 PLA1460 S-}TA MODE1470 ;1480 LDY #VBI&2551490 LDX #VBI/2561500 LDA #71510 JSR SETVBV1520 ;1530 ; INIT DLI1540 ;1550 LDA MO-}DE1560 CMP #151570 BNE MODE91580 LDA #DLI2&2551590 STA VDSLST1600 LDA #DLI2/2561610 STA VDSLST+11620 LDA #6516-}30 JMP SETUP1640 MODE91650 LDA #DLI&2551660 STA VDSLST1670 LDA #DLI/2561680 STA VDSLST+11690 LDA #1921700 SETUP-}1710 STA COUNT1720 STA LINES1730 LDA #0 ; disable IRQs1740 STA IRQEN1750 STA POKMSK1760 LDA #192 ; e-}nable DLIs1770 STA NMIEN1780 ;1790 LDA #48 ; mod disp list1800 STA DLIST1810 LDA #2401820 STA DLIST+21830 -} LDX #21840 MODLOOP1850 LDA DLDATA,X1860 STA DLIST+199,X1870 DEX1880 BPL MODLOOP1890 ;1900 LDA #0 ; setup-} p/m1910 STA PCOLR01920 STA PCOLR11930 LDA #2551940 STA GRAFP01950 STA GRAFP11960 STA SIZEP01970 STA SIZEP1198-}0 LDA #161990 STA HPOS02000 LDA #2082010 STA HPOS12020 RTS2030 ;2040 DLDATA2050 .BYTE $01,$50,$7F2060 ;2070 VB-}I2080 LDA KBCODE2090 CMP #562100 BEQ DONE2110 LDX PAGE2120 DEX2130 BPL FLIP2140 LDX #22150 FLIP2160 STX PAGE-}2170 LDA PADR1,X2180 STA LMS12190 LDA PADR2,X2200 STA LMS22210 DONE2220 LDA COUNT2230 STA LINES2240 JMP XITVBV-}2250 ;2260 PADR12270 .BYTE $81,$61,$412280 PADR22290 .BYTE $90,$70,$502300 ;2310 DLI2320 PHA2330 TXA2340 PHA2-}350 LDX PAGE2360 LOOP92370 LDA COLTAB9,X2380 STA WSYNC2390 STA COLBK2400 NEXTLINE2410 DEX2420 BPL DECLINE2430 -}LDX #22440 DECLINE2450 DEC LINES2460 BNE LOOP92470 LDA #0 ; text line2480 STA WSYNC2490 STA PRIOR2500 ST-}A COLBK2510 STA COLPF22520 LDA #142530 STA COLPF12540 ;2550 PLA2560 TAX2570 PLA2580 RTI2590 ;2600 ; Color Ta-}ble2610 COLTAB92620 .BYTE 48,192,1122630 ;2640 DLI22650 PHA2660 TXA2670 PHA2680 TYA2690 PHA2700 LDA PAGE271-}0 BEQ RED2720 CMP #12730 BEQ GREEN2740 ;2750 BLUE2760 LDA #1162770 LDX #1222780 LDY #1262790 STA WSYNC2800 S-}TA COLPF02810 STX COLPF12820 STY COLPF22830 ;2840 GREEN2850 LDA #1962860 LDX #2022870 LDY #2062880 STA WSYNC28-}90 STA COLPF02900 STX COLPF12910 STY COLPF22920 ;2930 RED2940 LDA #522950 LDX #582960 LDY #622970 STA WSYNC29-}80 STA COLPF02990 STX COLPF13000 STY COLPF23010 ;3020 DEC LINES3030 BNE BLUE3040 ;3050 LDA #0 ; text lin-}e3060 STA WSYNC3070 STA COLPF23080 LDA #143090 STA COLPF13100 ;3110 PLA3120 TAY3130 PLA3140 TAX3150 PLA31-}60 RTISTA WSYNC3070 STA COLPF23080 LDA #143090 STA COLPF13100 ;3110 PLA3120 TAY3130 PLA3140 TAX3150 PLA31,1000 ; RGB_EXPAND1010 ; by Clay Halliwell1020 ; -----------------1030 ; USR(addr,indev#,width,height)1040 ;1050 ; O.S. E1}QUATES1060 ICCOM=$03421070 ICBAL=$03441080 ICBAH=$03451090 ICBLL=$03481100 ICBLH=$03491110 CIOV =$E4561120 FR0 =$00D41}1130 SAVMSC=$581140 ;1150 GETCHR=$071160 BUFFER=$06001170 ;1180 ; VARIABLES1190 INDEV=2181200 COUNT=2191210 SNDEX=221}01220 INDEX=2211230 XCOR =2221240 YCOR =2231250 BYTE =2241260 NSTAT=2251270 TYPE =2261280 STACK=2271290 ADDR =228 1} ; 2 bytes1300 SCADDR=230 ; "1310 WIDE =2321320 HIGH =2331330 PIX =234 ; 3 bytes1340 ;1350 *=$5F501361}0 ;1370 PLA1380 PLA1390 PLA1400 ASL A1410 ASL A1420 ASL A1430 ASL A1440 STA INDEV1450 PLA1460 PLA1470 S2}TA WIDE1480 PLA1490 PLA1500 STA HIGH1510 ;1520 LDA #01530 STA XCOR1540 STA YCOR1550 STA NSTAT1560 STA SNDEX2}1570 STA INDEX1580 ;1590 LDA #$50 ; screen address1600 STA ADDR1610 STA SCADDR1620 LDA #$411630 STA ADDR+12}1640 ;1650 TSX1660 STX STACK ; save RTS addr1670 ;1680 MAINLOOP1690 JSR GETCOUNT1700 LDA TYPE1710 BNE LITERA2}L1720 JSR GETRGB1730 REPDATA1740 JSR PLOTRGB1750 DEC COUNT1760 BPL REPDATA1770 JMP MAINLOOP1780 ;1790 LITERAL182}00 JSR GETRGB1810 JSR PLOTRGB1820 DEC COUNT1830 BNE LITERAL1840 JMP MAINLOOP1850 ;1860 PLOTRGB1870 LDA PIX1880 2} JSR PLOT1890 LDA PIX+11900 JSR PLOT1910 LDA PIX+21920 JSR PLOT1930 JSR BUMPCURSOR1940 JSR INCSCREEN1950 RTS192}60 ;1970 INCSCREEN1980 DEC SNDEX1990 BPL IDONE2000 LDA #22010 STA SNDEX2020 IDONE2030 RTS2040 ;2050 PLOT2060 2}PHA ; save pixel2070 JSR INCSCREEN2080 CLC2090 LDX SNDEX2100 LDA OFFSET,X2110 ADC ADDR+12120 STA SCADD2}R+12130 ;2140 LDA XCOR2150 LSR A ; /2 *and*2160 TAY ; determine2170 BCS ODDPIX ; odd/even!22 }180 PLA2190 TAX2200 LDA SHFTAB,X2210 STA (SCADDR),Y2220 RTS2230 ODDPIX2240 PLA ; retrieve2250 ORA (S2 }CADDR),Y2260 STA (SCADDR),Y2270 RTS2280 ;2290 BUMPCURSOR2300 CLC2310 LDA ADDR2320 ADC #402330 STA ADDR2340 ST2 }A SCADDR2350 BCC CHKY2360 LDA ADDR+12370 ADC #02380 STA ADDR+12390 ;2400 CHKY2410 INC YCOR2420 LDA YCOR2430 C2 }MP HIGH ; at bottom?2440 BNE BDONE2450 INC XCOR2460 LDA XCOR2470 CMP WIDE ; at far edge?2480 BNE NEWCOL2 }UMN2490 LDX STACK2500 TXS2510 RTS2520 ;2530 NEWCOLUMN2540 LDA #02550 STA YCOR2560 LDA #$502570 STA ADDR2580 2} LDA #$412590 STA ADDR+12600 BDONE2610 RTS2620 ;2630 GETCOUNT2640 JSR GETNYB2650 TAX2660 AND #82670 STA TYPE22}680 TXA2690 AND #72700 BEQ BIGCOUNT2710 STA COUNT2720 RTS2730 BIGCOUNT2740 JSR GETNYB2750 CLC2760 ADC #727702} STA COUNT2780 RTS2790 ;2800 GETRGB2810 JSR GETNYB2820 STA PIX2830 JSR GETNYB2840 STA PIX+12850 JSR GETNYB2862}0 STA PIX+22870 RTS2880 ;2890 GETNYB2900 LDA NSTAT2910 BNE LOW2920 LDA #12930 STA NSTAT2940 JSR GET2950 LSR 2}A2960 LSR A2970 LSR A2980 LSR A2990 RTS3000 LOW3010 LDA #03020 STA NSTAT3030 LDA BYTE3040 AND #$0F3050 RTS2}3060 ;3070 GET3080 LDY INDEX3090 BEQ FILLBUFF3100 FETCH3110 LDA BUFFER,Y3120 STA BYTE3130 INC INDEX3140 RTS312}50 FILLBUFF3160 LDA #GETCHR3170 LDX INDEV3180 STA ICCOM,X3190 LDA #03200 STA ICBAL,X3210 STA ICBLL,X3220 LDA #62} ; buffer @ $06003230 STA ICBAH,X3240 LDA #13250 STA ICBLH,X3260 JSR CIOV3270 LDY #03280 JMP FETCH3290 ;2}3300 OFFSET3310 .BYTE $00,$20,$403320 SHFTAB3330 .BYTE 0,16,32,48,64,80,96,1123340 .BYTE 128,144,160,176,192,208,224,2}2400 OFFSET3310 .BYTE $00,$20,$403320 SHFTAB3330 .BYTE 0,16,32,48,64,80,96,1123340 .BYTE 128,144,160,176,192,208,224,0