@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@W!( 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`  `8  ɐ     `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.D8:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D8: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 ALLOWED697 FREE SECTORS COPYING---D8:COPY32.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- 164ɛ+,' 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 D8u05  15 2 2151^116115ύ011$r2ԭ5 3)5)5ԭx GT}@@L00)+& 2 L0=ɛ -L!1LV1L1 /3 3ȹ441L-4 v3 25 2H 2h͔5U}L3L3 2 k3U hh`DOC`QL3P1Lk0S1H /3h0B k3@ VL0LU!#$53 1181118V}1111Ε5 1Lk0552 1Ȍ1i111i11115Lk0pppB4f5&&&&&&&&^6f^6&&&&&W}&&A1@BJ D2ELVK@BHILV^Щ6 2BD2EJ VBD5EHI0 V0%5X}5 2iХiL[2 25 25`D:*.*` i@`8 ``@i `8@`0 BLV525<4Y}5`HH i ԍΗ552 ԍhh@ Lح1Э1Ѣ 24.4 24Z}4`D4E` 2BJ k3LVRH` 2BD4EhK)I JLV333 BASIC languag i}e OBJ > MACHINE language DOC > DOCumentation PIC|MIC|FNT|MVM > Graphics AMS|MUS|MBD > Music LST j} > BASIC LISTing -Some MACHINE language programs can only be run by booting the disk MENU "without" BASIC! -For s k}ome programs, XL/XE models may require a "TRANSLATOR" program to be booted first! [Also available from BELLCOM] - l}Most programs are relatively self-explanatory; however, some have separate DOCumentation files available. Some BASIC m} programs may contain instructions in their program listings. -To use this great MENU program on your own disks, n}simply copy the file "AUTORUN.SYS" onto your disk. * MENU written by DAVID CASTELL * program on your own disks, ^ Instructions for the ICON SHOP ____________________ Copyright 1986 Gregp}g Tavares The Night-Hawk Group ____________________ The ICON SHOP was designed to make up for the deffiq}ciencies in the graphic editor included with the PrintShop. It was also designed to allow the user to save PrintShop r}graphics in a DOS 2.0 compatible format so that the user's creations may be traded with other users' creations, especs}ially over a modem. DIAGRAM -------o---------------o o--o o--o o--o o--o! ! !1t} ! !2 ! !3 ! !4 !! ! o--o o--o o--o o--o! ! o--o o--o o--o o--o! ! !5 ! !6 ! !7 u}! !8 !! Graphic ! o--o o--o o--o o--o! ! o--o o--o o--o o--o! ! !9 ! !10! !11! !12!! v} ! o--o o--o o--o o--o! ! o--o o--o o--o o--o! ! !13! !14! !15! !16!! w} ! o--o o--o o--o o--o! ! o--o o--o o--o o--o! ! !17! !18! !19! !20!o---------------o o--o o--x}o o--o o--oo-----------------------------------o! 21 ! 22 ! 23 ! 24 ! 25 !o-----------------------------------oy} 26 See Diagram above. 1-8) These are the colors and patterns you may draw with. Point to the onez} you want to use and press the button (or a key 1-8). A blue frame will appear around the color. Colors 3-8 are patt{}erns. They may be used just like the first to colors. If you don't like the ones included with the ICON SHOP you may e|}dit them. First, point to the one you want to edit. If the blue frame is not around that pattern then press the butto}}n. Now, point to a dot in the pattern and press the button. That dot will change to white if it was black, or to black~} if it was white. To save your patterns, insert a DOS 2.0 disk and press [CTRL]-W. Type a legal DOS 2.0 filename and} press Return. To load patterns you have previously saved press [CTRL]-R. 9) (D)raw-Point on the graphic to where y}ou want to change a dot to the selected color and press the button. 10) (L)ine-Point to where you would like to star}t a line and press the button. Point to where you would like the line to end and press the button. 11) (R)ectangle-}Point to where you would like one corner of a rectangle and press the button. Point to where you would like the oppo}site corner and press the button. 12) (B)ox-Point to where you would like one corner of a box and press the button. } Point to where you would like the opposite corner and press the button. 13) (O)val-Point to where you would like th}e center of an oval and press the button. Move the pointer away from the center of the oval until you have the size }and shape you want, then press the button. 13) (Q)Disc-Point to where you would like the center of a disc and press }the button. Move the pointer away from the center of the disc until you have the size and shape you want, then press } the button. 14) (F)ill-Point to an area you would like to fill and press the button. If the fill gets stuck press [}ESC] (This only happens occasionally if the mirrors are on). 15) (C)apture-Point to one corner of the area you would} like to capture and press the button. Point to the opposite corner of the area and press the button. A new rectang}le will appear. Move the new rectangle to the area where you would like to put what you have captured and press the }button. (Also see 20-Capture options) 16) (M)irrors-Point to the vertical line and press the button to toggle the v}ertical mirror on or off. Point to the horizontal line and press the button to toggle the horizontal mirror on or of}f. Mirrors affect ALL functions (Including LOAD and VIEW). The Fill function may go into an infinite loop with the mi}rrors on (Press [ESC] to interrupt the Fill function). 17) (T)Plot type. Point to a letter and press the button to }set the plot type. (Affects ALL functions INCLUDING LOAD & VIEW). N=Normal-Replace the dot under the point}er with the selected color. A=ANDed -Logically AND the color under the pointer with the s}elected color. Black AND Black = Black Black AND White = Black White AND White = White O}=ORed- Logically OR the color under the pointer with the selected color. Black OR Black = }Black Black OR White = White White OR White = White X=Exclusive ORed-Logically Ex}clusive OR the color under the pointer with the selected color. } Black AND Black = Black Black AND White = White White AND White = Black (Try setting it to X}. Select white as your color and draw some boxes that partially overlap) 19) (U)ndo & (Clear). Point to undo and p}ress the button to undo the last change made to the graphic. Point to clear to clear the graphic. 20) Capture Option}s. First surround an area using the capture function then point to one of these options. (I)nvert captured area, }(H)orizontally flip captured area, (V)ertically flip captured area. 21) Load-Pointing the to top of the screen will mo}ve toward the top of the list. Pointing near the bottom of the screen will move toward the bottom of the list. Poin}t to file you want to load and press the button. (Point on the edge or press [ESC] to abort.) 22) Save-Point to the }file you would like to replace or type a new filename. 23) View-Point to all the graphics you would like to view the}n press on the edge of the screen to start viewing. 24) Convert-This function allows you to copy graphics from a P}rintShop format disk or a DOS 2.0 disk to a PrintShop format disk or a DOS 2.0 disk. Type the numbers of the drives yo}u are going to use. If your destination disk is a DOS disk you must supply a filename to save the graphic(s) under. } It is suggested that you use the extension .ICS for your ICON SHOP files. Files in DOS 2.0 format are saved as follow}s. 520 byte graphic 16 byte name (520 byte graphic 16 byte name)... 25) Format-Allows you to format disks comapatib}le with the PrintShop or DOS 2.0. COMMAND LIST ------------ The following keys may be pressed} for short cuts: 1-8 = select a color D = Draw L = Lines R = Rectangles B = Boxes O = Ovals Q = Discs F =} Fill area C = Capture area M = Cycle through mirrors T = Cycle through plot types U = Undo last change SHIFT-CLE}AR = Clear graphic I = Invert captured area H = Horizontally flip captured area V = Vertically flip capptured ar}ea CTRL-L = Load CTRL-G = Get (Same as load) CTRL-S = Save (PrintShop disks only) CTRL-P = Put (Same as s}ave) CTRL-V = View CTRL-C = Convert CTRL-F = Format CTRL-R = Read Patterns (Dos disks only) CTRL-W = Wri}te Patterns (Dos disks only) Most functions can be aborted by pressing [ESC]. If ANYTHING is displayed in }the bottom of the screen, a key or the button must be pressed. *[PrintShop is a trademark of Br0derbund Software]} ----------------------------------- THE FOLLOWING IS FOR ADVANCED USERS ----------------------------------- ICON SHOP }is setup to use any type of controller one desires. All that is needed is a driver for that controller. To do this, ma}ke a driver less then 1024 bytes long with it's entry point at $3000. The routine will be called at Vertical Blank a}nd will be passed the current X and Y positions in X and Y. The current button status will be passed in A. The rout}ine must return the new position in X,Y and the new button value in A. X must be a number from 0-159 Y must be a num}ber from 0-191 A must have a value of 0 or 1 1=button NOT pressed 0=button pressed. Make sure your file has }the extention ".OBJ" then copy it to your ICON SHOP disk and it will appear on the first menu. The source files for }the drivers that came with ICON SHOP are included on the disk. They were written for the Atari Macro Assembler. Fee}l free to improve on what's there or use it in other programs. NOTE:The last line of each source says " END INIT". }Drivers are loaded just as if you used the L option (Binary Load) from the DOS 2.0 menu. This means that INIT address}es and RUN addresses WILL be called if there is one in the file. "IT IS EXACTLY THE SAME AS BINARY LOAD FROM DOS 2.0".} Use this to your advantage to initialize variables or set up interrupts and in the mouse driver. PAGE 0 from $A0 }to $FF is free. ----------------------------------- NOTE: Driver files for Joystick, Mouse, and Koala Pad are } included with the ICON SHOP program file.NOTE: Driver files for Joystick, Mouse, and Koala Pad are 9, ө jB*DELVE: ~!`BD"EJK Vl01}  ! ! `!" !" 1""i@ ! !""" !"" !LU !BD"EJK V"i@"} ! ! L A""iA""8@" ! `!H !h" ! !" " ."BD"EJK} V  !BD"EJK VLBD"EJKLV` BLVH` BHIhLV"" }!ɛ """`BHILV !! !`!o"!"r"" 󛍍} This program is in thePublic Domain.> choose a controller (A-A)D:PGRAPHS.COMD:*.}OBJS:K:D: Public Domain.> choose a controller (A-A)D:PGRAPHS.COMD:*.!@@pppB@B*@BR@BABBBz@A@厀􀀀}}@Aဤ倀}Ҭ}ҳABҶң}ҷҰҲҰ}嚀BBPP4惥@񺎕9 B VB`DEJK V` B V`B^D}EJK VBU01ʱO80919X9Y9 ~ .X B}P44ԩ}Щ>/o]\ \ (l T3< QPQ 3< |R9 ~ | '|49493<4 LOQ LOQ43<ZQMQsQNQ }WLQvvvvvvvvp ,dsQQQQQQQQRRRRRRRRTTQUwx{xu4ɍL|L.X3<i͟9'H98 $~h93< $~ B}}L~LdR43<. ]9̦9199 S999 44LS Rc99ST99 1T`914 ^e4999 44L'T Rc99L1T`}9LjeLhG8 MTLf989989989989`4ݛTݜT`99Ti"{9v9`9ɋɏ mR}4I49dh mR4I4UT4)T4)UTDU4 ^eT jkL~efbi99` mR99L}_Ld_L@_`3f2 ߼![sUnVGUHUIUEUJUGUHU V?U VIUʭ@U VAU VGUHU V?U V V VFU@UJUI}UAUFUɛ 3JULVHIU JU0KUh VEUJU`~"JUJU V?U V V V VLU}ɜLU JU}EIU@U V?U V VLVFUCU$oVjWDU@,JU FUA [IULUFU I8 V?U V VJUJUFUJULUHBUUTh`}h` V BHIV VLVVVV`` VBHI VH Vh`' V9VW͘9iL*W`}HȱTWȱUWhLU|}.X1"X2"X3"X4kWfX"X5"X6"X7"X8"XD (XL (XR (XB (XO (XQ(XF(XC(X-W=W+W*WIXHXVXM}XTWsudxdx ,w,wx{wwm44`m4ɠ4`99)9LT44)4LT9L U3rint Shop Disk oFORMAT Drive 1 [Print Shop Di}skFORMAT Drive 1 [DOS Diskos DiskGAGAGAGA _ZZ[ Source Drive(1,2...Destination Drive(1,2...Source Driv}e: Destination Drive:Insert Source Disk, Press a keInsert Destination Disk, Press a keInsert Both Disks, Press a k}e Loading Saving Load IncompletAbort? (Y/NEnter New [[V\Name Conversion Complete Press Any KeyFormattin }Finished FormattingCan't use the "PrintShop" dis Must be a DOS disI/O ERROR BREAK Abor Bad Drive Numbe Drive n}ot respondin Disk Write ProtecteBad FilenamFile LockeSystemW\R] Erroةy9݃9~9݈9699~99}G]M]A]9y99t9iiiL\t9Ɖ444 04 44M4449($} Zi-t9D^iy9~9L>]i0t9i y9~9LbS\d]]]]]]S]N^`x><} @@ @@998h8i]`` } !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333O^J_  ###&&&))),,,///}222555888;;;>>>AAADDDGGGJJJMMMPPPSSSVVVYYY\\\___bbbeeehhhkkknnnqqqtttwwwzzz}}}99 ]9}999 aL~9 ]'<(< LaL~ a B} .`'<(<99)<*<99 _L~ a B} .`K_F`99998+<+< _L~ a B} .}`99998,<,< _L~ a B}994444 ^e99 hL~ R99999B9b9 hh4`4 ^e}4 sa'<(<44)<*8?8@8 f gA8B8?8@8 g g99 `;8 g=8<8 g>8=8>8`;8 gA8<8 gB8A8B8`'4(4}C8m?8D8+g&hm@8 gC8m'4D8m(4 jeC88?8D8m@8 gC88'4D8m(4 jeC8m?8D88@8 gC8m'4D88(4} jeC88?8D88@8 gC88'4D88(4Lje9LRc44`49 XhYhL h49 lhmh444 }4 4 4N4 'h"i4m4 4 4m4 4 4m4 44.4.4ӭ 4N 4jN 4j`Y ^KwGo9p944q9}r9o94 jeo9p9 jeq9p9 jeq9r9Ljeo9p94q94r9r9s9q9r9 Rco9r9 jer9p9 r9ms9r9Lh`'4Ȍ(4 Vk)4}*4+4,4-4.4/4#ij'4(4 Vk)4(4L"i(404'4(4 ek'4(4 Vk14.414)43(424.4Li14)4'4ʎ44(45424}6474 j.4'4(4 Vk14/414)43(434/4Li14)4'444(454346474 j/4'4(4 Vk)4(4L=i.4'4ʎ44}(454246474 j/4'4jk44(454346474 j*484c84;4'4S(4Ș;5I04;6=84*4294*4:494<4;4<}5;5<6;6<7;79494:4*484Н*4`;4'4};7+4;5(4,4;6-4*4Li44+4"64,4 -464`54,4 -454`*484}684;4};744"64;5 ;664`kl54;5 ;654`84ʭ*4*4*444;464;554;674;7`ʈLdhh`ʈLRc k}"',16;E` l RcLk l jeLk l hLk l hLk k4Lk l fLk lG8 fLk5<6< l5<6?@@A01BBCDEEFGGHIJJKLLMNOOPQQRSTTUVVWXYYZ[[\]^^_``abccdeefghhijjklmmnoopqrrsttuvwwxyyz{||}~~!-}  !!"#$%&''()*+,--./012334567899:;<=>??@ABCDEEFGHIJKKLMNOPQQRSTUVWWXYZ!.}[\]]^_`abccdef1_2ghiijklmnoopqrstuuvwxyz{{|}~!/}0]^_`abccdef1_2ghiijklmnoopqrstuuvwxyz{{|}~ 000M̟0Hm0000ɠ 0ɠ0m0000 00000000`Ӎ000x%1}0X ҩҩҍ `01HHxBVԭӍ00 M0) 00M00J 0) 010000J0JΝ0J0JΜ0%2}Xhhh@  d01HHxBVԭӍ00 M0) 00M00J 0) 010000J0JΝ0J0JΜ0$!;------------------------------------;; ATARI Mouse Driver; written by Bernhard Engl; modified by Gregg Tavares;;----)4}--------------------------------PMBASE = $D407COLOR3 = $02C7GPRIOR = $026FPORTA = $D300SDMCTL = $022FGRACTL = $D01DH)5}POSM0 = $D004STRIG0 = $0284NMIEN = $D40EVDSLST = $0200SDLSTL = $0230SDLSTH = $0231ICSPRZ = $2CVCOUNT = $D40BDMACTL =)6} $D400SETVBV = $E45CXITVBV = $E462POKMSK = $10VTIMR1 = $210IRQEN = $D20EAUDC1 = $D201AUDF1 = $D200STIMER = $D209)7}CRITIC = $42 ORG $3000 CPX XPOS ;Has X been BNE KEYPRESSED ;changed? CPY YPOS ;)8}Has Y been BNE KEYPRESSED ;changed?* No, so add changes. TXA CLC ADC XADD STA XPOS )9} LDX XADD BMI XMINUS CMP #160 BCC XOKAY LDA #159 BNE XNOTOKXMINUS LDA XPOS ):} CMP #160 BCC XOKAY LDA #0XNOTOK STA XPOSXOKAY TYA CLC ADC YADD STA YPOS);} LDY YADD BMI YMINUS CMP #192 BCC YOKAY LDA #191 BNE YNOTOKYMINUS LDA YPOS )<} CMP #192 BCC YOKAY LDA #0YNOTOK STA YPOSYOKAY LDX XPOS LDY YPOSKEYPRESSED )=}LDA #0 STA XADD STA YADD STX XPOS STY YPOS LDA STRIG0 RTSINIT;; get old input;)>} LDA PORTA STA OLPORT LDA #0 STA XADD STA YADD SEI LDA #LOW READMOUSE )?} STA VTIMR1 LDA #HIGH READMOUSE STA VTIMR1+1 CLI LDA POKMSK ORA #1 STA POKMSK )@} STA IRQEN LDA #0 STA AUDC1 LDA #255 STA AUDF1 STA STIMER RTS;; variables;MOUS)A}EX DS 1MOUSEY DS 1OLPORT DS 1OLBUTT DS 1PRTEMP DS 1MOTEMP DS 1MOMOVE DS 1XADD DS 1YADD DS 1XPOS DS 1YPOS DS)B} 1;;------------------------------------;; TIMER: track mouse; movement and update position;;-------------------------)C}-----------READMOUSE TXA PHA TYA PHA; SEI LDA CRITIC BNE BADNEWS LD)D}A #0 STA NMIEN LDA PORTA STA PRTEMP LDA OLPORT ASL A EOR PRTEMP AND #$0A )E} STA MOMOVE LDA OLPORT EOR PRTEMP STA MOTEMP LSR A ORA MOTEMP AND #5 ORA )F}MOMOVE TAX LDA MOVTAB,X STA MOMOVE LDA PRTEMP STA OLPORT; LDA MOMOVE ;Get stic)G}k value LSR A ;Check up. BCS NOTUP INC YADDNOTUP LSR A ;Check down. BCS)H} NOTDOWN DEC YADDNOTDOWN LSR A ;Check left. BCS NOTLEFT INC XADDNOTLEFT LSR A )I} ;Check right. BCS NOTRIGHT DEC XADDNOTRIGHT; LDA #$C0 ; enable DLI & VBI STA NMIENBA)J}DNEWS CLI PLA TAY PLA TAX PLA RTI;; movement translation table;MOVTAB )K} DB 0,4,0,8,1,5,1,9 DB 0,4,0,8,2,6,2,10 END INIT LDA STRIG0 ;Read button. RTSCNTR )L}DS 1RESET DS 1INIT RTS END INIT END INIT LDA STRIG0 ;Read button. RTSCNTR (5******* Controller routines.* This one is for a JOYSTIK. This* routine may be changed for any* type for controller-N}. Values* returned must be-* X reg = X position of cursor* (must not be higher than* 159)-O}* Y reg = Y position of cursor* (must not be higher than* 191)* A reg = 0 = button pressed*-P} 1 = button not pressed** Previous values are passed TO this* routine in the same manner.******** Equates-Q} for joystick controller.*STICK0 = $278STRIG0 = $284** ORIGIN MUST BE AT $3000* ORG $3000CONTROLLER LD-R}A STICK0 CMP #15 BNE ACCELERATE LDA #16 STA RESET LDA #1 STA CNTRACCELERATE -S} DEC CNTR BPL NOTRIGHT LSR RESET LDA RESET STA CNTR LDA STICK0 ;Get stick value -T} LSR A ;Check up. BCS NOTUP CPY #0 ;Don't move up BEQ NOTUP ;if already at -U} ;top. DEYNOTUP LSR A ;Check down. BCS NOTDOWN CPY #191 ;Don't mov-V}e down BEQ NOTDOWN ;if already at INY ;bottom.NOTDOWN LSR A ;Check left. -W}BCS NOTLEFT CPX #0 ;Don't move left BEQ NOTLEFT ;if already at DEX ;left edge.NOT-X}LEFT LSR A ;Check right. BCS NOTRIGHT CPX #159 ;Don't move right BEQ NOTRIGHT ;if -Y}already at INX ;right edge.NOTRIGHT LDA STRIG0 ;Read button. RTSCNTR DS 1RESET DS -Z} 1INIT RTS END INITht edge.NOTRIGHT LDA STRIG0 ;Read button. RTSCNTR DS 1RESET DS ,$PADDL0 = $270PADDL1 = $271STICK0 = $278 ORG $3000 STX XPOS STY YPOS LDA PADDL0 1\}CMP #3 BEQ XNOTPRESSED LDA PADDL0 SEC SBC #3 TAX LDA XSMOOTH,X STA X0 1]} SEC SBC X2 JSR ABS CMP #4 BCC XOKAY LDA X0 SEC SBC X1 JSR ABS 1^} CMP #4 BCS XBADXOKAY LDA X0 STA XPOSXBADXNOTPRESSED LDA PADDL1 CMP #3 BEQ YNO1_}TPRESSED LDA PADDL1 SEC SBC #3 TAX LDA YSMOOTH,X STA Y0 SEC SBC Y2 1`} JSR ABS CMP #4 BCC YOKAY LDA Y0 SEC SBC Y1 JSR ABS CMP #4 BCS Y1a}BADYOKAY LDA Y0 STA YPOSYBADYNOTPRESSED LDA X1 STA X2 LDA X0 STA X1 LDA1b} Y1 STA Y2 LDA Y0 STA Y1 LDX #1 LDA STICK0 CMP #15 BEQ NOPRESS LDX #1c}0NOPRESS TXA LDX XPOS LDY YPOS RTSINIT RTSABS BPL ARTS EOR #$FF CL1d}C ADC #1ARTS RTSXSMOOTH DB 0,1,1,2 DB 3,4,4,5 DB 6,6,7,8 DB 9,9,10,11 1e} DB 11,12,13,14 DB 14,15,16,16 DB 17,18,19,19 DB 20,21,21,22 DB 23,24,24,25 DB 26,261f},27,28 DB 29,29,30,31 DB 31,32,33,34 DB 34,35,36,36 DB 37,38,39,39 DB 40,41,41,42 1g} DB 43,44,44,45 DB 46,46,47,48 DB 49,49,50,51 DB 51,52,53,54 DB 54,55,56,56 DB 571q}-B%DOS SYSB*)DUP SYSB SAUTORUN SYSB_HELP DOCBJoICONSHOPDOCBICONSHOP BiPGRAPHS COMB)JOYSTIK OBJB*KOALAPADOBJB0MOUSE OBJB3MOUSE DOCBMJOYSTIK DOCB![KOALAPADDOCBTIGER PSFBENGINE PSFBCOALCAR PSFBBOXCAR PSFBLOGCAR PSFBCABOOSE PSF,58,59,59 DB 60,61,61,62 DB 63,64,64,65 DB 66,66,67,68 DB 69,69,70,71 DB 71,72,73,741r} DB 74,75,76,76 DB 77,78,79,79 DB 80,81,81,82 DB 83,84,84,85 DB 86,86,87,88 DB 1s} 89,89,90,91 DB 91,92,93,94 DB 94,95,96,96 DB 97,98,99,99 DB 100,101,101,102 DB 103,11t}04,104,105 DB 106,106,107,108 DB 109,109,110,111 DB 111,112,113,114 DB 114,115,116,116 1u} DB 117,118,119,119 DB 120,121,121,122 DB 123,124,124,125 DB 126,126,127,128 DB 129,129,130,1v}131 DB 131,132,133,134 DB 134,135,136,136 DB 137,138,139,139 DB 140,141,141,142 DB 141w}3,144,144,145 DB 146,146,147,148 DB 149,149,150,151 DB 151,152,153,154 DB 154,155,156,156 1x} DB 157,158,159,159YSMOOTH DB 0,1,2,3 DB 3,4,5,6 DB 7,8,9,9 DB 10,11,12,13 DB 141y},15,15,16 DB 17,18,19,20 DB 21,21,22,23 DB 24,25,26,27 DB 27,28,29,30 DB 31,32,33,331z} DB 34,35,36,37 DB 38,39,39,40 DB 41,42,43,44 DB 45,45,46,47 DB 48,49,50,51 DB 1{} 51,52,53,54 DB 55,56,57,57 DB 58,59,60,61 DB 62,63,63,64 DB 65,66,67,68 DB 69,69,70,1|}71 DB 72,73,74,75 DB 75,76,77,78 DB 79,80,81,81 DB 82,83,84,85 DB 86,87,87,88 1}}DB 89,90,91,92 DB 93,93,94,95 DB 96,97,98,99 DB 99,100,101,102 DB 103,104,105,105 DB 1~} 106,107,108,109 DB 110,111,111,112 DB 113,114,115,116 DB 117,117,118,119 DB 120,121,122,1231} DB 123,124,125,126 DB 127,128,129,129 DB 130,131,132,133 DB 134,135,135,136 DB 137,131}8,139,140 DB 141,141,142,143 DB 144,145,146,147 DB 147,148,149,150 DB 151,152,153,153 1}DB 154,155,156,157 DB 158,159,159,160 DB 161,162,163,164 DB 165,165,166,167 DB 168,169,170,11}71 DB 171,172,173,174 DB 175,176,177,177 DB 178,179,180,181 DB 182,183,183,184 DB 1851},186,187,188 DB 189,189,190,191XPOS DS 1YPOS DS 1X0 DS 1Y0 DS 1X1 DS 1Y1 DS 1X2 1} DS 1Y2 DS 1 END INIT91XPOS DS 1YPOS DS 1X0 DS 1Y0 DS 1X1 DS 1Y1 DS 1X2 0%?|` 83ØC@ | |5}p 0 |0b "b 1GD`0?? 4?χp08x0@D"5} 08 `p?`0(ϣx<G<732x