Home

THE 6502/6809 JOURNAL

image

Contents

1. 5 A 00082 7FB2 20 AS BS DEFALT JSR SEARCH sFIND ADDRESS OF LINE it rebuild the link addresses for us auto 00083 7FBS 90 OC BCC CHECK BRANCH LINE NOT FOUND maticall g After 1 1 1 00084 7FB7 AO OO LDY 00 y this routine 1s called 00085 7FB9 B1 SC LDA ADDRES Y GET FORWARD LINK TO the delete has been performed and the 00086 7FBB AA TAX 3POINT TO NEXT LINE IN in 00087 7FBC C8 INY 3 MEMORY BASIC program is all set to go again ODODU FEED OBI SC LDA ADDRES Y Figure 2 is an assembler listing of 00089 7FBF 86 5C STX ADDRES 00090 7Ft1 85 SD STA ADDRES 1 the BASIC Line Delete program As 00091 7FC3 38 CHECK SEC CHECK TO SEE THAT THE mentioned above the error checking is 00092 7FC4 AS 5C LDA ADDRES START NUMBER IS LOWER the only hard part of the program the 00093 7FC6 ES 59 SBC SAVE THAN THE STOP NUMBER z 48 MICRO The 6502 6809 Journal No 55 December 19 m Commodore EE Figure 2 continued with zeros in 11 and 12 You can con 00094 7FCS AS 5D LDA ADDRES 1 1 1 lt 1 onus MEER riii fip sider this asa default lower line number 00096 7FCC 90 2E BCC BAD 31T S NOT SO ERROR Given a line number routine 00097 7FCE 20 9E DB JSR QUERY 3IT IS LAST CHANCE ill fi i wi 00098 7FD1 BO 21 BCS DONE 3TO CHANGE YOUR MIND SB5A3 l find where TL DAS ONY that 00099 7FD3 AO 00 MOVE LDY 00 BASIC line sits Simply put the desired 00100 7FDS B1 SC LDA ADDRES Y SHIFT BYTES BACK 00101 7FD7 91 59 STA
2. Skill level required An intermediate familiarity with the Apple is necessary Reviewer Chris Williams Product Name Apple Cillin II Equip req d Apple II or Apple II Plus with disk drive 13 or 16 sector Price 49 95 Manufacturer XPS Inc 323 York Road Carlisle PA 17013 Description This diagnostic utility tests RAM and ROM chips the disk system peripheral cards keyboard CRT display printer tape recorder game controls and CPU Continued on next page No 55 December 1982 650 FAS The PTD Lan LOC 7C88 LABL STEP 100 NODISP IF X 3E OR LOCI 17 THEN GOTO LABL PRINT HERE IS THE CULPRIT SHOW lt 100 PTD 6502 is a high speed compiled BASIC like lan guage light years ahead of the Apple Il Single Stepper and far more sophisticated than any other 6502 de bugger available It allows you to sit back effortlessly while your computer glides through your code at a thou sand instructions per second looking for your bugs Or you can select a slower speed with updated display of memory A paddle controlled single stepper mode is also available At either of the slower speeds the PTD 6502 monitors and saves the last 128 instructions executed for review at any time Virtually unlimited breakpoint complexity is per mitted with the PTD 6502 IF statements with mixed AND s and OR s can be created to test conditions such as memory change memory value instruction loca tion and
3. MICRO Bulletin Board MICRO has instituted a sophisticated Bulletin Board Information Service System on our Apple II which will be available to subscribers Monday through Thursday nights from 5 00 PM to 8 00 AM Eastern Time The MICRO Bulletin Board System is using software developed by No 55 December 1982 Computer Stations Inc of Granite City IL and a D C Hayes Associates Inc microcoupler Our telephone number is 617 256 1446 After dialing into the Net Works program a self ex planatory menu is presented The option C hat will not be supported The first time that you log on you will be ex pected to leave your name etc for subscription verification This check will take at least one day You will have only limited access to the system until your name has been verified and added to the queue of valid users Please write down the password that the system assigns to you so that you can use it for future calls A lt ctrl gt S will tem porarily stop the system in case it is scrolling too fast to read Generally new users may read the system but not write to the system until verified We are planning a com munications issue for April with articles on all aspects of computer communications If you have written an article or have any suggestions or criticisms please send them to us here at MICRO A Computer Center A new resource center has been opened in Newton MA to meet the educational and instructi
4. The known bondholders mortgagees and other security holders owning one percent or more of the total amount of bonds mort gages or other securities are none The average number of copies of each issue of this publication sold or distributed through the mails or otherwise to paid subscribers during the twelve months preceding the date shown above is 23 292 I certify that the statements made by me above are correct and complete Signed Robert M Tripp President Editor in Chief MICRO The 6502 6809 Journal 35 debes PEELINGS II Magazine did just that against 9 others And PIE WRITER came out on top rated AA Why Because PIE WRITER does every thing a writer needs done quickly easily and inexpensively If you can type even with just two fingers you ll be working comfortably with PIE within fifteen minutes Begin immediately typing text onto the Screen You can add or delete characters words sentences paragraphs with one simple key stroke Misspellings PIE WRITERS search and replace command corrects the word where you spot it and then makes it correct throughout the entire text be it a paragraph or a million dollar presentation When your document is finished a touch of the key will print out 1 or 99 copies in the format you want neat precise and always accurate ou can start using PIE WRITER on your basic Apple II system the moment you get
5. Z0 3 BY JOHN KRQUT 40 59 0222 60 DELAY FC91 70 3 i 80 START JSR AEGS 90 LDX AF 100 LDA TABLE 1 X 110 STA SAF H 120 LDA 5 120 STA 15 140 MASTER JSR WORD 150 DEC 15 A 160 ENE MASTER 170 RTS 180 190 200 WORD JSR LOGICI 210 LDA AF 220 JSR SEND 220 LDA SAF MICRO The 6502 6809 Journal 10 ASSEMBLY LISTING OF BSR X 10 DRIVER ROUTINE puts arguement in AE AF lookup amp store code word counts data words sent return to Basic send message header bit command code into accumulator send top 5 accumulator hits reload accumulator continued No 55 December 1982 Listing 1 continued 240 EQR 255 3 invert accumulator bits oo JSR SEND 5 send 5 inverted bits 260 LDA 64 270 STA tFOOO 3 begin 16 ms tone 280 LDX 4 STX 15 JSR MS4 DEC 16 BNE LOOF 1 LDA 17 STA Fooo 3 begin 24 ms silence DX 5 STX 154 JSR MS4 DEC 16 ENE LODFZ2 JMF MS4 STA 12 LDA 5 STA 14 3 counter for bits sent 450 ROLL ROL 12 3 place bit in Carry 460 RCC ZERO branch if Carryzo 470 JSF LOGICI send logic 1 480 JMF COUNT 490 ZERO JSF LOGICO send logic O Soo COUNT DEC 14 S10 BNE ROLL branch until S bits sent D RTS da D LDA 44 STA FOOO 3 begin 4 ms tone JSR MS4 LDA 17 STA FOOQ0 3 begin 4 ms silence JMF MS4 500 510 LOGICO LDA 54 620 STA FOOO begin 1 2 ms tone 630 JSR MS1 2 640 LDA 17 b50 STA F000 begin 6 8 ms silence amp 60 J
6. ROL INTO END END 1 GET IF ZERO continued MICRO The 6502 6809 Journal uses the Motorola MC3417 continu ously variable delta modulator demod ulator The Harris HC55516 could also be used but the circuit must be rede signed to account for the fact that the 55516 is a CMOS chip If the computer to be used has an available port with four free bits very few additional com ponents are needed Furthermore none of the components shown on the cir cuit is critical and the values can vary before the quality of the results is degraded Normally the noise and the quality of the tape recording equipment will be the limiting factors for the quality of the reproduction The circuit shows part of a 6522 Versatile Interface Adapter controlling the 3417 but the job can be done with any other pro grammabile parallel port or with three flip flops and one tri state unit If the program presented with this article is to be used the location of each signal in the word must be respected Bit zero is the digital output from the chip bit one is the digital input to the chip bit two is the encode decode control and bit three is the clock Bit zero must be programmed as input and the other three as outputs One interesting point to mention in this circuit is the lack of a clock The 3417 requires a 16 Khz clock in this circuit the clock is produced in soft ware thereby avoiding the problems of synchronization If an independent
7. your assurance of F compatibility with essentially all software for the APPLE Hires printing with simple keyboard commands that replace hard to use software routines No disks to load Special features include inverse doubled and rotated graphics and many text control features available through easy keyboard or software commands Uses Industry standard graphics commands This is the first truly universal intelligent parallel interface Change printers no need to buy another board Just plug in one otour im ROM S and you re ail set ROM S available for Epson C Itoh NEC and AX 127 Okidata others available soon Specity printer when ordering Call for Price h THE UPGRADEABLE PPC 100 PARALLEL PRINTER CARD Le P Gamat Universal Centronics type parallel printer board complete with cable and connector This unique board allows you to turn on and off the high bit so that you can access additional features in many printers Easily upgradeable to a fully intelligent printer board with graphics and text dumps Use with EPSON C ITOH ANADEX STAR WRITER NEC OKI and others with standard Centronics configuration 139 00 IF YOU WANT GRAPHICS AND FORMATTING THEN CHOOSE THE PERFORMER for Epson OKI NEC 8023 C ITOH 8510 provides resident HIRES screen dump and print formatting in firmware Plugs into Apple slot and easy access to all printer fonts through menu with PR command Use with standard pri
8. 1880 PO HOME 23DOWN TRIGHT The characters shown in square SIGNALMAN MARK I DIRECT CONNECT MODEM 89 50 Standard 300 baud full duplex answerloriginate Powered by long lasting 9 volt battery not included Cable and RS 232 connector included EPROMS HIGH QUALITY NOT JUNK Use with PET APPLE ATARI SYM AIM etc 450 ns 6 50 for 2718 12 50 for 2532 We sell EPROM programmers for PET and ATARI 5 INCH SOFT SECTORED DISKETTES Highest quality We use them on our PETs APPLEs ATARIs and other computers 22 50 10 or 44 50 20 NEW C ITOH STARWRITER F 10 DAISY WHEEL PRINTER Letter quality flawess copy at 40 char sec Bidirectional printing 15 inch carriage uses gaan Diablo ribbons and print wheels TERE 9 59 PARALLEL 1495 RS 232 ra 210 No 55 December 1982 Ji pouse brackets represent literal cursor charac ters The codes stand for one home character followed by 23 cursor downs followed by seven cursor rights In the actual mail list the literal characters are used and the codes are in a REMark statement at the end of the line Always try to explain lengthy strings made up of cursor controls especially if anyone will ever need to list your program to a non Commodore printer Later lines select needed portions of the program with LEFT as in line 1940 1940 M2 LEFT PO 8 START POSITION However we must be sure the messages are st
9. 8 THEN HMOVE 1 370 IF S258 AND S 12 THEN HMOVE 1 580 IF VMOVE VEFOG O AND VMOVE VPO0S lt 191 THEN VPOS VP0S VMOVE 390 IF HMOVE HPOS 0 AND HMOVE HPOS lt 192 THEN HPOS HPOS HMOVE 400 IF VMOVE 2 THEN WING 2 410 GOTO 230 497 REM 498 REM 499 REM SET UP VBLANK ROUTINE 500 FOR I 1 TO 13 510 READ N 520 POKE 1535 I N S30 NEXT I 540 FOKE 44 1 SSO POKE 1549 PEEK 549 560 POKE 1550 PEEK 549 570 POKE 548 0 S80 POKE 549 6 590 FOKE 65 0 600 RETURN 1000 DATA 0 195 234 24 24 35 0 0 1010 DATA 173 17 6 141 5 212 173 16 6 141 4 212 76 No 55 December 1982 MICRO The 6502 6809 Journal the interrupt will happen Writing a zero will prevent the interrupt If the signal is not masked by NMIEN the 6502 is interrupted and a branch to the immediate vertical blank interrupt routine occurs This updates the real time clock processes the at tract mode and maintains a special system timer CDTMVI refer to Atari manuals When the immediate mode vertical blank routine is completed the flag CRITIC memory location 66 is checked as is the processor interrupt bit I If either is non zero the interrupt sequence is terminated with a return to the main program 6502 instruction RTI Otherwise the interrupt routine continues with the deferred portion This second part moves all the shadow registers into the hardware registers updates a few other system timers and decodes the results read
10. Apple Il is a registered trademark of the Apple Computer Co MICRO The 6502 6809 Journal 67 BOX 120 ALLAMUCHY N J 07820 inc 201 362 6574 HUDSON DIGITAL ELECTRONICS INC THE TASK MASTERS HDE supports the TIM AIM SYM and KIM TASK with a growing line of computer programs and peripheral components All HDE component boards are state of the art 4 x 6 with on board regulation of all required voltages fully compatible with the KIM 4 bus OMNIDISK 65 8 and 65 5 Single and dual drive 8 and 5 4 disk systems Complete ready to plug in bootstrap and run Include HDE s proprietary operating system FODS File Oriented Disk System DM816 M8A An 8K static RAM board tested for a minimum of 100 hours and warranted for a full 6 months DM816 UB1 A prototyping card with on board 5V regulator and address selection You add the application DM816 P8 A 4 8K EPROM card for 2708 or 2716 circuits On board regulation of all required voltages Supplied without EPROMS DM816 CC15 A 15 position motherboard mounted in a 19 RETMA standard card cage with power supply KIM AIM and SYM versions DISK PROGRAM LIBRARY Offers exchange of user contributed routines and programs for HDE Disk Systems Contact Progressive Computer Software Inc for details HDE DISK BASIC A full range disk BASIC for KIM based systems Includes PRINT USING IF THEN ELSE Sequential and random file access and much more 1
11. DEER PARK NEW YORK 11729 516 666 7577 SOFTWARE Super Pix Hires screendump software for the Epson OKI C Itoh and Nec 8023 Use with Tymac PPC 100 Special 19 95 Specify Printer Mr Lister Customer Contact Profiler amp Mailer A Super Mail List Plus more up to 1000 Entries on single 3 3 Disk only 1 Drive required 2 second access time to any name full sort capabilities Dual Index Modes supports new 9 digit Zip Easy to follow manual Not Copy Protected 4 user defined tables with 26 sort selections per table Beta tested for 6 months user defined labe generation Introductory Price 135 99 00 Dealer amp Dist Inquiries Invited APPLE LINK A communications system for the Apple Requires Hayes Micro Modem Transmit and receive any type of file between APPLES Automatic multi file transfer real time clock indicating file transfer time Complete error check Plus conversation mode Only one package needed for full transfers Compatable with al DOS file types requires Hayes Micro Modem 59 00 THE APPLE CARD ATARI CARD Two sided 100 plastic reference card Lozded with information of interest to all Apple and Atari owners 3 98 NIBBLES AWAY II AGAIN Ahead of all others e AUTO LOAD PARAMETERS Free s the user from having to Manually Key in Param values used with the more popular software packages available for the Apple Il e EXPANDED USER MANUAL incorporates
12. Huntsville AL 35801 Name Pro Guard 8 Floppy Controller System Apple III Memory Up to2 2 megabytes Language SOS DOS 3 3 Pascal Hardware Controls two 8 Shugart compatible drives Description This 8 floppy controller resides in line be tween Apple III and the drive system and connects to slot 2 MICRO The 6502 6809 Journal via SVA s innovative Smart Cable Price 695 00 Available SVA Sorrento Valley Associates Inc 11722 Sorrento Valley Rd San Diego CA 92121 Apple dealers Micro D Micro House U S Micro Sales Name Ramex 128 System Apple II or Apple II Plus Memory 48K Description This 128K RAM expansion board includes disk emulation software that fea tures super fast mounts and dumps from card to disk 20 25 seconds for an entire 128K Also available for VisiCalc is super expander software that gives the same super fast loading and saves of VisiCalc files 136K in 20 seconds Price 499 00 Includes disk emulation software and memory management Available Omega Microware Inc 222 S Riverside Plaza Chicago IL 60606 Name Multi Port 232 Description The Multi Port 232 is a 4 or 8 port multidrop data router that allows merg ing or splitting of RS232 fiber optic and current loop in any source destination combina tion It provides local network ing for word processors printers modems video dis plays computers teletypes and instruments
13. If the routine is exited at line 40 in dicating a normal BRK command the following sequence should be used PLP PLA Programming the PROM is under stood by examining figure 2 Since the system data bus is connected to the ad dress lines of the PROM the hex op MICRO The 6502 6809 Journal codes become the address to this device Therefore all legal op code based addresses store 0000 and all il legal addresses store 0001 Conclusion This method of detecting illegal op codes is really a hardware implementa tion of a macro assembler directive Although the execution time and mem ory space required are more than the standard JSR technique writing and debugging programs is more straight forward when microcoded routines are Figure 3 Number Type 5V Gnd IC1 74LS123 16 8 IC2 74LS74 14 7 IC3 748287 16 8 IC4 5 74LS04 14 7 IC6 7 7405 14 7 No 55 December 198 Listing 1 Software to modify the IRQ vector to point to a user program 0800 l SEFTING UP THE IRQ VECTOR 0800 2 0800 3 7 0200 4 ORG 200 0300 5 USRPRG EQU 0300 FFFE 6 IROLOW EU SFFFE FEFF 7 IKHIG EU IRQLOWS1 0200 8 0200 9 0200 10 INITIALIZATION 0200 Il 0200 I2 0200 A9 00 13 LDA USRPRG 0202 8D FE FF 14 STA IRQLOW 0205 A9 03 15 LDA USRPRG 0207 8D FF FF 16 STA IRGHIG 020A 17 4 020A 18 020A 19 020A 20 020A 21 MAIN PROGRAM ADDRESS OF USER PROGRAM LOW ADDRESS OF IRQ VECTOR HIGH ADDRESS OF IRQ VECTOR SET
14. If you are using the Standard screen set up by BASIC it is much easier to use standard BASIC statements like PLOT and DRAWTO If you want to set up a specific shape that would require a lot of DRAWTO commands for a relatively small area you may want to use PRINT Although converting to exact byte values to POKE onto the screen is possible PRINT allows you to address each individual pixel on the screen You PRINT an alphanumeric string to the screen through channel six In mode 3 POSITION the graphics cursor at the beginning of one of the lines in the image then PRINT 46 112233 for two pixels each of colors 1 2 and 3 To print the background color which will allow you to erase an image use zero four or a space In two color modes use only zero and one This method will save you substantial con version over PEEKing and POKEing and will in some cases run much faster than the equivalent PLOT and DRAWTO statements You don t need a COLOR statement for the PRINT method because you specify the color register directly and there is an addi tional advantage to providing a version of the image right in the program in valuable in debugging Next Month My January column will introduce the Operating System and Hardware Manuals and a few other sources of more technical information on the Atari I plan to make the Technical Tidbits a reg ular feature so send in your questions MICRO No 55 December 1982 MONSTER
15. ULD FOLLOW IF B lt 176 OR B gt 185 GOTO 34 REM THE B0 B9 FIRST BYTE NOT THERE S O NO NUMBER FOLLOWS FALL THROUGH IGNORES FIRST BYTE AND DOES DECIM AL STRING CONVERSION GOSUB 2 L B GOSUB 2 L B 256 L G G STRS L GOSUB 2 GOTO 34 REM ADD EXTRA INDENT EACH SPLIT LINE LIMITING ON REM STATEMENTS TS TS L SF O RS RS 1 IF RS gt 2 THEN RS 2 REM FIRST ENTRY TO PRINT LINE BUILD GET TOTAL INDENT SPACES PLUS SPL IT POINT LOW LIMIT E TS TS 1 K IM FS RS E K 13 IF K gt 0 THEN GS LEFTS BBS K G MICRO The 6502 6809 Journal No 55 December 1982 continued 58 REM BUILD TOTAL PRINT LINE STRING 59 IF NOT D THEN C NS G 60 IF D THEN C LBS G 61 REM TEST FOR LONG LINE SPLIT IF NECESSARY 62 K LEN C LL IF K 1 GOTO 74 REM NOT A SPLIT LINE 63 G RIGHTS C K C LEFTS C IL SF 1 64 REM BEGIN SPLITTING WITH SEARCH FOR A SPACE 65 D LL 66 IF MIDS C D 1 S GOTO 72 67 D 2 D 1 IF D gt E GOTO 66 68 D LL REM SPLIT NEXT AT ARITHMETIC OPERATOR OR COMMA 69 K ASC MIDS C D 1 IF K 42 OR K 43 OR K 44 OR K 45 OR K 47 OR K 124 GOTO 72 70 D 2 D 1 IF D gt E GOTO 69 REM FALL THROUGH IS NO SPLIT 71 GOTO 74 REM NEXT LINE IS SPLITTING INSTRUCTION 72K LL D IF K gt O THEN G RIGHTS CS K G C LEFTS CS D 73 REM TEST PAGE LINE COUNT INSERT SPACES AS REQUIRED THEN PRINT 74 GOSUB 6 K LEN C IF SF
16. amp Silicon Office versions planned Uses functional 4K ROM at 9000 Price 195 75 for legal or medical dictionary options Management Systems Alternatives 6219 Thirteenth Avenue South Gulfport FL 33707 Description Finally a decent spelling checker for CBM computers Highly recommended for word processing writers who do not spell well Product Name Equip req d Manufacturer Pluses It is far faster than its only competitor and has an honest 40 000 word dictionary Spellmaster presents suspect words for editing in context in reverse field on a typical Wordpro screen display Suspect words may then be easily corrected or added to the dictionary for future reference up to 3 000 more words on the 4040 and 20 000 more on the 8050 Corrected files are resaved to disk avoiding the hassle of reloading the word processor and searching for the errors The program is mostly self documenting though it comes with a typical manual There is a HELP screen in the program and useful prompts throughout Minuses When editing it is easy to skip past a word that needs to be repaired or added to the dictionary At present there is no way to back up except by aborting and restarting the edit The company is attempting a fix Skill level required Users should be fairly familiar with Wordpro and willing to spend about an hour reading the Spellmaster manual before use Reviewer Jim Strasma Product Name Electric Duet Equi
17. ascending string array The ad vantages of a binary search over a serial search increase as the number of items in the array grows For example an ar ray of 4096 items can be searched in less than 11 tries The Method A binary search tests the middle ele ment in the remaining part of the array If the element is higher than the search argument the value being searched for the part of the array from this ele ment upward is left out of the search by resetting the upper limit to the index of the element If the element is lower than the search argument the part of the array from this element downward is left out by resetting the lower limit to the index of this element The pro gram then finds the average of the up per limit and the lower limit and searches the element at this location The procedure continues until the ele ment is found or until it discovers that the upper and lower limits have con verged without finding the element The Subroutine The syntax for the binary search is amp GET XX YY where 1 XX represents any legal string array name and 2 YY represents any legal string variable name This subroutine will return in SS96 the index number of the element in XX that has a value equal to YY if the item is found If the item is not found the subroutine will return a 1 No 55 December 1982 yt APPLE SLICES S ZERO PAGE EQUATES LOWTR EPZ 9B VARNAM EPZ 81 VARAD EPZ 83 10 CHRG
18. columns That allows two columns and or one row to be hidden while characters are lined up before fine scrolling into the visible area of the screen The programming for this smooth scrolling is best accomplished with some simple machine language routines No 55 December 1982 Sprites What is a sprite The name doesn t really mean much but the concept is similar to Player Missile Graphics on Atari computers Each sprite is a high resolution entity 24 by 21 pixels maintained by the VIC II chip To pro gram one all you need to do is define its bit pattern select its color select its X Y position and turn it on By changing the X and Y values you can move the sprite to any position on or off the screen Now for the details Eight sprites may be displayed on the screen at one time Each sprite has a one byte pointer at the top of the screen RAM block The pointer indicates a 64 byte block within the 16K bank currently selected for the VIC II The last byte of the 64 is a control byte the others contain the pixel data for the screen representation of the sprite Each three bytes represent a 24 pixel row in the sprite In the stan dard mode a bit set to 1 displays a pixel of the selected color and a bit set to 0 displays what s under it usually the background but it could be part of a sprite of lower priority Associated with each sprite are several other memory locations in the VIC II chip The sprite
19. from the game controllers When it has finished it branches through the vector at location 548 decimal 2 bytes Unless you alter it this location points to an RTI routine Every time there is a vertical blank interrupt the computer uses the ad dress at location 546 to find the im mediate vertical blank interrupt rou tine It uses the address at location 548 only when the critical flag and the I bit are not set BASIC cannot access the 1 bit directly but it can write to the critical flag with a POKE Your Own Routine To shadow your fine scrolling values so that you don t interrupt the screen while it is being drawn you must add on your own machine lan guage routine This can be done by altering the pair of memory locations called VVBLKD Vector for Vertical BLanK Deferred routine this is the one at location 548 First you must write your routine in machine language and store it in a fixed place in memory In the sample pro gram the routine requires 15 bytes and starts at location 600 1536 in decimal A BASIC POKE routine may be used to install this code Since BASIC is so slow you must make allowances for certain odd occur rences What happens if a vertical blank routine tries to use a vector be tween the time you write one byte and the time you write the next byte Your program crashes To get around this potential catastrophe you can shut the 23 second part of the vertical blank inter rupt rou
20. p 77 shows how to add ultrasonic circuitry to your computer at a cost much less than the BSR ultrasonic option David Hayes s Atari Meets the BSR X 10 p 82 shows how to convert the unit for control from Atari s controller ports If you ve ever looked at a 6502 programming manual you might have noticed all the unused op codes Now you can use those codes to execute your own machine language routines Curt Nelson and his associates Utilizing 6502 s Undefined Operations p 93 present a circuit that causes the 6502 to execute your code instead of crashing when it encounters an unused op code In Programmable Character Generator for OSI Colin Macauley demonstrates how to define your own characters p 88 OSI readers shuld turn to our OSI book announcement on page 25 Joe Hootman s in depth coverage of the 68000 s in struction set continues p 85 with a discussion of the logic instructions As usual convenient reference tables are included Apple and Atari Paul Swanson concludes his three part series on Atari s character graphics p 22 with a demonstration of patch ing into Atari s vertical blank interrupt routine His From Here to Atari column p 32 covers a variety of topics including Atari s new software acquisition centers and some technical tidbits Peter Meyer presents an Applesoft GOTO GOSUB Checking Routine p 26 that displays all incorrect GOTO and GOSUB references ILISZT for In
21. sent in this update The program COMPRESS well written and clearly described by Barton M Bauers MICRO 52 89 removes any variable names appearing after NEXT statements It does this by ignoring all characters until the following colon or the end of the program line see 93EC 93EF This could cause problems in two cases The first problem occurs when several variables are used with one NEXT as in NEXT I J The second case is when a NEXT variable must be stated This may occur with nested loops in which the inner loop NEXT is the result of an IF THEN statement Editor s note A poor programming practice Loops should be cleared before exiting or else stack overflow can occur These problems with NEXT can be solved by treating NEXT in the same way an IF statement is dealt with which is to leave it as the programmer wrote it Bauers calls this a Terminal Command This is done by changing one byte of COMPRESS First BLOAD COMPRESS then in BASIC POKE 37871 72 or in the monitor enter 93EF 48 Then BSAVE COMPRESS A 9000 L 600 Similarly programmers who use amp statements and who do not mind have ing LET statements remain in the pro gram if there are any can change lines 460 and 461 In BASIC POKE 37873 202 POKE 37874 240 POKE 37875 68 or in the monitor enter 93F1 CA FO 44 The two lines of COMPRESS become C9 CA CMP CA isit amp F044 BEQIF yes 98 Short Subjects continued s
22. so however the way the routine was implemented can do nothing but slow it down Finally regarding the Falling Tone benchmark I certainly feel the author s No 55 December 1982 comments on page 68 regarding how hard it was to come up with a FORTH implementation show a decided lack of understanding of structured pro gramming Listing 3A shows the same lack of structure that can be no way blamed on BASIC itself After ana lyzing what the program is supposed to do the following structured code would have been much clearer 1010 DC 2 20 FOR Z 20 TO 255 1020 DC DC Z 1030 IF DC gt 0 THEN 1020 1040 POKE 59464 Z 1050 DC DC 256 1060 NEXT 1070 POKE 59467 0 POKE 59466 0 RETURN The same code written in FORTH looks like this TONE 0 59464 C 16 59467 C 170 59466 C 20 256 OVER DO BEGIN I DUP O lt UNTIL 1 59464 C 256 LOOP DROP 0 59466 Notice that we use 0 59466 to reset both 59466 and 59467 to zero since FORTH inherently works with 16 bit numbers and uses 8 bit numbers only occasionally I would probably do the same thing at the beginning of TONE to set up 59466 and 59467 initially assuming this is a PIA register address of some sort t any rate the structure is there and can also be used in the RPL version I m sure Edward B Beach 5112 Williamsburg Blvd Arlington VA 22207 Dear Editor In BASIC FORTH and RPL MICRO 49 63 three different com puter languages ar
23. 20 ability 1170 55 53 49 117314E 47 1175200 221 DFE 13 The Use of the Unit 1174 43 4F 4E 222 ASC CONTINUDUSLY VARIAELE SLOFE DELTA i MODULATION The unit is very simple to use A 1179154 49 4E cassette or any tape recorder records 117C155 4F 55 the words of messages to be stored for 1155227 a later reproduction It is good to leave 1185 52 49 41 pauses before and after each part to aid 1 paraz 4c Ms ee 86 20 53 4 in recognition When an acceptable 118E 4F 50 45 record has been obtained especially 1191320 44 45 without too much background noise 1220 2 n the output of the tape recorder is con 119A 44 55 4C nected to the input of the unit and the aniar A a7 program is run 11A230D 223 DFE 13 Some practice is required to start ii a M 224 ASC WITH THE MOTOROLA MC3417 IC the tape recorder and to signal the com 11A9 48 45 20 puter such that the whole record is 11AC34D 4F 54 is j LiAF34F 52 4F sampled this is especially tme when 1182 4C 41 20 the record is long and the buffer is 11ES5 4D 43 33 small Recall that 2K of memory is ieee aS 2 needed for each second of speech The 118E 2E rogram permits finding the initial and 11EF 0D 0D 225 DFE 13 13 r 1a pe 8 d by th 11C1 50 4C 45 226 OLMO ASC PLEASE ENTER BEGINING ADDRESS inal location of memory used by the 11C4 41 53 45 11C7 2C 20 45 11CA 4E 54 45 11CD 52 20 42 1100 45 47 49 11D334E 49 4E 11p6 47 20 41 1109 44 44 52 1100345 53 53 MEM REX 11DF 0
24. 32 INX desired but the manufacturer provides 100D D0 F3 43 BNE DELI substantial support mmu Me eae eee Intel has developed what they call 1014320 02 11 46 JSR ADRS an analog microprocessor a single 1017 D0 01 47 ENE DELZ hi ith 1 1019 48 x PROGRAM ENDS WHEN THE INITIAL ADDRESS IS ZERO chip device to work with analog 1019 40 49 RTS signals This unit the 2920 can be 1017C FF 3 DELZ enir nF STANDARD FILE used for speech synthesis or reproduc 101E 45 i 52 LDA END MOVE TO FOINTER tion but its use is limited to those per 1020 85 11 53 STA PNT 1 22145 12 5 sons with a substantial knowledge of abes x D SDA EnD acoustics linguistics physics mathe 1024 A2 00 S LDX 0 END OF EUFFER matics and a high level of program PE ja RM EB dol ming proficiency This unit is for the 102D F0 06 Es Lee Ee serious user There are several other 102F 20 SF FA 40 JSR OUT Saat AE 1032 E8 61 INX units in this category manufactured by 1033 00 F3 42 SNE DEUS TRW Harris and others 1035 20 02 i11 63 DEL JSR ADRS 1038 42 00 64 DEL3 LOX 0 INPUT OR OUTPUT 103A BD E1 11 65 DEL7 LDA DLM1 x The Motorola 3417 103D3C9 1F 66 CMP 1F The Motorola 3417 is a linear 103F F0 06 67 BEQ DELS m 1041 20 SF FA 48 JSR OUT bipolar chip housed in a 16 pin dual in 1044 8 49 INX line package which is compatible with 104509 Ea De A Sica BNE DEL7 both TTL and CMOS technologies The 104A C9 4F z1 i sl ee ASCII 0 16 pin package makes it easy to mount 104C F0
25. 40 to 80 characters 9 new characters not found on the Apple keyboard Fully compatible with CP M and Apple PASCAL With lowest power consumption of only 2 5 watts List 345 aaa 225 SMARTERM EXPANDED CHARACTER SET 7 x 11 matrix with true decenders Add to abOVES seo tee a eatin hres 40 Combination SMARTERM and Best Buy EXPANDED CHARACTER SET Specialat 260 VIDEX VIDEOTERM 249 VIDEX ENHANCER II 119 CENTRONICS COMPATIBLE PARALLEL INTERFACE From PROMETHEUS For use with Epson NEC C ITOH and other printers Fully compatible with CP M and Apple Pascal PRT 1 Only 2 eee 69 GRAPHITTI CARD Prints HIRES page 1 or 2 from onboard firmware Features True 1 1 aspect ratio prints emphasized mode reverse mode rotates 90 degrees plus more Compare all this with the Grappler We think you ll agree that this is the best graphics card on the market Specify for use with EPSON NEC 8023 C ITOH Prowriter or Okidata List 125 aaa 89 SOFTWARE WORDSTAR Special at 1 5 SPELLSTAR 12 SUPERCALC 175 D BASE H 525 VISICAL O EP 149 DB MASTER 0 189 All equipment shipped factory fresh Manufacturers warranties included Please add 3 00 per product for shipping and handling California add 6 tax BART Counties 62 All items are normally in stock Phone jor Qu
26. 4C B 45 No 55 December 1982 0 403 A 8F B 20 498 A 44 B 2Cc 40C A 41 B 32 418 A S8F B 20 414 A 4C B 49 419 A 44 B 29 41D A 20 B 43 0 421 A 52 B 00 3 0TS 405 A 29 B 43 469 A 4E B 2C 0 40D A 29 B 00 411 A 59 B 52 415 A S4E B 45 S41A A 42 B 59 S41E A S4F B 4D 422 A 76 B 04 MICRO MICRO The 6502 6809 Journal It Pays to Write for MICRO Get paid for your ideas write for MICRO Thousands of people read MICRO every month MICRO is sold in computer stores and on newsstands worldwide Send for a copy of our Writer s Guide now Our author payment rate is com petitive with the leading maga zines in the industry We welcome articles on any aspect of 6502 6809 68000 hard ware and software for the Apple Atari CBM PET TRS 80 Color Computer VIC OSI 6809 or 68000 1983 Features March Printers April Communications May Wave of New Computers June Operating Systems July Hardware August Word Processing September Education October Programming Techniques November Games December New Microprocessors 53 INICRO PET Vet By Loren Wright Graphics on the Commodore 64 The Commodore 64 offers a lot of com puting power in its small package There are 64K of RAM CP M capa bility and sophisticated sound fea tures But the most outstanding feature is the graphics T
27. 51 JSR CRDO 52 JMP DOS WS 53 SAVLINNO 54 IN CASE WE NEED TO PRINT IT LATER 55 INY 56 LDA TXTPTR Y 57 STA INl 58 INY 59 LDA TXTPTR Y 60 STA IN1 1 62 LDA TXTPTR 63 ac 64 ADC 3 65 STA TXTPTR 66 BCC GOTHRULN 67 INC TXTPTR L 68 GOTHRULN 69 INSPECTING EACH BYTE IN TURN 70 JSR HARGET 71 CMP 0 72 BQ NEXTLINE 73 CMP C4 74 BNE NEXT 75 LDY 1 76 LDA TXTPTR Y 77 SEC 78 SBC 30 79 CMP SOA 80 BCS GOTHRULN 81 LDA C4 82 BNE STORE 83 NEXT CMP SAB 84 BEQ STORE 85 CMP BO 86 BNE GOTHRULN 87 STORE STA TOKEN 88 READLNNO 89 JSR CHRGET 90 JSR LINGET 91 LDA LINNUM 92 LDY LINNUM 93 STA IN2 94 STY LN2 1 95 LDA SPEAKER 96 JSR FNDLIN 97 BCS OIKCOMMA 98 LINNOTFD 99 JSR CRDO 100 LDA IN1 1 101 LOX INl 102 JSR LINPRT 103 LDA TOKEN 104 CMP C4 105 BNE NEXTl 106 LIA THEN 107 LDY THEN 108 JMP PRINT 109 NEXTl CMP BO 110 BEQ NEXT2 lil LDA GOTO 112 IDY GOTO 113 JMP PRINT 114 NEXT2 LDA amp GOSUB 115 LDY GOSUB 116 PRINT JSR STROUT MICRO The 6502 6809 Journal PRINT GOTO OR GOSUB 27 117 LDA IN2 1 118 LDX IN2 119 JSR LINPRT PRINT LINE REFERRED TO 120 CHKCOMMA 121 IN CASE OF MULTIPLE GOTO OR GOSUB 122 JSR CHRGOT 123 CMP 2C COMMA 124 BEQ READLINNO IF SO 125 LDA TXTPTR l DECREMENT TXTPTR IN PREP 126 BNE NEXT3 FOR NEXT USE OF CHRGET 127 DEC TXTPTR L 128 NEXT3 DEC TXTPTR 129 JMP GOTHRUIN 130 133 Stent 134 STRINGS 135 GoTo DA Gom 13
28. 65 into a 6809 based computer 91 Compute 4 No 8 August 1982 Chastain Linton S Energy Monitor pg 116 118 This program for the TRS 80 Color Computer will show you the effects of home energy conservation 92 Microcomputing 6 No 9 September 1982 Avery Mike Prime Number Nonsense pg 16 Comments on the 6809 versus the 6502 Z 80 or 6800 microprocessors 93 Color Computer News August 1982 Sias Bill REMarks pg 6 7 Announcement of the 6809 Achievement Award being given monthly to the most innovative use for a 6809 Gray Don Number Conversion pg 7 8 Three listings for number conversion programs for the 6809 based TRS 80 Color Computer Anon Color Computer Bulletin Board System pg 11 A BBS for the Color Computer is up in the Toronto area Call 416 494 7001 evenings and weekends Donahue Mike Cross Reference Generator pg 15 25 A utility for the 6809 based TRS 80 Color Computer Grady Larry Review of Master Control pg 29 33 Problems encountered with the program Master Control and some reprogrammed sections to alleviate difficulties Graham Randy W Modems Terminals and Bulletin Boards pg 35 38 Using the Color Computer in telecommunications ARO No 55 December 1982 COMMODORE 64 The Commodore 64 is a 6510 based color Commodore 64 Memory Map and sound computer that connects to a color a TV via an RF modulator 64K RAM is stan
29. 800 Dust Cover Atari 400 Dust Cover Atari 810 Dust Cover For Apple IBM Franklin Visidex 189 00 Visifile Visiplot Visiterm Visitrend Plot 229 00 VisiSchedule 229 00 Desktop Plan VISICALC for Apple tt Atari CBM IBM Continental The Home Accountant Apple Franklin The Home Accountant IBM 1st Class Mail DISKS MD Box of 10 36 00 MD II Box of 10 46 00 MFD I 8 a ERS 44 00 MFD II 8 Double Density EY gu 5400 51 4 SS DD s 26 00 5 1 4 DS DD 36 00 51 4 SS DO 19 99 TIMEX SINCLAIR 1000 LOWEST i 89 00 EVER MITTIT STAR ALTOS Call for price and availability on all models Disk Drives For Atari Computers S1 Single Drive A1 Add on Drive S2 Dual Drive Single Side Dual Head 679 00 Dual Drive Dual Head 1046 00 MICRO SCI Disk Drives For Franklin amp Apple C2 Controller C47 Controller MODEMS 239 00 Smart 1200 1200 baud T 549 00 Chronograph err 199 00 Microdem II i 279 00 Microdem 100 309 00 144 00 Seeds 159 00 Auto Cat iE beers ah Whe 219 00 212 Auto Cat seriis 589 00 Apple Cat eee 339 00 212 Apple Cat II 609 00 Mark RS 232 79 00 Mark li Atari 7900 Mark II TI 99 is 109 00 Mark IV CBM PET 125 00 Mark V OSBORNE 95 00 Mark VI IBM PC 179 00 Mark VIt Auto Answer Dial 119 00 9 Volt Power Supply MONITORS 300G uid Sas 169 00 339 0
30. ADR3 114F305 13 217 1151 40 218 No 55 December 1982 LDX LDA CMF EEQ JSR INX ENE JSR LDY LDA STA INC ENE INC LDX LDA STA LDA ASL ROL ROL STA AND STA DEX ENE EEC LDA SEC LDA SEC ECS JMF LDA LDA LDA LDA LDA LDA NOF JMF LDA STA STA JSR JSR CMF ENE LDA STA STY LDA STA LDA STA LDA RTS CMF EEQ CMF ECC CMF ECC CMF ECC AND CMF ECS ADC AND ASL ASL ASL ASL LDX ASL ROL ROL DEX ENE EEG LDA ORA RTS 0 DLM2 X 1F OUTS OUT OUT4 KKK 0 CPNT Y BITS PNT OUT1 FNT 1 8 8 DELR 2 BITS DELR t2 DELR QUT3 END FNT END 1 PNT 1 OUTO DELTA BITS X CBITS X BITS xX EITS Y EITS X EITS X OUT2 0 END END 1 KKK OUT 353 ADR1 0 PNT END 4 PNT 1 340 END 1 FF D ADR3 30 ADRO S3A FKA 341 ADRO 5F 47 ADRO END END 1 ADR2 ADRO END END 1 SIGNAL WHEN READY GET NEXT WORD SAVE IT IN BITS INCREMENT FOINTER SEND EIGHT BITS CLOCK HIGH PREFARE ACCUMULATOR GET BIT INTO ACCUMULATOR SHIFT ONE MORE SEND TO 3417 CLEAR CLOCK CLOCK LOW EIGHT amp ITS GO FOR MORE TEST FOR BUFFER FULL GO FOR MORE DUMMY DUMMY DUMMY DUMMY DUMMY DUMMY DUMMY CONTINUE GET ADDRESS SUEROUTINE GET CHARACTER DISFLAY IT CHECK IF S STANDARD EUFFER CHANGE VALUES FER INSTALLATION CHECK FOR CAR RET TEST IF NUMEER IGNORE IF NOT TEST IF HEXA LETTER IGNORE IF NOT CONVERT TO UPPER CASE
31. CONVERT TO NUMBER 690 IF DV lt 3 OR DV gt 4 GOTO 670 REM VALIDATE 700 MF 2 REM 2 FIELDS PER LINE ON SCREEN 710 IF DV lt gt 3 THEN MF 4 REM 4 FOR PRINTER 720 CLOSE 4 0PEN 4 DV REM HELLO DEVICE 730 INPUT FILE A S NAME 740 INPUT ON DRIVE R1 CF 750 IF R1 lt gt AND R1 lt gt 1 THEN 740 REM VALIDATE 760 DOPEN 1 CF D R1 REM HELLO FILE A 770 IF DS THEN PRINT DS GOTO 730 REM ON ERROR 780 INPUT FILE B S NAME 790 INPUT ON DRIVE R2 800 IF R2 lt gt AND R2 lt gt l THEN 79 REM VALIDATE 810 DOPEN 2 PF D R2 REM HELLO FILE B 820 IF DS THEN PRINT DS GOTO 780 REM ON ERROR 830 GET 1 A1 GET 1 A2 REM READ A S LOAD ADDRESS PF 840 GET 2 B1 GET 2 B2S REM amp B S 858 REM TRAP ZERO DATA BUG 860 IF AlS NL THEN Al ZE 870 IF A2 NL THEN A2 ZE 880 IF Bl NL THEN BIlS ZES 899 IF B2 NL THEN B2 ZES 900 REM CALCULATE LOAD ADDRESSES 910 AD ASC A1 ASC A2 256 920 A2 ASC B1 ASC B2 256 930 IF AD A2 THEN RETURN REM IF MATCH BEGIN 946 PRINT START ADDRESSES DON T MATCH 950 DCLOSE REM ELSE CLOSE DISK FILES 960 END REM amp ABORT SOUP Sample Run SOUP FILE A SOUP 401 A 1B B 04 406 A 45 B 20 S46A A 44 B 2C 8 40E A2 43 B 04 412 A 49 B S4F 416 A 20 B S4E 41B A 20 B 44 S41F A 50 B 49 amp FILE B SOUP 7SE82 402 A 64 B S00 487 A 28 B 41 8 40B A 50 B 2C 8 40F A S6E B 00 8 413 A2 52 B 20 418 A 44 B 45 41C A 54 B S4C 420 A
32. Card with CP M software Wordstar and word processing software and SuperCALC Special at 695 List 1 128 IK Prometheus ExpandaRAM The only 128K RAM card that lets you start with 16K 32K or 64K of memory now and expand to the full 128K later Fully compatible with Apple Pascal CP M and Visacalc No Apple modifi cation required Memory management system in cluded with all ExpandaRAMs Disk emulators included with 64K and 128K versions MEM 32 Two rows of 16K RAMS make a 32K RAM Card 209 MEM 64 One row of 64K RAM With DOS 3 3 disk emulator 299 MEM 128 Two rows of 64K RAMS installed make a 128K Card With DOS 3 3 disk emulator 399 MEM RKT 64K RAM Add On Kits 64K Dynamic RAMS Each 125 VISICALC Expansion Program for MEM 128 75 MODEMS FOR YOUR APPLE II HAYES Smartmodem 229 MICROMODEMHT 279 VERSAcard FROM PROMETHEUS Four cards on one With true simultaneous opera tion Includes 1 Serial Input Output Interface 2 Parallel Output Interface 3 Precision Clock alendar and 4 BSR Control All on one card Fully compatible with CP M and Apple Pascal List 249 169 MICRO The 6502 6809 Journal List 169 uuu 75 WORD PROCESSING SPECIAL 80 COLUMN VIDEO DISPLAYS FOR APPLE II SMARTERM Not to be se with SUPRTERM Software switching from 80 to 40 and
33. Easy Grip Control Knob Description K Bytes unique Stick Stand with the Fastball Easy Grip Control Knob reduces hand and wrist fatigue and frees one hand for a more skillful operation of the firebutton This combination allows players to increase their physical dexterity and achieve higher scores By just snapping the fastball onto the joystick and then snapping the joystick into the stick stand the player is all set for precision arcade action Price 6 99 suggested retail Includes base stand and fastball knob Available John Mathias K Byte Div of Kay Enterprises Co P O Box 456 1705 Austin Troy MI 48099 313 524 9878 or your local computer retailer Name Fast Load Fast Save Cassette System System OSI CIP or Superboard II Description Load BASIC or machine language programs in your 8K memory in less than 30 seconds at a speed of 2400 bits per second input output data rate Customer supplies own tape recorder The unit in cludes a 2K RAM fully decoded which may be used to hold machine language programs Unit plugs directly into your CIP or Superboard Il Price 69 95 fully assembled 59 95 with cashier s check or money order 62 95 kit 52 95 with cashier s check or money order Includes printed circuit board cassette tape program self contained R W memory connectors and user s manual Available Word Com P O Box 1122 28 Park Plaza Offices 303 Williams Ave
34. IF PT gt PE GOTO 121 118 IF BT 1ORB 5 THEN GOSUB 2 GOTO 115 REM NO E O L OR BYTE COUNT TOO SMALL 119 IF IA P 1 THEN GOSUB 2 GOTO 115 REM AVOID REPETITION SCMEH OW THE POINTER DIDN T ADVANCE 120 P P 1 L P GOSUB 21 PRINT AS D O G GOTO 25 REM RETUR N TO LINE NUMBER START 121 L PE GOSUB 21 PRINT AS 122 REM ENDING ROUTINE 123 GOSUB 4 GOSUB 17 PRINT MS LBS End of Listing 124 REM OPTIONAL STATISTICS 125 GOSUB 4 PRINT M Program Length PE PS Bytes Total of TN Line Numbers GOSUB 4 PRINT MS S TR Total Non Rem Sta tements TR Total Remarks 126 REM TURN OFF PRINTER RESET SCREEN AND SHOW COMPLETION n 127 PR O POKE 33 40 HOME VTAB 12 HTAB 10 INVERSE PRINT END OF ILISZTING NORMAL END 128 REM ILISZTER program to re format INTEGER BASIC listing prints 129 REM by Leonard H Anderson Version 2 8 8 15 May 1982 130 REM lower case and italics for MX 80 amp GRAFTRAX a REM Possible Binary routines added to 2 8 1 21 March 1982 2 REM 133 REM DESCRIPTION OF VARIABLES 134 REM 135 REM AS TEMPORARY STRING PARTLY FOR HEX CONVERSION 136 REM B PROGRAM BYTE VALUE IN DECIMAL 137 REM BBS BIG BLANK STRING OF 48 SPACES 138 REM BC BYTE COUNT OF A LINE DECIMAL 139 REM BT TEMPORARY PROGRAM BYTE VALUE IN DECIMAL 140 REM CF IF FLAG SET ONLY ON IP FOLLOWED BY FOR 141 REM C CHARACTER AND TOKEN STRING TO BE PRINTED 142 REM D TEMPORARY PARTLY FOR DIR
35. INPUT PROGRAM NAME HS 1 INPUT PROGRAMMER H 2 INPUT E DATE H 3 REM REQUIRED FOR HEADER ON EACH PAGE 100 PRINT PRINT WANT DIFFERENT START ADDRESS GET AS IF AS gt Y GOTO 103 101 INPUT START ADDRESS HEX AS D 1 BT O FORK LEN AS TO 1 STEP 1 FOR E 1 TO 16 IF MIDS AS K 1 MIDS XS E 1 THEN BI D E 1 BT 102 NEXT E D D 16 NEXT K PRINT P BT 1 L BT GOSUB 21 PRINT E HEX ADDRESS AS CHANGE GET AS IF A Y GOTO 101 103 PRINT PRINT NO LEFT MARGIN WANT ONE GET AS IF AS Y THEN INPUT MARGIN SPACES K IF K gt O AND K lt 49 THEN MS LEFTS BB K LL IL K 104 REM REMINDER FOR PRINTER SET UP continued No 55 December 1982 MICRO The 6502 6809 Journal line 25 Integer does not allow a byte count larger than 127 The actual number is 255 The 127 byte limit line 26 is for print line reconstruction usually longer than source code line length A byte count that is too large will jump to the binary insert routine at line 114 Line numbers up to 65535 will output whether they are actual line numbers or a chance byte pair in binary A test of number magnitude was included in an earlier version but then disregarded due to the large number of starting prompts Remark checking in lines 30 to 32 is part of the blank line separation for REMs Removing separation would delete all but the D 0 statement D must remain f
36. IRQ VECTOR TO USER BREAK ROUTINE Listing 2 Program to handle a break service routine Determines whether a break or an IRQ has interrupted the system and transfers control to the proper location 0800 l BREAK SERVICE ROUTINE 0800 2 2 0800 3 0800 4 0300 5 ORG 300 0380 6 IRQSER EQU 380 03A0 7 USRBRK amp QU 3A0 0040 8 SAVLOW EPZ S40 0041 9 SAVHIG EPZ SAVLOWS1 0042 10 sSAVOPC EPZ SAVIIGtS1 0104 ll FLAG EQU 104 0105 12 ADDLOW BU 105 0106 13 ADDHIG QU ADDLOW 1 0300 14 0300 15 0300 48 16 PHA 0301 08 17 PHP 0302 8A 18 TXA 0303 48 19 WHA 0304 BA 20 TSX 0305 BD 04 Ol 21 LOA FLAG X 0308 29 10 22 AND 10 030A FO 74 23 BEQ IRQSER 030C BD O6 Ol 24 LDA ADDHIG X 030F 85 41 25 STA SAVHIG 0311 BD 05 Ol 26 IDA ADDLOW X 0314 85 40 27 STA SAVLOW 0316 DO 02 28 BNE SKIP 0313 C6 4L 29 DEC SAWIG 031A C6 40 30 SKIP DEC SAVLOW 031C DO 02 31 BNE SKIPL O31E C6 41 32 DEC SAVHIG 0320 C6 40 33 SKIPL DEC SAVLOW 0322 A2 00 34 LDX 00 0324 Al 40 35 LDA SAVLOW X 0326 85 42 36 STA SAVOPC 0328 68 37 PLA 0329 AA 38 TAX 032A A5 42 39 LDA SAVOPC 032C FO 72 40 BEQ USRBRK 0326 28 41 PLP 032F 68 42 PLA 0330 43 0330 44 0330 45 0330 46 USER ROUTINES 0330 47 oi 0330 48 0330 49 0330 50 RETURN TO MAIN PROGRAM 0330 51 0330 52 0330 E6 40 53 INC SAVLOW 0332 DO 02 54 BNE SKIP2 0334 E6 41 55 INC SAVHIG 0336 6C 40 00 56 SKIP2 JMP SAVLOW 0339 57 END No 55 December 1982 STANDARD IRQ SERVICE
37. It provides time of day date month and year with automatic daylight sav ings time and leap year com pensation The clock is battery backed up to allow removal from computer without loss of data The clock also contains 50 bytes of battery backed up RAM for general purpose per No 55 December 1982 manent storage The many software options include inter rup handling and 12 24 hour formats Price 99 95 Includes Versaclock cartridge full instructions Available Maple Leaf Systems Box 2190 Station C Downsview Ontario Canada M2N 2S9 Name Color Graphic Printer 26 1192 System Compatible with TRS 80 Models I II III and Model 16 computers and DT I Data Terminal Description The TRS 80 Col or Graphic Printer can create anything from doodles to four color pie charts as well as more standard text and graphcis Ninety six ASCII characters are available in four colors red blue green black Special graphic commands in clude backspace reverse line feed change colors change line type solid or 15 types of dashed lines change print direction normal left to right top to bottom upside down or bottom to top move without drawing draw between points and draw axes The RS232 C serial interface is compatible with Radio Shack TRS 80 Col or Computers Price 249 95 Available Radio Shack Stores computer centers and participating dealers Name K Byte Stick Stand with Fastball
38. Last One then begins to code the program asking the user questions about where to branch etc A BASIC program is created as output which then can be run listed or modified like any other BASIC program The Last One is not required to ex ecute the output program Price 600 00 Includes complete documentation numerous sample flowcharts that will produce software worth several hundred dollars Author D J Al Systems Ltd Available Krown Computing 1282 Conference Dr Scotts Valley CA 95066 408 335 3133 Assemblers Package I The UCSD p System M Memory 48Kb runtime environment 64Kb development environment Language Assembly Hardware 8086 Z80 8080 8085 6502 9900 6809 68000 and LSI 11 PDP 11 Name System Description This collection of native code generating macro cross assemblers allows you to program on the host machine of your choice for the object machine of your choice Price 375 00 Includes object code Available SofTech Microsystems Inc 9494 Black Mountain Rd San Diego CA 92126 714 578 6105 Name Galactic Gladiators System Apple II with Applesoft ROM card Apple II Plus or Apple III Memory 48K Hardware Monitor and disk drive Description Galactic Gladi ators is a fast and furious com puter game of alien combat for two players or against the com puter The creatures are rated for strength endurance speed dexterity experience we
39. PC for BASIC and machine language It is available from the company and participating dealers INICRO No 55 December 1982 n d Pas al Di omm ems mug iei dts 2e PT ag tat a INICRO Hardware Catalog Name Guild Computer Rack System Apple II Description The Guild Rack comes in a choice of beautifully finished mahogany or ash No assembly is required It fits comfortably over the Apple I keyboard holds one or two disk drives and easily supports a monitor on top Price 54 95 ash 69 95 mahogany Available Guild Computer Rack 225 West Grand Street Elizabeth NJ 07202 201 351 3002 Name Disk Interface ROMpak Extender System Color Computer Memory 4K and up Hardware Three foot extender cable Description The Disk Inter face ROMpak Extender is a 40 pin ribbon cable that plugs into the ROMpak port and ter minates three feet later with a 40 pin female connector to connect ROMpaks and the disk interface Gold plated contacts eliminate corrosion Price 29 95 plus 1 for S H Includes male and female connector three feet of 40 conductor cable Available Spectrum Projects 93 1586 Drive Woodhaven NY 11421 212 441 2807 Voice 212 441 3755 Computer Name Versaclock System TRS 80 Color Computer Memory 4K and up Language BASIC or Extended BASIC Description The Versaclock is a full featured highly accurate hardware clock for the Color Computer
40. POKEX 11 H 200 SYS X NEW 410 DATA76 8 207 N commodore E 3 3 x x x x x x x x x Figure 3 100 REM 323232532255555525225353 255 2 22232 2 22 2 2 2 2 2 21 2 21 211 110 REM t 120 REM BASIC LINE DELETE 130 REM t VIC 20 VERSION 140 REM x 150 REM THOMAS HENRY 160 REM x 170 REM t TRANSONIC LABORATORIES 180 REM x 249 NORTON STREET 190 REM x MANKATO MN 56001 200 REM 210 REM XXX X XX 25X32 22XXXXXxXxXkX22X2 522 2XXXXxXkXkXkXk x 220 REM 230 REM Z10 DATA169 76 133 124 169 110 133 55 133 125 169 29 132 56 133 126 320 DATAI64 201 60 208 8 72 165 122 201 0 240 9 104 201 58 144 330 DATAL 96 76 128 0 32 115 0 144 13 240 116 201 45 208 112 340 DATAS2 115 0 201 45 240 105 32 107 201 32 19 198 166 95 164 350 DATA96 134 92 132 93 32 121 0 144 19 240 84 201 45 208 80 360 DATAS2 115 0 208 8 162 255 134 20 134 21 208 3 32 107 201 370 DATAS2 19 198 144 12 160 0 177 95 170 200 177 95 134 95 133 380 DATAIG 56 165 95 229 92 165 96 229 93 144 36 160 0 177 95 390 DATA145 92 230 92 208 2 230 93 230 95 208 2 230 96 165 95 400 DATA197 45 208 232 165 96 197 46 208 226 32 51 197 76 42 197 that due to a quirk in this routine you should print a carriage return to the screen following it This will move the cursor to the proper position on the next line To print a carriag
41. SAVE Y 30NE BY ONE line number n locations 11 and 12 00102 7FD9 Eb 59 INC SAVE INCREMENT START ADDRESS and call routine B5A3 The routine 00103 7FDB DO 02 BNE NOCAR1 n BO EP ES SA INC SAVES will return with the address of the first 00105 7FDF E6 SC NOCAR1 INC ADDRES 3 INCREMENT END ADDRESS byte of the desired line in locations 5C 00106 7FE1 DO 02 BNE NOCAR2 Mn 00107 SFES ES SD TNE ADDRES and 5D You will note that the routine 00108 7FES AS SC NOCAR2 LDA ADDRES 318 END ADDRESS TOUCHING described in the preceding paragraph 00109 7FE7 CS 2A CMP VARBLE 3THE START OF VARIABLES YET 00110 7FE9 DO E8 BNE MOVE 3IF IT ISN T DO MORE ends with the desired data in locations 00111 7FEB AS SD LDA ADDRES 1 11 and 12 whereas this routine 00112 7FED CS 2B CMP VARBLE 1 i SOLIS FEF DO ES DIEMQUE begins with data in these locations 00114 7FF1 20 B6 BA JSR CHAIN sREBUILD CHAINING OF LINES This means that we can chain the two 00115 7FF4 Ag OD DONE LDA 0D SPRINT CARRIAGE RETURN Govik JEFE 20 05 EB JSR CHROIT routines without saving any inter 00117 7FF9 4C AD BA JMP FIXUP 3CLEAN UP POINTERS ETC mediate results 00118 7FFC 4C 00 BF BAD JMP ER ie SOLIP CERE E An interesting feature of this line delete part is quite easy I will let you examine the assembler listing but as an aid to understanding let me describe the key ROM routines used in it You may want to jot these down in your notebook for future refe
42. STANDARD BREAK SERVICE PRESERVE ACC PRESERVE FLAGS PRESERVE X GET FLAGS GET ADD 2 FROM STACK BR IF NOT ON PAGE BOUNDRY DEC PAGE DEC ILLEGAL OPCODE ADDRESS BR IF NO PAGE CROSSED DEC PAGE DEC ADDRESS AGAIN INDEX GET ILLEGAL OP CODE PRESERVE IT RESTORE X RETRIEVE ILLEGAL OP CODE BR FOR NORMAL BREAK RESTORE FLAGS RESTORE ACC BUMP LOW ADDRESS BR IF NO PAGE CROSSED BUMP PAGE MICRO The 6502 6809 Journal incorporated into your program as sim ple instructions A few words of caution first it is necessary to acquaint yourself with the user available monitor subroutines on your system The SYM 1 for example has monitor routines to do some of the functions in listing 2 The Apple as well has monitor routines that can be used to shorten this program Second the illegal op code FF rearranges the stack and hence should be avoided You are now in a position to expand the instruction set of your 6502 based system What instructions should you add Here are a few suggestions integer multiply and divide double precision math operations jump indirect indexed push and pull to a user stack and memory to memory transfer You can even add a pseudo B accumulator and a 16 bit index register The authors may be contacted at the School of Engineering Walla Walla College College Place Washington 99324 MICRO Suteresting Softmare presents OSI C4P MF SOFTWAR
43. The classica rendition with four voice organ music is the highest quality music routine have heard and I was impressed witt the thought that most programmers art not using CoCo s sound abilities tc their fullest Several musical selection are available from Classical Software 8931 Comanche Road Longmont Col orado 80501 They plan to announce music editor with four part tonal struc ture that will allow the user to enter anc play notes directly from sheet music I own one of the early model Colo Computers serial number 337 anc follow news about the Radio Shack 32k PRINT94 SELECTIVE BACKUP PROGRAM 130 IF LEFTS NS N 1 lt gt CHRS O AND LEFT N ND 10 2CHR 255 gt K K 1 COPIED FOR I 1 TO 400 220 IF Z Y THEN PRINT3O PLEASE REINSERT SOURCE DISK No 55 December 1982 CoCo Bits continued modifications I have wanted to upgrade to the new version for a while but have not wanted to be without CoCo for the time it would take to make the change I did increase memory capacity by piggy backing ex isting memory with 16K chips It is a relatively inexpensive procedure and works well giving fewer OM errors One of the major disadvantages of this modification is that Radio Shack is replacing the early boards with an up dated processor board and 64K RAM chips The 64K chips are permanently wired making the upper 32K bank inac to the printer port This allows CoCo to send graphics or
44. The on board baud rate generator features 11 standard baud rates 75 to 38 4K for maximum versatility and compatibility with other systems Extend ed address decoding allows the I O block to be addressed anywhere in the 1 megabyte address space All components feature Gold plated connectors for a lifetime of solid connections All boards are fully buffered for maximum system expansion Each GIMIX Mainframe System is equipped with an industrial quality power supply featuring a ferro resonant constant voltage transformer to insure against problems caused by adverse power input conditions such as A C line voltage fluctua tions etc The supply provides 8 volts at 30 amps and plus or minus 16 volts at 5 amps more than enough capacity to power a fully loaded system and two internal drives The 2MHz GIMIX 6809 PLUS CPU board inciudes a time of day clock with battery back up and 6840 pro grammable timer to provide the programmer with convenient accurate time reference Later addition of 9511 or 9512 arithmetic processors is provided for on the board The unique GIMIX design enables software selection of either OS 9 or FLEX both included in many complete GIMIX systems GIMIX STATIC RAM boards require no complicated refresh timing cycles or clocks for data retention GIMIX memory boards are guaranteed for 2 MHz operation with no wait state or clock stretching required Our low power NMOS RAM requires less than 3 4 amp at 8V for a fully populated 64K boar
45. VISA or MasterCard number Only prepaid orders accepted If you missed the above issues of MICRO they can be ordered now Include 2 50 for each issue BASIC ROM Color BASIC 1 1 in addi tion to checking for and using 32K has a few of the previous bugs removed The 1 1 ROM will send 8 bit serial data FRANKLIN ACE 1000 PA BAM S D 1199 00 MX 80FT Upper and lower case wiGraphics 544 00 AIM 65 4K RAM 465 00 COMPLETE CATALOG FREE COMPUTERS PRINTERS MONITORS MICROPROCESSOR COMPONENTS Bedford Micro Systems P O Box 1182 Bedford Texas 76021 817 283 0013 a VisiCalc keys 50 watt power supply Built in fan No 55 December 1982 Send orders to Apple Utility Disk MICRO P O Box 6502 Chelmsford MA 01824 MICRO A powerful utility that opens awindow into the Color Computer s disks COLORZAP uses the power of the Color Computer to provide both rapid scanning and full screen modifi cation capabilities You can now examine modify and copy programs or data while they re stored on disk Access them by filename or location COLORZAP is programmed largely in BASIC so that you can modify it if you d like but part of it isin machine language to provide fast response All accesses to disk are performed with standard interfaces so any standard Color Computer disk can be examined You can directly access the disk s directory and control information to examine
46. Video for OSI C1P David Cantrell and Terry Terrence Add five chips and several features Home Control Interface for C1P John Krout Add your own ultrasonic control ATARI Meets the BSRX 10 David A Hayes Use ATARI s controller ports 68000 Logic Instructions Joe Hootman Our discussion of the 68000 instruction set continues Programmable Character Generator for OSI Colin Macauley Design your own character set Utilizing the 6502 s Undefined Operation Codes Curtis Nelson Richard Villarreal and Rod Heisler Hardware to use these op codes for new pseudo instructions MICRO The 6502 6809 Journal 5 Lyco Computer Marketing amp Consultants TOORDER TOLL FREE 800 233 8760 CALL US In PA 1 717 398 4079 December ATARI SPECIALS 810 Disk Drive 429 00 32K RAM 79 00 400 32K RAM 349 00 800 48K PERCOM In Stock Single Drive Dual Orive Read ait Atari Disks PRINTERS In Stock Epson Mx 80 Epson Mx 80 FT III Okidata 82A Okidata 83A Okidata 84 Prowriter 1 oaa Prowriter II SMITH CORONA TP 1 ATARI HARDWARE 410 Cassette Recorder 825 Printer 830 Phone Mod B50 Interface PACKAGES CX481 Entertainer CX482 Educator CX483 Programmer CX494 Communicator SOFTWARE CXL4012 MISSILE COMMAND CXL4013 CXL4020 CENTIPEDE CXL4022 609 OO ATARI o A Warner Commun
47. a focus on the purpose of the measurements Further more it combines this decrease in complexity with low cost high speed reliability and precision In what follows the use of simple interfacing devices will be discussed These devices were selected for their flexible operating characteristics which give them quite general utility Examples will illustrate their applica tion to the measurement of tempera ture and light intensity The emphasis will be on specific applications not on No 55 December 1982 design or construction of the devices which are very simple Analog Signals and A D Converters When the transducer of interest pro duces an electrical signal the problem of property measurement is reduced to one of measuring that signal usually voltage current or resistance to the desired degree of accuracy and at an ap propriate rate Many laboratory meas urements require only slow lt 50 Hz data acquisition rates or low 8 bit precision The actual requirements should be evaluated carefully and realistically since they have an impor tant bearing on the technique and in strumentation used to measure the electrical quantities When high speed data acquisition and high resolution are not needed it is remarkably easy to interface many laboratory experiments and measuring devices to the computer As will be demonstrated an appropriate A D con verter selected for its flexibility com bined with a mic
48. address to IC3 a 256 x 4 PROM IC3 is always enabled and is programmed to output a logic state one for an illegal op code and a logic state zero for a legal code Only one of the three PROM outputs is used the others are not programmed The falling edge of the 2 clock in itiates the timing cycle for ICI a monostable multivibrator The output of ICI goes high after a period of time determined by the RC network The time out is set for approximately 750 nano seconds The leading edge time out from IC is used to clock IC2 a dual D flip flop The SYNC line is tied to the clear input of IC2 through two buffers This combination of inputs to IC2 assures that its output will go high only if these three conditions are met the SYNC line is high fetch cycle an illegal op code has been fetched and IC1 has timed out The outputs of IC2 are used to drive open collector inverters tied directly to the data bus When the inputs to the in 1000 MIN GE MICRO The 6502 6809 Journa Figure 1 Timing Diagram for the 6502 Fetch Cycle All times in nano 10 seconds L t LU SYSTEM CLOCK 350 MAX SYNC FETCH CYCLE l 1 1 225MAX ADDRESS FROM CPU l l i i l DATA FROM MEMORY DATA READ BY CPU 93 verters are high illegal op code the outputs force the data lines to a logic state zero simulating a BRK command When the inputs to the inverters are low as under non trapping condi
49. an additional operator when it is desired although this function is seldom needed It is true that FORTH handles sym bols differently depending on whether they are variables constants or ex ecuting subroutine names This is part of the beauty of the language not a weakness Each type of symbol has a different function Subroutine names execute constants leave their value on the stack and variables leave their ad dress so we can suffix them with load or store operators Nothing could be simpler or more efficient uniformity of function by means of inconsistent in ternal operation RPL reverses this giving us consistent internal operation while forsaking clarity of function at the programmer s level This forces us Letterbox continued to be even more aware of what each definition does something I would prefer to be left up to my compiler As Mr Stryker correctly states the FORTH string literal print word and the numeric print words never leave their output string on the stack This is seldom needed and would possibly slow down the system Besides the stack may not be large enough to safely handle this since on the 6502 the FORTH stack is placed in page zero shared with a few other FORTH locations and probably some used by the host computer for disk or terminal I O If we need to alter the string in numeric conversion and print ing FORTH has some primitives avail able for inserting additional charac
50. and GOSUB tokens CHRGOT at B7 is CHRGET without the initial advance of TXTPTR It simply loads the accumulator with whatever byte TXTPTR is pointing to Having found a GOTO THEN or a GOSUB token we can then use the subroutine LINGET at DAOC to read the line number and place it in hex adecimal form in the zero page loca tion LINNUM 50 51 We can use LINGET for this purpose because this is precisely what LINGET was designed to do To help you search through a pro gram to find a line whose number is at LINNUM there is the routine FNDLIN at D61A When this routine returns the carry flag is set if such a line was found otherwise the carry flag is clear In the latter case we procede using CHRGET to look for further GOTOs and GOSUBs If FNDLIN returns with the carry flag set then we have found a reference to a non existent line and a report to this effect is in order This report only needs to consist of 1 the number of the line containing the offending state ment 2 the word GOTO THEN or GOSUB followed by 3 the number of the non existent line referred to For printing numbers we have the No 55 December 1982 Listing 1 continued 0300 0300 20 FB DA 0303 0303 20 97 D6 0306 0306 20 Bl 00 0309 A0 01 030B B1 B8 030D DO 06 030F 20 FB DA 0312 4C DO 03 0315 0315 0315 c8 0316 Bl B8 0318 85 FA 031A C8 031B Bl BS 031D 85 FB 031F 031F A5 B8 0321 18 0322 69 03 0324 85 B
51. and I O signal connections 45 00 N i Get high performance with the ACE 100 07 compact 4 x 5 x 1 7 switching power supply delivering 5V 6A 12V 1A and 24V for the AIM printer 118 00 f Installation kits and other related accessories are also avail able to implement your AIM expansion plans Custom hard ware design programming and assembled systems are also avaitable High quality high capability high performance with high reliability all from Unique Data Systems Call or write for additional information Unique Data Systems Inc 1600 Miraloma Avenue Placentia CA 92670 714 630 1430 102 MICRO The 6502 6809 Journal H Reviews in Brief continued registers Disk tests include sequential and random writing and reading random track seeking and drive speed Pluses Single or multiple tests may be repeated con tinuously with results optionally printed The program is menu driven user friendly fast and crash resistant Minuses The style and depth of the documentation are marginal Documentation The 24 page manual is neatly formatted and printed The writing is comprehensible but often awkward and unpolished It describes in detail how to use the program but gives almost no help to analyze and cor rect problems it finds Skill level required Little skill is needed to run it but moderate hardware knowledge is required to know what to do about reported problems R
52. are trademarks of Technical Systems Consultants Inc 312 927 5510 The Company that delivers OS 9 is a trademark of Microware Inc TWX 910 221 4055 Quality Electronic products since 1975 1982 GIMIX Inc No 55 December 1982 MICRO The 6502 6809 Journal 1 announcincElectroScreen the Superior Alternative to the Traditional Alphanumeric Terminals The ElectroScreen Intelligent Graphics Board Features Terminal e Terminal emulation on power up e 83 characters by 48 lines display Intelligence e Easy switching among user defined character sets e Fast hardware scrolling Graphics 512 x 480 resolution bit mapped display e interleaved memory access fast snow free updates 6809 on board mpu e 6K on board firmware e STD syntax high level graphics command set e Removes host graphics software burden e Flexible text and graphics integration Multiple character sizes e User programs can be run on board See your dealer today The ElectroScreen manual is available for 10 credited toward purchase of the board roScreen has a a Hirira Gia Des d E P r IVac INC 671 3900 Additional Features e SS 50C and SS 64 compatible board e Board communicates with host through parallel latcnes e Composite and TTL level video output e 8 channel 8 bit A D converter e Board occupies 4 address bytes Dealers please contact us for our special E urcduciory package 3711 S George Mason Dr Falls Church Va 2204
53. area If you are interested in joining you may contact Patricia Jackson at 416 425 1116 Call week days after 6 00 p m or on the weekend There is also a user s group in the Fargo North Dakota area Con tact me and I will put your name on the meeting notice mailing list Anyone Listing 1 COPY 10 CLS 20 FPRINT340 BY JOHN STEINER 30 PCLEAR 1 40 CLEAR 2000 DIM FI 67 50 FOR X 3 TO 11 60 DSKI 0 17 X AS BS 70 C AS LEFTS BS 127 BO N O sLEFT C 8 90 EX O MID CS 9 2 100 FOR N O TO 7 110 NS N MID C NE32 1 8 120 EX N MIDS C 9 NK32 3 THEN FIS K NS N EXS N 140 NEXT N 150 NEXT X 160 CLS PRINT264 ENTER Y TO COPY 170 FOR J 0 TO K 180 PRINT29224 FIS J 190 Z INKEY IF Z THEN 190 200 IF Z Y THEN COPY FIS J 210 IF Z Y THEN CLS NEXT I 230 NEXT J MICRO The 6502 6809 Journal PRINTO224 FIS J wishing to pass along similar informa tion can contact me directly at the ad dress shown below It will take two to three months for your notice to appear in MICRO Rumors are that Tandy has signed an agreement with a group of RCA distributors to market the Color Com puter in retail outlets not handling Radio Shack products The new Colo Computer will have a different colo case and new name If you have more details on this or any other news re garding CoCo pass it along Recently I received an interesting musical program cassette
54. both paddle registers and 4 get the left paddle s un jittered reading by PEEKing 936 and the right by PEEKing 937 Be sure to use this routine cautiously in any pro gram that is doing tape input or output because of the risk of clobbering the machine code in the cassette buffer This same routine may also be used to un jitter the light pen reigsters by deleting lines 1190 and 1200 The resulting machine code is more uni versal than the version given in the October 198 article because it can be used with any light pen rather than just the Atari and Commodore pens Should other VIC chip registers be discovered that suffer from jitter they can be easily handled with this routine by merely POKEing the low byte of their addresses into locations 835 and 857 See line 1190 of the listing where this is done for the game paddle registers Because this program is very similar to the one presented in my previous article a full assembly listing is not given Jitter Fixer Subroutine 1000 REM MACHINE LANGUAGE ROUTINE TO REAG JITTERY VIC LOCATIONS i818 REM SUCH AS LIGHT FEM COORDINATES OR GAME PACOLE SETTINGS TO REAG VALUES RETURHED IN LOCATIONS 2 1920 FR 1029 1049 1058 1040 107 1958 1070 1180 1110 1129 1138 1140 1159 1140 1170 AND 727 Od 1188 REM TO REAO LIGHT FEM COOROIMATES CELETE THE MEST THO STATEMENTS 1190 POKE G33 amp E 25 P HE 257 7 1200 POKE Z35 13579 P RHE S59 255 POKE 79 233 PO
55. display enable register has a bit for each sprite as do the sprite multicolor enable sprite ex pand 2X horizonal sprite expand 2X vertical sprite to background priority sprite to sprite collision detect and sprite to background registers Also there is a byte for each sprite s vertical position and a byte for each sprite s horizontal position Since there are more than 256 possible horizontal posi tions there is also a byte containing a ninth X position bit for each sprite It sounds and is complicated How ever this complexity is required to maintain such a powerful graphics mode Read on for details of the dif ferent capabilities of sprite graphics Standard sprites can be displayed in any one of the sixteen colors in a resolution equivalent to the standard bit map mode Multicolor mode allows up to four colors in each sprite and the colors are determined by considering bit pairs in the sprite definition 00 selects screen color 01 the color in sprite multicolor register 0 10 the col or in the appropriate sprite s color register and 11 the color in sprite MICRO The 6502 6809 Journal multicolor register 41 As with the other multicolor modes the horizontal resolution is decreased and the sprites are displayed using double width pixels Each sprite can be expanded to dou ble its horizontal or vertical dimension or both To handle smoothly the entry and exit of sprites on the screen the possi bl
56. falling out of the program Even so you may omit them To use this program with other computers or disk drives you will need only to substitute your disk commands for Commodore s The most difficult task for other disk operating systems is likely to be reading in the program files one character at a time The other essential task is to detect the end of file when it is reached If you know how to do these tasks on your machine you can probably make SOUP work for you Henry Troup and Jim Strasma may be contacted at 1280 Richland Ave Lincoln IL 62656 Listing 1 120 REM MAIN ROUTINE 100 REM SOUP AS OF 7 SEPT 82 110 GOSUB 630 REM PUT MOST USED LINES AT START FOR SPEED 130 NM SOUP FILE A CF amp 140 PRINT 4 NM REM START NEW PAGE 150 GET 1 A REM READ A CHARACTER FROM FILE A 160 SI ST REM REMEMBER I O STATUS OF A 170 IF AS NL THEN A ZES REM TRAP NULL DATA BUG 180 GET 1 B REM READ A CHARACTER FROM FILE B 190 S2 ST REM REMEMBER I O STATUS OF B 200 IF BS NL THEN B ZES REM FIX NULL DATA BUG 210 IF AS B GOTO 428 REM ONLY REPORT DIFFERENCES 220 A ASC A B ASC B REM CONVERT TO DECIMAL CODE 230 N AD GOSUB 4990 REM CONVERT ADDRESS TO HEXADECIMAL 240 PRINT 4 O HX A REM PRINT MISMATCH 250 N A GOSUB 496 REM CONVERT A S VALUE TO HEX FILE B PF REM TITLE 260 PRINT 4 HX B REM amp PRINT IT 270 N B GOSUB 490 REM THEN CONVERT B S MICRO The 6502 6809 Journal No 55 Decemb
57. for mini floppies With the DiskDoubler each drive does the work of two You can have more and larger programs related files and disk utilities on the same disk for easier operation without constant disk changes Your OSI system is an investment in computing power Get the full value from the disk hardware and software that you already own Just write to us and we ll send you the full story on the DiskDoubler along with the rest of our growing family of products for OSI disk systems DiskDoubler is a trademark of Modular Systems Post Office Box 16C Oradell NJ 07649 0016 Telephone 201 262 0093 Modular Systems Capacity up to 58 16 pin or 12 40 pin or any combination sockets inbetween Carefully designed 5 and GND planes provide for the minimum electrical noise low impedance hi capacitance and maximum versatility in the layout of IC s capacitors discretes and 1 0 connectors Wire wrap technique documentation included Terms 45 00 6 Cal Res tax 2 00 S amp H All payments must be in U S funds drawn on a U S bank Outside U S add 10 e Cashier check money order allow 30 day ARO Personal checks add 2 weeks No credit cards or cash Please Spectrum Systems P O Box 2262 Santa Barbara Ca 93120 pou S 30902925 FEES oo Apple Il is a trademark of Apple Computers MICRO The 6502 6809 Journal 83 The 68000 DREAM MACHINE WE SORT OF LIED Motor
58. graphic modes along with sam ple programs Even the little quirks of the system and ways to get around them are mentioned It is good to see Commodore finally paying attention to quality documentation with the VIC 20 and Commodore 64 Program mer s Reference Guides The Guide for the 64 should be available in early December AAICRO 55 computer mail order wes 16K 5269 32K 349 48K 429 410 Recorder 810 Disk Drive 822 Printer 825 Printer 830 Modem 820 Printer 850 Interface CX40 Joysticks Pair CX853 Atari 16K Ram Centipede Caverns of Mars Asteroids Missile Command Star Raiders DATASOFT Pacific Coast Highway Canyon Climber Tumble Bugs Shooting Arcade Clowns and Balloons Graphic Master Graphic Generator Micro Painter Text Wizard r Spell Wizard Bishop s Square Jawbreaker Softporn Wizard and the Princess The Next Step Mission Asteroid Mouskattack File Manager 800 Chicken Dodge Racer 20 eee sn Synassembler Page 6 Protector Nautilus Krazy Shoot Out K razy Kritters K razy Antics K star Patrol STICK STAND 929 west Microtek 16K Ram Axlon Ramdisk 128K 429 95 Intec 48K Board 159 00 intek 32K Board 7400 One Year Extended Warranty CX481 Entertainer Package CX482 Educator Package 130 00 CX 483 Programmer Package 54 00 CX 484 Communicator Package 344 00 Atari
59. greater than 63 but less than 32768 plus all references to VARIABLEs CVARIABLEs and what not Dj all references to literal numeric quantities not covered under B or C and E all routine invocations other than not covered under A Be sure if you count a routine invocation under E that you also con sider the body of that routine part of the program source Now form the sum A B 2 C 3 D 3 E This is a rough approximation of the number of object program bytes that would be re quired were the program translated absolutely mechanically from FORTH into RPL Multiply this by about 0 8 to atrive at the memory size of the MICRO The 6502 6809 Journal equivalent program had it been de signed in RPL to begin with Next a discussion on symbol handling The fact that RPL is more ef ficient has been demonstrated already That it is simpler may be difficult to appreciate second hand like this but RPL gives us consistent internal oper ation without forsaking clarity of function at the programmer s level The question of how aware the program mer needs to be as to what each defini tion does has nothing to do with it The ability to manipulate character strings conveniently is fundamental to most user oriented software develop ment Indeed your remark about the size and location of the FORTH stack points up the fact that this is one area in which FORTH s extensibility does it little good RPL l
60. is publishing an OSI book OSI users will be getting a book of their own Early in 1983 MICRO magazine plans to publish a strictly OSI volume We will include a variety of topics BASIC Enhancements Machine Language Aids Hardware I O Enhancements and a What s Where in the OSI reference guide We ll supply more details soon Let us know what you would like to see in this book Or if you ve written an article program that you think should be a part of this volume send it in now UPGRADE YOUR AIM 65 INSTANTLY A trademark of Rockwell Inc To A 6809 Development System With The MACH 9 From No 55 December 1982 INTRODUCTORY PRICE 239 Plus 6 U P S And Handling Includes 6809 CPU Plug in Assembly Super set of AIM Monitor Two Pass Symbolic Assembler Complete Monitor Source Listings Enhanced Cut amp Paste Editor 200 Page Manual Full I O Control local BUS 5 locking low force ROM sockets and 2K Static RAM MM sS Inc 1110 E Pennsylvania 7 Tucson AZ 85714 602 746 0418 MICRO The 6502 6809 Journal master charge 25 APPLESOFT GOTO GOSUB Checking Routine This 194 byte machine language routine will check all GOTO and GOSUB references in an Applesoft program and display any that refer to non existent lines The source program also demonstrates how to make use of the machine language subroutines available in the Applesoft I
61. it does indicate proper location and operation The DIFFERENT START ADDRESS prompt allows listing to begin after an embedded binary binary addresses will appear in normal print outs ILISZTER can be RUN after any RESET or list completion without disturbing Integer source code Printer control in lines 107 to 110 should be set to your particular printer and interface Subroutines at lines 17 and 18 can be changed to other runtime control Source code control characters are converted to letters before output Lines that Parse in the Right A source code line parse begins at 14 ILISZTER OO 0 Ud 0 NmPoO 11 12 13 14 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 4l 42 43 45 47 49 51 55 56 57 PS PEEK 77 256 PEEK 76 l HIMEM PS GOTO 82 REM GET BYTE SUBROUTINE P P 1 B PEEK P RETURN REM BLANK LINE PRINT SUBROUTINE D 0 GOSUB 6 PRINT S RETURN REM TEST PAGE SUBROUTINE LC LC 1 IF LC lt LP THEN RETURN REM NOT A NEW PAGE GOSUB 17 LC 6 PC PC 1 PRINT SS PRINT BB LB continued REM A FORM FEED FOR TOP OF NEXT PAGE ALLOWS VARIATION FOR DIFFERENT P RINTERS FOR K 1 TO 4 PRINT SS NEXT REM PRINT THE HEADER H 4 Integer Page STRS PC FORK 1 TO 4 E INT LL LEN H K 2 1 PRINT MS LEFTS BBS E H K NEXT K FRE 0 PRINT S IF NOT D TH
62. just before it reaches the 6883 Failing this use a 33 ohm re sistor This is done in Tandy s 32K ver sion and is recommended by Motorola in their 6883 data sheet Later models of the PC board have a place on the PC board where you may connect the lead from the extra bunk of chips that avoids soldering directly to the 6883 Myron Pulier M D from Teaneck NJ sent in this update The LISZT program in the May 1982 issue of MICRO 48 37 makes readable BASIC listings The authors used a disk zap utility program to get lower case characters in the DATA statements Lacking such I used the temporary patch shown in listing 1 appended to LISZTER This patch creates new DATA strings after converting all alphabetic characters to lower case except the first one in each string These new strings are read into a TEXT file named DP When this file is EXECed it replaces the LISZTER DATA statements with the new ones and displays the result for confirmation The patch itself is removed so the converted program may be SAVEd To operate the zap bypass program LOAD LISZTER type in the enclosed statements and save the combined pro gram as TEMP in case something goes wrong Then type RUN 1000 If the run is successful save the program now in memory as your new copy of LISZTER Continued on page 98 No 55 December 1982 1880 1005 101 1015 1a2a 1 3a 1042 1845 1252 1255 106a
63. means a print speed of 100 cps high resolution bit image and block graphics and extra fast forms feed Gemini s flexibility is embodied in its diverse specialized printing capabilities such as super sub script underlining back spacing double strike mode and emphasized print mode An other extraordinary standard SUG SU feature is a 2 3K buffer An additional 4K is optional That s twice the memory of lead ing comparable printers And Gemini is compatible with most software packages that support the leading printers Gemini reliability is more than just a promise It s as concrete as a 180 day war ranty 90 days for ribbon and print head a mean time between failure rate of 5 million lines a print head life of over 100 million characters and a 100 duty cycle that allows the Gemini to print continuously Plus prompt nationwide service is readily available So if you re looking for an incredibly high quality low cost printer that s out of this world look to the manufacturer with its feet on the ground Star and the Gemini 10 Gemini 15 dot matrix printers MAKING A NAME FOR OUF A NAME FOR OURSELVES 1120 Empire Central Place Suite 216 Dallas TX 75247 For more information please call Bob Hazzard Vice President at 214 631 8560 IAICRO Letterbox Back and FORTH Dear Editor I was quite pleased with the two articles on FORTH in the June issue of MICRO Regarding the benc
64. no ECT 3 ui e3jaoq eveye punog 8S9 SOW ONT O ii OIA 40 04 U0D EdBjJe U O6pIA 9959 SOW OUJIW t9 3NHOGOWWOO EE Er E M n T MEAT LLoVG 9 cvS SLovs vLoVS ZcvS eLovS Jeuioeg Vv6cES 6c S CEES 16Z S O6cES 68ctG 88c S L8ZES 98ZES S8ces v8ces 8c S c8ZES L8ZES 08ce s 64c 8 BLES LLeeS 94c 8 SLCES VvLCES ELES sora A rejuozuou xg puedxe 7 0 sedg 4 0 uonisod j0p X O 1019S ujootus suunioo Or ejdsip 1x9 uuinjoo Or 8 19918 i dew yig 10 1x81 ajqeua epoui sojoonINW i0 OL LIG SIHL 13S SAVM1V pesnun JeisiDeH 01 U0D OIA aiqeue ejqeue Aejdsip ayyids SOd A yo e uad iur SOd X yo e uad jubr DUI eJeduioo 10 enjeA 16 SBJ eyJM peeH 2 0 uonisod 1o0p A O j 0798 ujooug SM0J GZ e dsip 1x81 MOJ GZ vZ 199198 yueiQq 0 0Joo 16pJOq 0 ue9J9S xyuelg A giqeue epoui dew tig ajqeue epouj 1Xej JOjOO pepuelx3 99ZEG ees 8 yq esedw0d je1seu Jeisibeg JO1 U0D OIA p1009 x JO GSW Sod X 4 0 seiuds Sod A Z 9110S Sod X 4 ayds SOd A 9 eiudg Sod X 9 eiudg SOd A S ads Sod X S ads SOd A v elds Sod X v eiudo SOd A e11dg Sod X eiuds Sod A Z eiuds Sod X c eiuds 80d A 1 S Sod X eiuds Sod A 0 eiuds SOd X 0 eiuds peuyepun Uo UO Q O1JUOD JOJOW e1j9sse2 peso o yOUMS 9sues YO I
65. software Remote Telemetry XON XOFF Control Transfer to fr Disk v User Program Cntl Printer Output v Status Line 139 COLOR CHART AIM SYM system video display 64 x 16 characters 8 colors plugs into ROM socket 4K RAM Multiple modes semi graphics alpha PET CBM color graphic display 128 x 192 pixels generate color bar graphs on one screen with data on main screen RS170 video color chart 6847 based video output COLOR VIDEO FOR PET CBM AIM SYM ROMSWITCH 4 ROMS IN 1 SPACEMAKER 39 95 Switch 4 ROMs into the same socket A stide switch activates one of four Electronic controls insure no glitches and allow ROM switching under soft ware control ROMs can be switched from the keyboard fullFORTH for APPLE PET FULL FIG FORTH implementation plus conditional assembler floating point string handling multidimensional arrays and disk virtual mamory fuliIFORTH from IDPC Co 100 Target Compiler 50 SEE YOUR DEALER OR Langhorne Pa 19047 cy mmmh P O Box 102 MICROTECH 215 757 0284 DEALER INQUIRIES INVITED SJB DISTRIBUTORS THE MOST COMPETITIVE PRICES ON COMMODORE PRODUCTS C fololpalpalel alar INTERFACES ADA 1450 Serial ADA 1600 Parallel RS232 cable for Vic or 64 2m Video Audio cable for 64 amp monitor MONITORS Great resolution for the CBM 64 or VIC Panasonic 13 Color Amdek Color I S NEC JB 1201M 12 Color NEC JB 1201 12 green p
66. somewhat robotic A continuously variable slope delta modulation developed by Motorola uses the same integrated circuit for storing and reproducing speech This is No 55 December 1982 the only method available today that permits the user to sample his own speech The unit to be described in this article is inexpensive fifteen dollars for parts and the knowledge require ments of acoustics and linguistics are minimal The user should know how to use a tape recorder and write some sim ple programs The hardest requirement is the timing of the loops The quality of reproduction is quite good and depends heavily on the quality of the tape recording equipment The digital data can be stored in read write or read only memory or it can be saved on magnetic tape or disk The phoneme concatenation method uses the SCO1 phoneme syn thesizer developed by Votrax The results of this procedure are mechani MICRO The 6502 6809 Journal cal but it is important to recognize that this is the only real synthesis procedure for the production of speech by a com puter that is it is not necessary to sample speech to obtain data to be reproduced by the computer as in the other methods The voice is generated by entering numbers into the computer and the SCOl or any other device Naturally since this method does not reproduce speech the generated voice does not resemble the voice of the operator or anybody else In its most e
67. the busiest train switchyard ever dodging speeding trains and handcars to rescue the poor little hoboes on the wrong side of the tracks You have only so much time to save all the hoboes With many levels of difficulty this action graphics game is fun for everyone Price 21 95 cassette 26 95 disk plus 2 shipping Includes cassette or disk with instructions Author BJ Available Computerware Box 668 Encinitas CA 92024 714 436 3512 Name System Name K Star Patrol System Atari 400 800 Memory 8K Language Machine Code Hardware ROM cartridge Description An exciting galac tic encounter between the player s patrol flight and an onslaught of attacking alien craft The player s mission is further complicated by a voracious intergalactic leech and the aliens low level avoidance system High degree of challenge and entertain ment for even the most ex perienced player Price 39 95 suggested retail Includes ROM cartridge and full color instruction booklet Author Dr Keith Dreyer and Torre Meeder Available K Byte 1705 Austin Troy MI 48084 or your local computer software retailer Name System Death Race 82 Apple II with Applesoft in ROM Memory 48K Language BASIC Assembler Hardware One disk drive game paddies Description Death Race 82 combines the skill of perilous driving with the thrill of a high speed chase Behind you is a robot car fully equipped with hi
68. the program is run it makes a call to the squeeze routine which compresses the program to take less space and run faster Troup and Strasma s SOUP p 52 is a compare program for machine language routines saved on disk Thomas Henry s BASIC Line Delete for PET and VIC p 47 adds the capability of deleting more than one BASIC program line at a time In our Short Subjects section p 97 we have two items of interest to users of Commodore machines Terry Peterson explains the ASCH character set on the SuperPET and reveals some hidden features VIC Jitter Fixer by Contributing Editor Dave Malmberg can be added to your paddle joystick and light pen programs to give you more reliable readings from these devices Finally we feature the new Commodore 64 computer in both PET Vet and on our data sheet Loren Wright s column p 54 reviews the graphic capabilities of this exciting new computer and the data sheep p 109 pro vides a memory map interfacing information and lists of graphics and sound registers No 55 December 1982 Expand Your Computer s Capabilities with New Hardware The BSR X 10 allows you to control remotely a wide variety of electrical devices in your home There are two versions available one sends its signals using power lines as antennas and another uses ultrasonic signals Each light or appliance is connected to its own receiver module John Krout s Home Control Interface for C1P
69. ticipated In addition to having 64K standard rumor has it that the Super Apple II will contain far fewer chips on the mother board and will sell for substantially less The Franklin looks like an Apple II especially when you take the cover off the only noticeable difference is the larger power supply The mother board looks almost identical although somewhat enlarged The chips are all the same and the I O slots are similar The Franklin is delivered with Applesoft and the Apple monitor ROMs in stalled The other principal differences are that the Franklin accepts and displays lower case and has no color capabili ties soon to be remedied according to the manufacturer Having lost the preliminary injunction ruling against Franklin Apple is asking for a reconsideration due to a similar case that ruled in favor of the manufacturer Apple s position is that object code is copyrightable and therefore proprietary and not usable by others Just to make the issue more complicated Franklin is suing Apple for price manipulation and threatening Apple dealers who want to carry Franklin products Also pushing on the retail price are the Far East imita tions yet to be seen in the U S which are selling at one fifth the normal European selling price There are rumors that the Mackintosh also from Apple a cheaper simpler version of Lisa is still in the develop mental stage and is not expected until the end of next year at the earliest
70. values were written to the shadow registers The hardware registers are updated before line 292 is executed Line 292 puts the bird on the screen in the position indicated by P If the posi tion were not altered this line doesn t actually do anything If the position value has been changed it draws the bird in the new position There is still a slight flicker every once in awhile but this will not be noticeable if other things are happening at the same time The only way to eliminate the flicker altogether is to use machine language to update the bird as well By using shadow registers you could write a vertical blank inter rupt routine that would take your posi tion values and reduce them to the screen position and the fine scrolling values BASIC is a much easier lan guage in which to create programs but a little machine language now and then can help smooth out the rough edges If you can get away with routines as short as the one in listing 1 it is certainly worth it What To Do With This Information The character graphics example here was intended for instruction only However the shadowing described in this article combined with the custom character set and fine scrolling describ ed in parts 1 and 2 needs only to be combined with a little imagination to produce some elegant software Paul Swanson is our Atari columnist You may contact him at 97 Jackson Street Cambridge MA 02140 ACRO INICRO
71. will relocate itself around any other machine language program at top of memory Will upload and download and run BASIC programs With BASIC program will upload and download standard data files 100 page manual gives program listing for BASIC programs Excellent text editor designed to work with THE COMMUNICATOR THE COMMUNICATOR 200 THE COMMUNICATOR and Text Editor 40 U D S 1200 baud modem 625 U D S 1200 baud 450 THE COMMUNICATOR and Hayes Hayes 300 1200 baud 595 300 1200 baud modem 770 We sell U D S and Hayes 300 baud modems at excellent prices AMPLIFY INC 2325 Macbride lowa City lowa 52240 319 337 8378 trademarks Adds Regent Inc Lear Siegler Inc Televideo Systems Inc No 55 December 1982 ee commodore Mi this mode it is important that it is sup plied a constant current A simple cir cuit that will accomplish this is _ shown in figure 5 Concluding Comments The general utility of the A D con verter computer printer combination deserves reiteration In going from one application to another only portions of the applications program need to be changed the data acquisition routines remain unaltered The A D devices previously described can be adapted to a variety of resistance voltage and cur rent measurements with little or no modification The flexibility of these A D converters the computational capability of the microcomputer in the reduction of data and the high resolut
72. 0 Color II 699 00 Color III 429 00 12 Green 13 Color 1400 13 Color 1401 Mid Res ZENITH Sharp 13 Color TV PANASONIC TR 12C MIP High Res Green CT 160 Dual Mode Color OO 648 33 ll IN NV CALL 702 588 5854 P O BOX 8889 STATELINE NV 89449 in stock items shipped same day you call No risk no deposit on C O D orders Pre paid orders receive free shipping within the continental United States with no waiting period for certified checks or money orders Add 3 minimum 3 00 shipping and handling on all C O D and Credit Card orders NV and PA residents add sales tax Ail items subject to availability and price change NOTE We stock manufacturer s and third party software for most all computers on the market Call today for our new catalogue FRANKLIN M 64K Personal Computer Hardware Software and peripheral compatable with the Apple I and even has some features not found on the Apple HEWLETT PARKAR HPe85 1969 HP 85 16K Memory Module 5 1 4 Dual Master Disk Drive Hard Disk w Floppy Hard Disk Sweet Lips Plotter 80 Column Printer U HEWLETT PACKARD HP 41CV CALCULATOR 3209 HP AIC oorner t ta aas 149 00 ERT 1969 00 169 00 1799 00 PC 1500 Gy POCKET COMPUTER ALSO AVAILABLE Printer w cassette interface cassette tape recorder and 4K and 8K RAM EXTENSIONS cattle COMPUTER 64K RAM 780 KB Disk Storage Word Processing Ul
73. 0 0 0 128 competent technicians only il 0 0 128 128 0 128 128 0 0 128 Tbe program in listing 1 loads a 12 128 0 128 128 0 0 128 0 0 128 machine language program into page 6 13 0 0 0 0 0 128 128 128 128 128 of memory Line 100 sets up controller 14 128 0 0 0 0 0 128 128 128 128 jack 1 pin 1 as output Table 1 lists 15 0 128 0 0 0 128 0 128 128 128 the code that the BSR X 10 understands 16 128 128 0 0 0 0 0 128 128 128 The machine language program sends this code out controller jack 1 pin 1 whenever it is called by the USR routine Figure 1 BSR For example if you have made the ap propriate hardware modifications have typed in the program in listing 1 and NOR1 M8K cD4001 now want to turn all lights on line 110 ENT 3 5 GREEN WIRE ike this GOING TO of your program should look like this cu s E BOARD PIN 1 cst 10K 0 001 u F 110 X USR 1536 0 0 0 128 128 128 128 128 0 0 Now turn on channel five 82 1N4148 TIL 117 VSS BSR MICRO The 6502 6809 Journal No 55 December 198 OHIO SCIENTIFIC NEW PROGRAMS SCOUT Full color machine Listing 1 ie For ADD 15 2a DATA z EAD INST POKE ADG IHST 169 u4 42 6 32 1 amp 25 language fast action and 3 163 graphics After a year of EN 6 development comes the all ph agi puis E machine language SCOUT 184 4a Mad Patrol the planet surface pro 45 DATA 6 76 tecti
74. 0 1F 227 DFE 13 1F 11E1 228 x 11E1 00 229 DLMi DFE 13 V b tim 11bE2 49 53 20 230 asc IS IT INFUT OR OUTFUT er d 5 1165349 54 2 11E8 49 4E 50 11EE 55 54 20 ITld XE 11EE 4F 52 2 f 11F1 4F 55 54 11F4 50 55 54 11F713F 11F8 0D 1F 231 DFE 13 91F 11FA 232 x 11FA150 4C 4S 233 DLM3 ASC PLEASE ENTER LAST ADDRESS 11FDi41 53 45 1200 2C 20 45 wa S 1203 4E 54 45 1206 52 20 4C 1209 41 53 54 Diskettes and all your media needs 120C 20 41 44 Our REGULAR prices are SPECIAL 120F 44 52 45 1212 53 53 CALL FREE 800 421 3957 1214 0D 1F 234 DFE 13 1F 1216 235 x C 0 D charge cards accepted 1216150 4C 45 236 DLM2 ASC PLEASE SIGNAL WHEN READY Excellent dealer program 1219341 53 45 121C 2C 20 5 Sori 121F149 47 4E 1222241 4C 20 1225 57 48 45 1418 West Shaw Avenue 1228 4E 20 52 Fresno CA 93711 1228 45 41 44 1226359 In CaL call 209 221 1118 122F20D 1F 237 DFE 13 51F 12313 238 x Foothill of The Sierras XXX SUCCESSFUL ASSEMBLY NO ERRORS 72 MICRO The 6502 6809 Journal No 55 December 19 Voice Output Circuit sample by changing the initial and final locations of the part to be reproduced If the message has pauses it is pinnae possible to save memory by converting IN the reproduction program into a sub routine making a call for each one of the parts with appropriate waiting loops separating them If it is better to leave the pauses in clear the tape noise by storing hexadecimal 55 in all the loc
75. 0 CPS 1152 16 paper width 132 232 columns 2K buf fer dot addressable graphics with tractor feed 21 ATARI Character Graphics from BASIC Part 3 by Paul Swanson You can remove the screen flicker by adding a short machine language program to Atari s vertical blank interrupt routine Character Graphics requires Atari 400 800 Last month I explained how to enable and use Atari s fine scrolling function The only big problem was that the screen flickered a little because you had to shut off ANTIC along with the dis play in order to alter the horizontal scroll register There are several registers like that you can t write to them while ANTIC is displaying a screen or you get strange effects Most of these are taken care of by shadowing However the horizontal scroll register is not shadowed so we need a different technique Shadowing Shadowing is a method of updating video related registers without inter rupting the display in progress Certain memory locations shadow registers are set aside to represent the actual video registers When ANTIC com pletes the job of displaying one screen it sends an interrupt signal to the 6502 Since ANTIC is not doing anything but waiting for the electron beam to return to the upper left corner of the screen the 6502 has time to execute many in structions Among the things accom plished during this vertical blank period is an update of the actual v
76. 0 IFISINT 1 15 X1S9THENFPRINT PRINT entered as 1 06 FRINTZ DATA 2 2 5 GO0TOZO 40 INFUT Q 258 PRINT Us 4S M4 IN 400040 12 zo Ag STR PEEK CI X FRINTRIG Zo M1 INT 120080 7 AS LEN AS 1 5 S1 SS MS INT 6800 0 12 40 NEXT 1 40 D 12560 SO PRINT 65 DAZINT IMA D RAZINMTCCMA DAXD 5 60 PRINT 2SO PORE1L1 24 FORE12 2 70 Ri INT M1 5 70 FRINT ZO FORIZOTOL7Z READO 75 D amp zINT GOM amp D zR6 INTCOM6 D amp XD 5 FOREI 545 A NEXT 26 FOEES75 RA POEKE6BO DA j 80 FRINT 4O NEW f 85 FOKE6SS Di 90 PRINT POEES1S O0 RUN 90 PORE691 R6 FORES6946 D 9S FOKES17 0 Listing 6 60000 DATAZ2 5 174 144 175 60005 DATASS 2 198 21 208 2 60010 Ree ee 173 73 60015 50020 DATA124 DATAS 1 DATAZ 198 2 208 239 96 169 54 141 0 240 DATA1I7 141 06 246 75 162 2 169 amp 4 141 0 50040 DATA169 17 141 0 240 76 178 2 16 60045 DATA75 145 252 16 0050 DATAS 75 145 252 95 560055 DATA176 0 128 64 192 8 24 20 POkE11 24 POKE12 2 30 FORIzOTO0175 READA POEEI E5465 A NEXT 40 NEW PORES15 02 RUN 64 iai 9 240 182 4113 4 169 17 141 2 15D 15 144 40 54 7 jud Plus Sensational Limited Time Savings On Ohio Scientific C1P Series personal computers Superboard and C1P accessories spare replacement parts printers monitors integrated circuits and other computer related components To Order Call us directly or return order coupon
77. 05 854 0271 Please include your Name Address Call Sign or Phone Number NAKED 09 SS 50 6809 CPU CARD TSC FLEX DOS ASSEMBLER EDITOR MICRO The 6502 6809 Journal QCB 9 SINGLE BOARD COMPUTER 6809 BASED RUNS TSC FLEX DOS x QCB 9 S 100 BUS x QCB 9 2 SS 50 BUS 119 00 PARTIAL KIT FEATURES 5 4 Floppy Controller Serial RS 232 Port Centronics Type Printer Port Keyboard Parallel Port 24K Bytes of Memory QBUG Resident Monitor 6802 Adaptor FULLY ASSEMBLED amp TESTED 389 00 48 hour Burn in 90 Day Warranty 49 95 1K OF RAM AT E400 Assembied amp Tested 149 00 CURED 6K OF EPROM AT E800 FFFF 2 MHZ Version 189 00 Only HIGH QUALITY DOUBLE SIDED PCB x SOLDER MASKED x SILK SCREENED 150 00 50 00 QBUG RESIDENT MONITOR Disc Boot x Memory Test x Memory Exam amp Exchange Zero Memory x Jump to User Program Memory Dump Fil Memory Register Display amp Change QBUG IS A TRADEMARK OF LOGICAL DEVICES INC Copyright 1981 PHONE ORDERS 305 776 5870 LOGICAL DEVICES INC COMPUTER PRODUCTS DIVISION 781 W OAKLAND PARK BLVD FT LAUDERDALE FL 33311 TWX 510 955 9496 WE ACCEPT VISA MC CHECKS C O D MONEY ORDER Break Points 99 INCRO Reviews in Brief Spellmaster Commodore 80 column screen and dual disk 40 and 64 column versions expected soon For Wordpro files Wordcraft
78. 1 2 MICRO The 6502 6809 Journal No 55 December 1982 INICRO December Highlights Commodore Machines Featured This month we cover the full range of Commodore s machines the PET VIC SuperPET and the exciting new Commodore 64 Each machine has its own distinct features but also shares characteristics with the other Commodore family members CBM users will want to read all the Commodore related articles in this issue The second part of the University of Rochester s series p 59 discusses the use of an inexpensive device the analog transducer which can be applied to many problems outside the college teaching laboratory The analog transducer makes it possible for your digital computer to deal with quantities measured on a continuous scale light voltages densities Contributing Editor Jim Strasma starts on a six part series p 37 that will help you write better program packages In particular it will cover CBM s powerful yet poorly understood relative record system The first part however deals with designing a modular program package setting things up and passing parameters Jim uses por tions of the public domain program Bennett s Mail List 4040 to illustrate his points We also offer a number of utilities for Commodore machines Hans Hoogstraat s BASIC Squeeze for PET p 42 is a cassette buffer sized program that can be saved with a fully expanded and commented BASIC program When
79. 1 50 NO 55 DECEMBER 1982 tise 83 MA O THE 6502 6809 JOURNAL iod did LET Vas a Em Ez Vey SS duod te CRT af M S uu ya d P P x dee m Commodore Feature ATARI Graphics SS APPLESOFT GOTO GOSUB Checker 68000 Logic Instructions Swoaraneon VisiCalc is a registered trademark of VisiCorp MAGICALC is a trademark of Artsci Inc ANS SN EN on J A 17 N77 Ke FLEX 0S 9 LEVEL ONE UNIFLEX OS 9 LEVEL TWO ONLY GIMIX Systems can be configured to run any of these GIMIX systems utilize the most powerful 6809 operating systems FLEX UniFLEX OS 9 LEVEL ONE and TWO the systems the PROs use This means a wide selection of software to choose from as well the ability to develop sophisticated multi user multi tasking programs on your GIMIX System The GIMIX CLASSY CHASSIS consists of a heavy weight aluminum mainframe cabinet which provides more than ample protection for the electronics and 1 or 2 optional 5 A drives Backpanel connectors can be added for convenient connection of terminals printers drives and other peripherals A 3 position locking keyswitch enables users to disable the front panel reset button to pre vent accidental or unauthorized tampering with the system The GIMIX system mother board provides fifteen 50 pin slots and eight 30 pin I O slots the most room for expansion of any SS50 system available
80. 128K Language Business BASIC Hardware 132 column printer and either second diskette drive or hard drive Description GL PLUS is an extremely flexible and easy to MICRO The 6502 6809 Journal Includes detailed instruction Name pd l N manual plastic keyboard System Apple IL or Apple SVS 2 E igor emory S SSS Author Eigen Systems Language Assembly SS Available Hardware One disk drive Spectrum Projects paddle or joystick 93 1586 Drive Description Deranged Grud Terrorizes Countryside Pro tected by Borg the invincible Drageroo a notorious band of dragons the infamous Grud has surrounded his hide out with electrified mazes Can no one crack the code and rid us of this menace Price 29 95 Author Dan Thompson Available Sirius Software Inc 10364 Rockingham Dr Sacramento CA 95827 916 366 1195 Name D F T System TRS 80 Color Computer Memory 16K Language Machine Hardware Cassette recorder Description This terminal program allows you to down load any type of program BASIC or machine language or ASCII with no conversion It allows transfer of programs between TRS 80 Mod I s Mod III s and the Color Computer Price 19 95 Includes one tape Author Bob Withers Available Computer Shack 1691 Eason Pontiac MI 48054 Correction The software listing for Jinsam Executive 52 116 from jINI Micro Systems Inc should have read 32K for CBM w 8050 and 128K IBM
81. 137 pages 54 x 8 inches paperback ISBN 3 921682 77 0 17 95 Kilobaud Klassroom by George Young and Peter Stark Wayne Green Books Peterborough NH 03458 1982 419 pages 6 x 9 inches paperback ISBN 0 88006 027 1 14 95 Computers for Kids by Sally Green wood Larson Creative Computing Press P O Box 789 M Morristown NJ 07960 1981 73 pages paperback ISBN 0 916638 21 6 4 95 Ciarcia s Circuit Cellar Volume III by Steve Ciarcia BYTE McGraw Hill 70 Main St Peterborough NH 03458 1982 228 pages 8 4 x 11 inches paperback ISBN 0 07 010965 6 12 95 Techniques for Creating Golden Deli cious Games for the Apple Computer by Howard M Franklin Joanne Kolt now and Leroy Finkel John Wiley and Sons Inc 605 Third Ave N Y C NY 10158 1982 150 pages paperback ISBN 0 471 09083 2 12 95 BASIC for Business by Douglas Hergert SYBEX 2344 Sixth Street Berkeley CA 94710 1982 223 pages 7 x 9 inches paperback ISBN 0 89588 080 6 12 95 Computers for People by Jerry Willis and Merl Miller Dilithium Press P O Box 606 Beaverton OR 97075 1982 200 pages 54 x 81 inches paperback ISBN 0 918398 64 9 7 95 INICRO No 55 December 1982 BUY SELL TRADE COMPUTER amp HAM EQUIPMENT C COMPUTER T TRADER PERMANENT SUBSCRIPTION 10 00 Low Ad Rates Mailed Monthly COMPUTER TRADER Chet Lambert W4WDR 1704 Sam Drive Birmingham AL 35235 2
82. 2 IF B 93 AND NOT RF THEN GOSUB 4 GOTO 34 REM SEPA RATE REM GROUPS BY BLANK LINES IF B 93 AND RF GOTO 34 IF RF THEN RF 0 GOSUB 4 REM RE ENTRY POINT FOR NEXT BYTE IN STATEMENT DECISION IF B 28 GOTO 39 REM BYTE IS A TOKEN IF B 55 THEN B 159 REM RUBOUT SFF BECOMES UNDERLINE BETWEEN B ARS B B 28 IF B lt 32 THEN B B 64 G GS CHRS 124 CHRS B B 124 REM PUT CONTROL CHARACTERS BETWEEN BARS G G CHR B GOSUB 2 GOTO 34 REM TOKENS IF V B gt 1 THEN G GOTO 114 REM UNUSED TOKEN PROBABLE BINARY PROGRAM ATTACHED SO GATHERING IS NULLED IF B 1 OR B 3 THEN GS G S GOTO 57 REM FORCE A NEW PRINT L INE ON E O L OR A COLON DELIMITER SPACE ATTACHED TO PREVENT PRINT L INE CRASH IF B 93 THEN TR TR 1 RF 1 RS 1 REM A REM IF B 37 AND PEEK P 1 85 THEN G G TS B CF 1 GOTO 57 REM FORCE A NEW LINE ON THEN FOLLOWED BY FOR SET CONDITIONAL lt 85 THEN FF 1 REM A FOR lt gt 89 GOTO 51 REM SKIP AROUND A NEXT FS FS 1 PT P 1 IF CF THEN FS FS 1 REM DECREMENT FOR SP ACER ON IF FLAG SET BEGIN SCANNING AHEAD FOR 2 OR MORE IT RATORS 1l OR BT 3 GOM 49 REM NO OTHER ITERATOR FS 1 REM COMMA FCUND DECREMENT FOR SPACER LA BC GOTO 46 REM CHECK AGAIN FOR ANOTHER IF FS lt O THEN FS 0 REM GATHER TOKEN THEN TEST FOR A FOLLOWING 3 BYTE NUMBER GROUP G G TS B L B GOSUB 2 IF V L O GOTO 34 REM NO NUMBER SHO
83. 220 230 240 D p Print D OPEN ILISZT Print D WRITE ILISZT 250 260 270 Print POKE74 PEEK 76 Print POKE75 PEEK 77 280 290 300 310 320 330 Print POKE76 PEEK 202 Print POKE77 PEEK 203 Print RUN ILISZTER Print D CLOSE TEXT FILE GENERATOR FOR ILISZT VERSION 3 0 16 APRIL 1982 LHA MAKE INTEGER LOMEM POINTER HOLD ENDING OF INTEGER PROGRAM MAKE INTEGER HIMEM POINTER HOLD START OF INTEGER PROGRAM pointer re arrangement as in the LISZT predecessor Total code will probably exceed the 4 5K bytes of a REM less ILISZTER in Applesoft MAKE ILISZT can be either language the created text fiie will be the same ILISZTER has successfully handled a 23K Integer program printout plus one program with two embedded binary code sections References 1 Apple Pugetsound Program Library Exchange public domain disks members only Printouts of 1057 programs fil three large loose leaf notebooks about a quarter are Integer Higher Text by Ron and Darrell Aldrich Call A P P L E version One Integer program has two binary embedments MICRO on the Apple Volume 1 MICRO INK pages 198 203 PEEKing at Call A P P L E Volume 2 pages 44 61 Apple Puget 5 What s Where in 6 The Inspector sound Program Library Exchange 1979 the Apple William F Luebbert MICRO INK For address locations only Omega Micro ware Inc is on
84. 2350 SNE NEXTOUT YES YALIO LINE j 2366 eB3E3 a8 2376 DELCHR DET DELETE LAST OUTPUT CHRRRC u e3E4 an z280 TXA T e3ES 31 2A 2490 STA lt OUTPTR Y m 2400 e e3E 9a 2418 NEXTOUT TYA 24 95 Q 3E8 65 2A 2420 ADC XCLITPTR JWITH CARRY SET lt A gt 1 0U 3ER a5 2A 2430 STR OUTPTR 3EC 9a a2 2448 BCC HEXTIN SEE E6 28 2450 INC X XOLTPTR 1 2460 More than 40 new programs on 2479 jer THE NEXT BASIC INPUT LINE POINTER diskette to help you get more from 3Fe ns se 2490 NEXTIN LOR NXTLIN your Apple 3F2 n4 57 2500 LOY XNXTLIN 1 i 2510 Machine Language Aids duo e A1 2536 Bcc NEXTLINJ AND CONTINUE SQUEEZING I O Enhancements x aX L ON a 25427 z Applesoft Aids 2550 EN Graphics and Games Reference Information xu i SIC 3 0 19 choice articles a ith y oa for BASIC 1 0 une S ROM on for BA 5 43 tested programs on diskette 9 pgra 16 sector DOS 3 3 format Hee AS 81 8S vC AG 84 34 FO Been AS 81 SS zh AG 04 S4 2E Volumes 1 amp 2 also available at 24 95 cuz SS Ae S Ar A G AZ Be Awe ocu S4 55 one dao Ae ad siis A AR NUS UM ee ee ae ae a pis 2 pipe aa ps Together MICRO on the Apple 1 bbs Roles Ee Mood Lt dede ea ub AG A pi EE Bind 2 amp 3 provide more than 110 pro 115 LOR Ce 84 S 2 5 ALE 5 CE 3 S4 55 dici quae Macc reyes AA ATS M Ee oes E grams on diskette for less than e 34 AR AG 81 Bi 7C OG 16 aza S4 53 AB 81 B1 ZA OW 16 a Bs as RIA unt A E a aS Mc Op MS 1 00 each No need to type in 02S AZ c5
85. 4 ms SILENCE MICRO The 6502 6809 Journal 77 Table2 Item Value IC1 4001 CMOS quad NOR gate 14 pin DIP R1 2 2K resistor t R2 2 2K resistor i R3 2 2K resistor R4 12K resistor RS 50K trim potentiometer R6 330K resistor Cl 330 pF capacitor i Ql Sylvania ECG123A transistor or equivalent UT 40 KHz ultrasonic transducer Figure 2 FROM ACIA RTS PIN 5 i IC1 PIN 14 45V IC1 PIN 7 ground Table 1 Unit Code Binary Code 1 0 1 1 0 0 2 1 1 1 O 3 3 0 0 1 0 0 4 1 0 10 0 5 0 0 0 1 O0 6 1 0 Q 1 0 7 0 1 0 1 O0 8 1 1 0 1 0 9 0 1 1 1 O0 i 10 I 1 1 1 11 0 0 1 1 0 12 1 0 1 1 O0 13 0 000 0 14 1 0 0 0 0 15 0 1 0 0 0 16 1 1 0 0 0 Function Code Binary Code 17 All Units Off 0 0 0 O 1 18 All LightsOn 0 0 O 1 1 19 On 0 0 1 0 1 20 Off 0 0 1 1 1 21 Dim 0 1 0 0 1 22 Bright 0 1 0 1 I continually scans the keyboard unless the Control C break is disabled by an appropriate POKE so some sort of tone is almost always being produced on the D A output while BASIC or any other keyboard oriented program is being used This makes using the D A un pleasant for music composition and playback A less well known bit of latched out put exists in the C1P This is the RTS Request To Send line associated with 78 the 6850 Asynchronous Serial Com munications Interface chip ACIA used in the CIP to exchange data with a cas sette mac
86. 6 GOSUB DA GSW 137 THEN DA THEN 138 END Applesoft routine LINPRT at ED24 Listing 1 continued which prints in decimal form the hex oe d ed adecimal number whose high byte is in 0391 20 24 the accumulator and whose low byte is pes in the X register For printing text we 0394 20 B7 00 have the routine STROUT at DB3A 0397 c9 2c which will print the string pointed to n Hs 2 by the Y register high byte and the ac 039D DO 02 cumulator low byte The string must 039r C6 B9 t 03AL C6 B8 be terminated by a 00 or a 22 03A3 4C 2A 03 Thus Applesoft provides us with all 03a6 the routines we need for the job With a 0326 good assembler and some attention to Que 20 20 20 detail these can be put together to pro 0309 47 4F 54 ung 03AC 4F 20 22 duce a machine language routine to O3AF 20 20 20 perform the required task The source 0382 47 4F 53 program in listing 1 demonstrates how 0385 55 42 20 thi be d 03B8 22 S can be done 0389 20 20 20 Once assembled and BSAVEd this oe n Si 2 f utility is used as follows LOAD your 03c2 program into RAM and BRUN the routine or if it is already installed simply CALL it Line references in ONERR GOTOs and GOSUBs will also be checked as will all line references not just the first in ON X GOTOs and GOSUBs kkk oc oe ok oe oe oc oe oe eoe oco oe oco v e kK FIM POWER tm COMPUTECH All prices B Check the postpaid outstanding Continental documenta U S tion s
87. 6B Bl 9B 73 LDA LOWTR Y 946D 8D 77 95 74 STA UPLIM 9470 A9 00 75 LA 00 9472 8D 7995 76 LOWLIM 9475 8D 7A 95 77 STA IOWLIM l 9478 20 31 95 78 SEARCHLP JSR COMPIIX 9478 20 5695 79 JSR BY3 947E 18 80 ac 947F AS 9B 81 LDA LOWTR 9481 6D 7B 95 82 ADC SAVARRAY 9484 85 9B 83 STA LOWTR 9486 A5 9c 84 LDA LOWTR L 9488 6D 7C 95 85 ADC SAVARRAY 1 948g 85 9c 86 STA LOWTRHL 948D AO 07 87 nx 948F Bl 9B 88 LDA IOWTR Y 9491 8D 7D 95 89 STA ARRAYIN 9494 CD 74 95 90 CMP VARIN MICRO The 6502 6809 Journal 7 BINARY SEARCH p RRRRERAERRR RARER RREREREREARRER pRRRRRRRR RRR RRR RARER RERREREREREN WORK POINTER CONTAINS LAST USED VARIABLE NAME ADDRESS OF PASSED STRING APPLESOFT S ROUTINE TO GET A BYTE AMPERSAND VECTOR LOCATED HERE ROUTINE TO LOCATE VARIABLE DESCRIPTOR CHECK FOR OPEN PAREN ROUTINE TO FIND ARRAY DESCRIPTOR CHECK FOR COMMA DISPLAY SYNTAX ERROR ADVANCE TXTPTR TO END OF STATEMENT FOR LISA JUMP ABSOLUTE INSTRUCTION LSB OF ENTRY ADDRESS MSB OF ENTRY ADDRESS GET CHARACTER SHOULD BE OPEN PAREN GET ARRAY DESCRIPTOR SHOULD BE A ONE DIMENSION ARRAY ELSE DISPLAY ERROR MESSAGE SAVE ARRAY DESCRIPTOR ADRS LSB MSB CHK FOR COMMA LOAD A W NEXT BYTE GET NEXT BYTE SHOULD NOT BE END OF STATEMENT DISPLAY SYNTAX ERROR MESSAGE DOLLAR SIGN NO MUST BE TWO CHARACTER NAME NEGATIVE ASCII FIND DESCRIPTOR GET SAVE THE LENGIH OF PASSED STRING GET SAVE THE
88. 75 00 HDE ADVANCED INTERACTIVE DISASSEMBLER AID Two pass disassembler assigns labels and con structs source files for any object program Saves multiple files to disk TIM AIM SYM KIM versions 95 00 HDE ASSEMBLER Advanced two pass assembler with standard mnemonics KIM TIM SYM and KIM cassette versions 75 00 80 00 cassette HDE TEXT OUTPUT PROCESSING SYSTEM TOPS A comprehensive text processor with over 30 commands to format and output letters docu ments manuscripts KIM TIM and KIM cassette versions 135 00 142 50 cassette HDE DYNAMIC DEBUGGING TOOL DDT Built in assembler disassembler with program controlled single step and dynamic breakpoint entry deletion TIM AIM SYM KIM AND KIM cassette versions 65 00 68 50 cassette HDE COMPREHENSIVE MEMORY TEST CMT Eight separate diagnostic routines for both static and dynamic memory TIM AIM SYM KIM and KIM cassette versions 65 00 68 50 cassette AVAILABLE DIRECT OR FROM THESE FINE DEALERS Progressive Computer Sowers Johnson computers Falk Baker Associates Perry Peripherals 405 Corbin Road Box 52 382 Franklin Avenue P O Box 924 York PA 17403 Medina Ohio 44256 Nutley NJ 07110 Miller Place NY 11764 71 7 845 4954 216 725 4560 201 661 2430 516 744 6462 Lux Associates Laboratory Microcomputer Consultants P 20 Sunland Drive O Box Chico CA 95926 East Amherst NY 14051 916 343 5033 716 689 7344 Adding Voice to a Comp
89. 8 0326 90 02 0328 E6 B9 032A 032A 032A 20 Bl 00 032D C9 00 032F FO D5 0331 C9 C4 0333 DO OF 0335 AO Ol 0337 Bl BB 0339 38 033A E9 30 033C C9 OA 033E BO FA 0340 A9 C4 0342 DO 0344 C9 0346 FO 0348 C9 034A DO 034C 85 O34E 034E 20 Bl 00 0351 20 OC DA 0354 A5 50 0356 A4 51 0358 85 FC 035A 84 FD 035C AD 30 CO O35F 20 1A D6 0362 BO 30 0364 0364 20 FB DA 0367 A5 FB 0369 A6 FA 036B 20 24 ED 036E A5 F9 0370 C9 C4 0372 DO 07 0374 A9 B9 0376 AO 03 0378 4C 8A 03 0378 C9 BO 037D FO 07 037F A9 A6 0381 AO 03 0383 4C 8A 03 0386 A9 AF 0388 AO 03 038A 20 3A DB DOS WARM START VECTOR kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkikkkkik OR ANYWHERE CONVENIENT PRINT CR 44 SET TXTPTR TO BYTE PRECEEDING LINK FIELD OF FIRST LINE 7END OP PROGRAM DOUBLE 00 REMHED YET IF NOT PRINT FINAL CR BACK TO BASIC 61 ADVANCE TXTPTR TO FIRST BYTE IN TEXT OF LINE END OF LINE TOKEN IF SO THEN TOKEN THEN TOKEN GOTO TOKEN GOSUB TOKEN ADVANCE TXTPTR TO LINE NO READ LINE NO STORE IN LINNUM SAVE LINNUM IN LN2 EACH CLICK MEANS A PROG SEARCH SEARCH PROGRAM FOR A LINE IF LINE FOUND PRINT Cm THEN TOKEN 31 INl EPZ SFA 32 LN2 EPZ SFC 33 34 OTHER LOCATIONS 35 36 DOS WS MWU 3D0 37 SPEAKER mU CO30 38 39 40 R 4l ORG 300 42 BEGIN 43 JSR CRDO 45 JSR STXTPT 46 NEXTLINE 47 JSR CHRGET 48 LY 1 49 LDA TXTPTR Y 50 BENE SAVLINNO
90. 800 662 2444 VISA and MasterCard accepted Add 2 00 shipping per book MA residents add 5 83 370 44 Listing 1 continued 0351 8353 0354 B356 e3Sa 35A osse 035E B360 8362 0364 e3ee e36eg e3en e3sec 360 36F e37e 0372 0373 0378 037A 37C 37E 0320 a332 03834 azes Bage e3an e3sB e3sp 38F a 331 e3as3 62395 0 3936 MICRO The 6502 6809 Journal 36 Ce ca oa 84 a4 Re B1 pa R2 R4 RS 69 ce 94 CA CA 4C B1 EE Re na c Fe co na enu SA a4 F2 59 e1 2R 16 es B 2A e1 e1 2A 2A Fe 58 54 sa S8 45 20 F2 er ei 3A eB SA E3 SA az SE 5 B4 10060 1616 10268 1030 1648 1050 1060 1070 1080 1090 1100 1110 1120 1130 1140 1150 1160 1178 1188 1190 1208 1210 1220 1230 1240 1250 1268 1270 1280 1290 1300 1310 1320 1330 1340 1350 1360 1376 1380 1330 1400 1410 1420 1430 1440 1450 1460 1470 1480 1430 1506 1510 1520 1536 1540 1550 1560 1976 15828 1598 1600 1619 1628 1630 1646 1650 1660 1676 1680 165a 1700 1710 1720 1738 1746 1758 176a 1778 1788 1796 1506 1318 1820 1836 1846 1358 1860 1878 1886 1896 1900 1918 1928 1938 1948 1956 1568 1978 1988 STX OUTSEG Y INT EPY 4 BCC COPYLNK 3 j CARRY SET 3 3SET START BASIC INPUT AND QUTPUT TE
91. 8650 STX 50 SAVE X REG 70 0228 BA TSX GET STACK POINTER 80 0229 BDO501 LDA 105 X CALLING ADDRESS A252 90 022C C952 CMP 52 100 022E D007 BNE NOERR 110 0230 BDO601 LDA 106 X 120 0233 C9A2 CMP A2 130 0235 F007 BEQ ERGO YES PRINT ERR MESS 140 0237 A650 NOERR LDX 50 RESTORE A amp X REGS 150 0239 ASOD LDA 13 160 023B 4C69FF EXIT JMP FF69 TO REGULAR OUTPUT 170 180 023E A650 ERGO LDX 50 RESTORE X REG 190 0240 20E3A8 JSR A8E3 PRINT 200 0243 BD64A1 LDA A164 X FIND 1ST LETTER 210 0246 20E5A8 JSR A8E5 PRINT IT 220 003F BD65A1 LDA A165 X FIND 2ND LETTER 230 024C 297F AND N 7F ZERO HI BIT 240 024E 4C5FA2 JMP A25F TO REG ERR ROUTINE C1P x MINOS ST R ATEGY TAKE MIMIC NENIEN NEIG TYPING PHONE NUMBER DEHYDR TION BLACK JACK DRUL E Previously sold MEN by AARDVARK add 1 50 postage amp handing aids aile lo and ees VISA e ident please i Saree customers include expiration date VICTORY SOFTWARE CORP 2027 A S J RUSSELL CIRCLE ELKINS PARK PA 19117 215 576 5625 No 55 December 1982 NEW FROM D amp N MICRO PRODUCTS INC Z80A CPU with 4MHz clock and CP M 2 2 operating system 64K of low power static RAM Calendar real time clock Centronics type parallel printer interface Serial inter face for terminal communications dip switch baud rates of 150 to 9600 4 cooling fan with airintake on back of computer and discharge through ventilation in the bot tom No
92. 9 REM LITESHOW CONTROL PROGRAM 13 REM FOR BSR X 10 INTERFACE 14 REM BY JOHN EROUT 99 1 i 100 REM SPOTS 1 ON t OFF toy g i FORA 1702 B At1 IFA ZTHENE Y USR E IFFEEE EGOTO1000 Y USR A IFFEEE Q EBOTO1000 NEXT GOTO110 REM SFOTS 2 ON 1 OFF FORA 1TOZ YsUSR 18 IFFEEEK 0 EG TO1000 REM ALL SPOTS ON 1 SR 2G IFFEER 9 EGOTO1L000 REM 1 OFF O zNEXT REM TIME DELAY T 21TO10C NEXT GOTOZ10 REM KEYBOARD CONTROL SPOTS PRINT PRINT STROBES s PRINT PRINT PROJECTOR 66 FOKEG 4 82 99 127 P PEER 57089 POKESZO O i i i O01 PORES 32 80T0z10 A 2 42 60TO210 REM STROBES 1 ON 1 OFF D B At Ls IFAS Smi9 GTHENE 4 IFFEEE 2 EGOTO1000 Y ore SBE PER Sa EGOTO1LO00 1 499 i L060 REM MAIN MENU 1020 FORI 1T27 98 01 0 Oz NEXT REM STATUS RESET GOSURBAOOO PRINT MAIN MENLU PRINT PRINT 1 SFOTS 1 ON 1 OFF SPRINT FE RINT Z FRINT Z SPOTS 2 ON 1 OFF PRINT FRINT PRINTS KEYBCARD CONTROL FRINT FRINT FRINT 4 STROBES 1 ON 1 OFF SPRINT PRINT INFUT function number FiF RINT IFFZ10RF IOQRFZINT F GOTO1100 YUSRCL7 REM SHUTDOWN ONFGOTO1G0 2063 700 400 END REM INIT DIMS 7 2 1 1 127 2 152191 3 1 S 4 1 S 5 1 724 iU Qm ir 2110 KE SCL 2 6 64 2 2 G6 45 S 2 2 6 68 4 2 G 128 S07 GOTO1000 REM SCREEN CLR SUE FORT 17TO28 FRINT NEXT R
93. 980 Compare the many advanced features of FORTH 79 with the FORTH you are now using or plan to buy FEATURES OURS OTHERS 79 Standard system gives source portability YES Professionally written tutorial amp user manual 200 PG Screen editor with user definable controls YES Macro assembler with local labels YES Virtual memory YES Both 13 amp 16 sector format YES Multiple disk drives YES Double number Standard amp String extensions YES Upper lower case keyboard input YES LO Res graphics YES 80 column display capability YES Z 80 CP M Ver 2 x amp Northstar also available YES Affordable 99 95 Low cost enhancement option Hi Res turtle graphics YES Floating point mathematics YES Powerful package with own manual 50 functions in all AM9511 compatible FORTH 79 V 2 requires 48K amp 1 disk drive 99 95 ENHANCEMENT PACKAGE FOR V 2 Floating point amp Hi Res turtle graphics 4995 COMBINATION PACKAGE 139 95 CA res add 696 tax COD accepted MicroMotion ES i47 12077 Wilshire Blvd 3f 506 i L A CA 90025 213 821 4340 Specify APPLE CP M or Northstar Dealer inquiries invited No 55 December 1982 Chances are when you bought your first disk drive it was an Apple Now that you re ready for a second take a look at Quentin Our Apple Mate 5 Disk Drive is fully software transparent with Apple s DOS 3 3 operating system in full and half t
94. 982 INCRO THE 6502 6809 JOURNAL COMMODORE FEATURE 37 42 47 52 59 It s All Relative CBM Disk Techniques Pat MEER NE James Strasma Get the most from CBM s powerful disk operating system Squeeze for PET Programs hires EYE tetas Hans Hoogstraat Squeeze out imbedded blanks line separators and comments BASIC Line Delete for PET CBM and VIC Thomas Henry A machine language program to delete blocks of BASIC lines SOUP A CBM Machine Language Compare Program Henry Troup and James Strasma A compare program for machine language program files Microcomputers in a College Teaching Laboratory Part2 ees Richard Heist Thor Olsen and Howard Saltsburg Analog transducers in a digital world BASIC AIDS 13 19 22 26 APPLE ILISZT for Integer BASIC Programs Leonard Anderson Print your program in a clear structured format and detect embedded binary code BASIC Macro Function for Cursor Control onthe OSI soos Kerry Lourash Insert statements with just two keys ATARI Character Graphics from BASIC Part3 Paul Swanson Add to ATARI s vertical blank interrupt routines APPLESOFT GOTO GOSUB Checking Routine Peter J G Meyer Verify all GOTO and GOSUB references in your program HARDWARE 69 14 77 82 85 88 93 Adding Voice to a Computer Michael E Valdez A low cost procedure for sampling and reproducing voice Enhanced
95. ADDRESS OF PASSED STRING REESTABLISi LOWTR TO ADDRESS OF ARRAY DESCRIPTOR GET UPPER LIM OF DIM LOW BYTE MAKE LOWHIGH INITIALIZE LOWER LIMIT INDEX UPLIM LOWLIM 2 MULTIPLY INDEX BY 3 LENGTH OF PTR ENTRIES ADD BASE TO INDEX TO OBTAIN POINTER TO ELEMENT OFFSET TO LENGTH OF ELEMENT FIND SHORTEST ARGUMENT 66 9497 9499 949c 949F 94A0 94A1 94A3 9456 94A7 94A9 94ac 94AE 9481 9483 9486 948C 94BE 9581 30 AE 4c AA c8 Bl 8D c8 Bl 8D AO AD 85 AD 85 BL DL 30 FO 4c C8 CA DO AD CD 30 FO 4c A9 85 85 N 38 ASSSSASSESAEASSSSRSGESGRALESLES 06 74 95 AO 94 9B 7F 95 9B 80 95 00 7F 95 9B 80 95 9c 9B 83 2F 03 OF 95 7D 95 74 95 OF 95 77 95 79 95 75 95 78 95 TA 95 76 95 76 95 75 95 FF 75 95 76 95 D4 94 75 95 9B 9B 76 95 9c 9c 75 95 76 95 91 92 93 95 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 135 136 137 138 139 140 141 142 143 145 146 147 149 150 151 152 153 155 156 157 159 160 161 162 163 165 166 167 169 170 171 172 173 174 175 176 177 178 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 ARRAYST CONTL COMPLP COMP EXIT STRNGIT HI2 102 ELEMENT SHORTEST STRING S
96. ANCRO How to Obtain Bennett s Mail List Many users groups will have this program in their libraries It is also available from ATUG 200 S Cen tury Rantoul IL 61866 TPUG 381 Laurence Ave W Toronto Ontario M5M 1B9 Canada or from the author as part of his HELP disk The HELP disk is a companion to the third edition of Osborne McGraw Hill s CBM and PET Computer Guide edited by the author To obtain the HELP disk send 15 to the address below Specify 4040 2031 or 8050 format HELP Disk Jim Strasma 1280 Richland Ave Lincoln IL 62656 1 What s Where in the APPLE Guide to THE APPLE COMPUTER MICRO The 6502 6809 Journal en commodore EN STATISTICS PURE AND SIMPLE HUMAN SYSTEMS DYNAMICS Human Systems Dynamics programs offer you flexibility accuracy and ease of use You can purchase from the HSD statistics specialists with complete confidence Any program that doesn t suit your needs can be returned within 10 days for full refund NEW STATS PLUS 200 00 Complete General Statistics Package Research Data Base Management Design and Restructure Your Files Count Search Sort Review Edit Add Delete Merge Files Compute Data Fields Create Subfiles Interface with other HSD programs Produce Hi Res bargraphs plots 1 5 way Crosstabulation Descriptive Statistics for all Fields Chi Square Fisher Exact Signed Ranks Mann Whitney Kruskal Wallis Rank Sum Friedman A
97. ASCII character set that are not well covered in the Waterloo documentation accom panying the SuperPET All the printable ASCII characters codes 32 to 127 in the Waterloo ASCII set are pure ASCII By this I mean they are all recognizable dupli cates of the corresponding character found in an ASCII table Furthermore the PRINTed codes are identical to the screen POKE codes for a given charac ter Many of the screen control codes are consistent with normal printer usage e g cursor down 10 LF cursor back 8 BS and clear screen 12 FF This means that turning neatly formatted CRT output into neatly formatted hardcopy on an ASCII printer like the MX 80 is much easier than with the CBM character set the one Gary Huckel of TNW so appropri ately calls half ASCIT Notice I said the printable charac ters 32 to 127 have the same PRINT and POKE codes but what about POKEing the ASCII control codes 0 to 31 By experiment you will find these codes do not all cause the same action when POKEd as when PRINTed The POKE characters and PRINT actions of these codes are shown in table 1 The codes 0 and 14 30 give an odd little white box when POKEd or PRINTed Code 31 gives the Greek letter p POKEd or PRINTed Codes 1 11 when POKEd give eleven line graphic char acters that are useful for drawing out line boxes or grids These characters are similar to the graphics characters avail able on the Epson MX printers
98. Allow one week delivery QUENTIN RESEARCH INC 19355 Business Center Drive Northridge California 91324 213 701 1006 RE JUICE R YOUR PLE INCRO CoCo Bits By John Steiner This month s CoCo Bits re examines the single disk COPY command In ad dition I have noted a few CoCo related news items One item I did not men tion last month regards the transfer of machine language files to disk Before loading the routines into memory be sure to reserve enough memory space so BASIC will not overwrite your pro gram Also before loading and ex ecuting the modified BEDLAM from disk a CLEAR 200 16384 will protect the program from BASIC Without this command the program seems to ex ecute properly but does not print the opening message As I mentioned last month the single disk COPY command is avail able and will not destroy a program that is in memory like DSKINI and BACKUP This opens the door to a useful routine for selective backup of program and data files The backup command is appropriate for archives and duplication purposes COPY is useful when only a few files require transfer or if program data must be transferred to a disk without destroying already existing files If several files must be transferred however it is tiresome to enter the files one by one using COPY filename ext The program in listing 1 provides a selective backup routine It reads the disk directory track and stores a
99. Attack 19 95 29 95 Swash Buckler 24 95 34 95 Gin Rummy 24 95 34 95 The Dictionary 69 95 99 95 General Manager 99 95 149 95 4 Ft Disk Cable 19 95 29 95 Visicalc 179 95 250 00 Using 6502 Assembly Language Book 14 95 19 95 Kids and The Apple Computer Book 15 95 19 95 Apple Panic 19 95 29 95 Kraft Joystick 49 95 69 95 AR E OMPI ng INC G er somma g n aa ENS Iv p Your Salvation x 79 o In The Sea Of Inflation 7147 35 2250 P O Box 2025 Corona GA 91 eee No 55 December 1982 APPLE ILISZT for Integer BASIC Programs ILISZT prints an Integer BASIC program in a clear structured format with the ability to detect embedded or attached BINARY code ILISZT requires Apple Il with both Integer and Applesoft Disk drive Printer The purchase of several disks at the end of 1981 added a number of Integer BASIC programs to my Apple II library No listings were available and I decided to print all of them Several had embedded binary code a condition that caused much nonsense display on both screen and printer LISZT was already up and running MICRO 48 37 so it seemed logical to modify this Applesoft program to format In teger listings The ILISZT result kept the original format and added the abili ty to find exact binary code addresses ILISZTER is the formatting and printing program run by EXEC file ILISZT ILISZTER is Applesoft rather than Integer While an Int
100. CRO The 6502 6809 Journal Ur William R Dial 438 Roslyn Avenue Akron OH 44320 Boston William Here s An Easy Way to Place Orders by Mail pg 19 20 An order writing program for the Color Computer Lewandowski Dennis S The Assembly Corner pg 22 25 A tutorial on 6809 assembly language programming Clements Bill Rockin Through the ROM pg 29 30 Documenting the ROM routines of the TRS 80 Color Computer Preble Laurence D FLEX System is Powerful Addition to World of 80C pg 32 33 All about the FLEX system for the 6809 micro Scerbo Fred B Alpine Aliens pg 34 37 A game for the Color Computer Blyn Steve Good Reinforcement Means You Can t Frown at Me pg 41 46 Tips and demo program for educational use Mir jorge Now Make Your Own Adventure with ADVMAKER pg 47 53 A program designed to simplify the programming of Adven tures written for the Color Computer Nolan Bill Dragons Are Nice Folks Too Almost All 1 440 of Them pg 62 69 The program Dragon Roller will assist with the chore of devising a dragon for your dungeon program 89 Byte 7 No 8 August 1982 Williams Gregg LOGO for the Apple II the T1 99 4A and the TRS 80 Color Computer pg 230 290 Discussion of LOGO for several micros including the 6809 based Color Computer 90 The Target March April 1982 Staff News pg 1 An assembly which converts an AIM
101. Control System through the mail and in Sears and Radio Shack stores This remark able system consists of a central com mand console about the size of a 3 x 5 file box and up to 16 control modules each the size of a pack of cigarettes An appliance is plugged into a control module which in turn is plugged into a power outlet A control dial on each control module allows the user to set a unique unit code ranging from 1 to 16 for that module The user may control the module remotely via the console by pushing a button to specify the unit code Another button turns the selected control module on or off A second form of control module in cludes a dimming control for lamps No 55 December 1982 and a third form replaces a wall switch Each control module is a radio receiver which accepts transmitted commands only after receiving its own unit code The command console is the trans mitter utilizing home power lines as an antenna Ohio Scientific was probably the first computer manufacturer to recognize the value of interfacing the X 10 command console to a personal computer OSI now offers a hardware interface and a disk operating system to support the X 10 However OSI charges a premium price for these items and offers nothing to those using BASIC in ROM An optional feature of the command console provides the key to a simple and inexpensive interface to a com puter BSR also developed an ultrasonic hand held co
102. E YOU MUST PILOT YOUR WWII VINTAGE AIRCRAFT ACROSS A SCROLLING LAND SCAPE AND RESCUE POW S IN ENEMY TERRITORY SOME OF THE SMOOTHEST GRAPHICS EVER SEEN ON AN OSI IT ALSO USES A NEW TECHNIQUE OF USING LARGE MULTI CHARACTER SHAPES FOR A REALISTIC GAME YOU WILL REALLY LOVE THIS ONE PLEASE SPECIFY WHETHER YOU WANT JOY STICK OR KEYBOARD OPTIONS THIS GAME IS SO EXTENSIVE THAT IT TAKES UP THE ENTIRE DISK ALL THIS FOR ONLY 19 95 SEND TO INTERESTING SOFTWARE 21101 S HARVARD BLVD TORRANCE CA 90501 213 328 9422 Calif residents add sales tax 95 SIG FORTH V 1 0 The only stand alone Forth svstem tor O S serial machines Features Complete Forth source code Advanced Screen editor w source 6502 macro assembler w source Double number and CASE extensions Vectored boot capability Several Utility Screens Complete glossary Dos Includes Bi Directional NEC driver 65U read capability 100 00 NMHZ Capability oras DIGI COM ENGINEERING INC P O Box 1656 Kodiak Alaska 99615 ORDERING INFORMATION Check money order or C O D s accepted Shipment VIA first class mail Allow approximately one week for delivery C un JEAN IS IUJU AA IE THE TACKLER DUAL e MODE PARALLEL INTERFACE FOR THE APPLE 2 BOARDS IN ONE FOR NO MORE COMPATIBILITY PROBLEMS An intelligent board to provide easy control of your printer s full potential Plus a standard parallel board at the flip of a switch
103. E can be loaded into the first or second cassette buffer and can then be permanently saved with the BASIC program using the machine t2 language monitor SAVE command or it can be made part of the program with DATA statements containing the machine language code to be transfer red to a suitable spot in memory using POKE commands Here is the procedure to save a BASIC program with SQUEEZE in the cassette buffer Original ROM use first cassette buffer 027A 0339 upgrade ROM use either cassette buf fer 027 A 0339 or 033A 03F9 4 0 ROM use second cassette buffer 033A 03F9 1 Load SQUEEZE routine into correct buffer 2 Type NEW and load BASIC program MICRO The 6502 6809 Journal 3 Type SYS4 which will display 4 0 ROM PC IRQ SR AC XR YR SP 0005 E455 30 00 SE 04 FO 4 Type M 002A 002B to display the start of BASIC variables pointer which is usually the same as the end of BASIC text pointer Assume the following display from the above command M 002A 002B 002A 4B 04 4B 04 4B 04 00 80 5 Now to save the BASIC program and the SQUEEZE routine together on disk assuming SQUEEZE was loaded in the first cassette buffer type S O EXAMPLE 08 027A 044B 027A Start address of first cas sette buffer Contents of end of BASIC text pointer as displayed in locations 002B 002A For tape use 01 instead of 08 044B General Information All CBM system labels referenc
104. ECK l CF Y SGOT TK FRECEEDED E GOTO TKEH BEG SCAN PES IGNORE INPUT TO No 55 December 19 es commodore BEEN Listing 1 continued e3BS Cea AP 1390 CP THENTK PEECEEDEL BY THEN TOKEN 036 Fa EF BEG SCAN YEB IGNORE INPUT TO TO Our Gurrent AG SO KIFG LOS IFFLAG IF TOKEN FOUND Fa an BER DOLITTEXT HQO COPY TEXT CHARACER ges zen CkanTo CMP amp G TUTK TEXT GUTG TOKEN 7 ee zaesd BNE QUTTEXT NO COPY TEXT CHRHERCTE A7 a CP amp THENTK PRECEEDED amp B THEN TOKEN 7 Ea EEQ SCHH YES IGNORE INPUT GOTO AS n LOA amp THENTK YES REPL GOTO BY THEN 3 As SS OUTTEXT LOY COncT IND COPY TEXT CHARACTER TO CL AAICRO 91 2H STA lt OUTPTROLY 3 ss sc STA PRVOLT ShVE AS PREVIOUS OUTPUT C a on the Apple E amp 53 INC OL TIND BCOST QUTPUT TEXT INDEX a Volume INCLUDES 2cr c9 zz CMP 7 R BASIC GunT COPIED 7 DISKETTE e3Di mA 04 BNE KEND NO CONTINUE a aC 45 5 z EOR QTFLAG SET BASIC QUOT FOUND FLAG a 305 sS Se 2 STA QTFLAG TO EITHER ON OR OFF a agny AS SC 22 CKEND LOR PRYOUT 3END OF LIHE REACHED 7 eso9 pe 90 2 BNE SCAN NO CONTINUE SCAN 3 2260 2276 sQUTFUT TEXT LINE CLEANUP 3 22980 E e3spBp ce aen 2298 CLEANUP CP 85 JANY OUTPUT LINE CHARACTER w300 36 11 2368 ECC NEXTIN 3NO DELETE LINE 3 2318 2320 CARRY SET 1 2330 20F AG SA 234a LOX OUTSEG ANY OUTPUT LINE SEGMENT C y 3E1i DO a4
105. ECTION 143 REM E TEMPORARY PARTLY FOR SPLIT LINE LIMITS 144 REM FF FOR FLAG 1 FOR STARTED O NO FOR 145 REM FS FOR INDENT SPACE COUNTER 146 REM G GATHER STRING TO BUILD A STATEMENT 147 REM H HEADER ARRAY FOR PRINT PAGE TITLE 148 REM IM INDENT SPACE MULTIPLIER 149 REM K TEMPORARY 150 REM L TEMPORARY PARTLY FOR LOW BYTE VALUE 151 REM LA LINE NUMBER BEGINNING ADDRESS 152 REM IC LINE COUNTER FOR PAGINATION 153 REM LL LINE LENGTH CONSTANT 154 REM LBS LITTLE BLANK STRING OF 8 SPACES 155 REM MS LEFT MARGIN SPACING STRING 156 REM N LINE NUMBER STRING 157 REM P POINTER TO PROGRAM BYTE DECIMAL 158 REM PC PAGE COUNTER FOR PRINT PAGE HEADER 159 REM PE INTEGER PROGRAM END ADDRESS DECIMAL 160 REM PS INTEGER PROGRAM START ADDRESS DECIMAL 161 REM PT TEMPORARY POINTER TO PROGRAM BYTE DECIMAI 162 REM RF REM FLAG l REM STARTED O NO REM 163 REM RS REM INDENT SPACE COUNTER 164 REM SF SPLIT LINE FLAG SET IF PRINT LINE MUST BE SPLIT 165 REM S SINGLE SPACE STRING 166 REM TN TOTAL LINE NUMBER COUNTER 167 REM TR TOTAL REMARKS COUNTER 168 REM TS TOTAL STATEMENTS COUNTER 169 REM T TOKEN STRING ARRAY 170 REM V ARRAY FOR TOKEN EVALUATION 171 REM O NO BINARY NUMBER FOLLOWS TOKEN 172 REM 1 A 3 BYTE BINARY NUMBER FOLLOWS 173 REM 2 UNUSED INTERNAL DO NOT PRINT 174 REM X HEX CHARACTER STRING FOR CONVERSIONS MICRO The 6502 6809 Journal No 55 December 1982 Make ILISZT 200 210
106. EN RETURN REM PUT LINE NUMBER IN BRACKETS AS A STATEMENT IDENTIFICATION ON NEXT PRINT PAGE NS STRS VAL N K LEN N REM NS IS NOW WITHOUT SPACES BR ACKET N AND ATTACH TO STATEMENT CHARACTERS C RIGHTS LEFTS LB 6 K CHRS 91 N CHRS 93 S 8 RIGHTS C LEN C 8 K FRE 0 RETURN REM MX 80 STANDARD ITALICS SUBROUTINES REM GRAFTRAX Only Single character set printers should DELETE the se calls throughout if not used for other print functions PRINT CHRS 27 5 RETURN REM ESC 5 IS STANDARD SET GOSUB 17 IF RF THEN PRINT CHRS 27 4 REM ESC 4 IS ITALICS SET RETURN REM HEXADPCIMAL CONVERT SUBROUTINE AS REM ENTER WITH L AS DECIMAL NUMBER RETURN IN A FOR K 1 TO 4 D INT L 16 E INT L D 16 1 L D AS MIDS X E l AS NEXT REM PREFIX THE HEX NOTATION AS S AS K FRE 0 RETURN REM BEGIN A NEW LINE NUMBER WITH TEST OF NUMBER OF BYTES IN LINE FROM FIRST BYTE THEN CONVERT BINARY LINE NUMBER TO DECIMAL GOSUB 2 IF P gt PE GOTO 123 REM POINTER EQUAL TO OR BEYOND END OF INTEGER PROGRAM LA P BC B IF B gt 127 GOTO 114 REM BYTE COUNT TOO LARGE PROBABLE ATTACHED BINARY TN TN 1 REM BUMP LINE NUMBERS THEN MAKE LINE NUMBER STRING GOSUB 2 L B GOSUB 2 L B 256 L B LEN STRS L N RIGHTS LEFT LB 7 B STR L 8 REM BEGIN STATEMENT LIN PARSING WITH FIRST BYTE DECISION D 0 GOSUB
107. ET Listing 2 continued 109 REM Set to character 110 FOR I 24 TO 31 120 READ N 130 S 1I CBASE I CBASE CHR N 140 NEXT I 147 REM 148 REM 149 REM GR 2 No text window 150 GRAPHICS 18 152 GOSUB 500 157 REM 58 REM 159 REM Find Display List 160 DLIST PEEK 560 PEEK 561 X256 162 SLOC FEEK DLIST 4 PEEK DLIST 5 8256 157 REM 168 REM 159 REM Set scroll enables 1706 POKE DLIST 3 FEEK DLIST 3 438 180 FOR I amp TO 15 190 FOKE DLIST I PEEKSDLIST I 482 200 NEXT I 207 REM 208 REM 209 REM Initialize position 210 VPDS 965 HFOS 80 FOKE 7556 H 224 WING 1 25 S 14 REM REM REM Draw character in position V INT VFOS 14 2 IF WING 1 THEN SOUND 10 0 4 240 VSCROL VPOS V 15 250 H INT HFOS 2 260 HSCROL HPOS H a 262 IF WING 1 THEN WING 2 S CBASE 25 CBHASE 25 CHRS 0 8 CBASE 24 CBASE 26 CHR C231 GOTO 256 254 WING 1 S CBASE 25 CBASE 25 CHRS 195 S CCBASE 25 CBASE 206 CHRS 34 266 Pl Va24 H 270 IF Perel THEN POKE SLOC F O 2890 POKE 1552 HSCROL 290 POKE 1553 15 VSCROL 291 IF P amp 2 P1 THEN P Pi FOR I 1 TO 3 NEXT I 292 POKE SLOC P 3 294 SOUND 0O 10 0 2 297 REM 298 REM 299 REM Read Joystick S00 QLDS S S STICK GQ IF S 15 THEN S OLDS VMOVE 0 HMOVE 0 i40 IF S 9 OR S 13 GR S 5 THEN VMOVE 2 350 IF S 10 OR S 14 OR S 6 THEN VMOVE 2 260 IF S24 AND S
108. ET EPZ SBl v 0 0U RUN 12 EQUATES 14 AMPERV EQU 3F5 15 FIND EQU E053 16 CHKOPN QU SDEBB 17 GETARYPT EQU SF7D9 18 CHKOOM QU SDEBE 19 SYNERR BW SDEC9 20 DATA EQU D995 9400 22 ORG 9400 9400 23 OBJ 800 9400 24 9400 A9 4C 25 SEIVEC LDA 4c 9402 8D F5 03 26 STA AMPERV 9405 A9 10 27 LDA ENTRY 9407 8D F6 03 28 STA AMPERV 1 940A A9 94 29 LDA ENTRY 940C 8D F7 03 30 STA AMPERV 2 940F 60 31 RTS 9410 32 9413 20 BBDE 34 JSR OHKOPN 9416 20 D9 F7 35 JSR GETARYPT 9419 AO 04 36 IX 4 941B Bl 9B 37 LDA LOWTR Y 941D C9 01 38 CMPH 941F FO 03 39 BED ENTRYl 9421 4C CO DE 40 JMP SYNERR 9424 AS 9B 41 ENTRYl LDA LOWTR 9426 8D 7B 95 42 STA SAVARRAY 9429 A5 9c 43 LDA LOWTRH 942B 8D 7C 95 44 STA SAVARRAY 1 942E 20 BEDE 45 JSR OIKCOM 9431 85 81 46 STA VARNAM 9433 20 Bl 00 47 JSR CHRGET 9436 DO 03 48 BNE ENTRY2 9438 4C C9 DE 49 ERROR JMP SYNERR 943B C9 24 50 ENTRY2 CMP S 943D DO 02 51 BNE NAMING 943F A9 00 52 LDA 00 9441 09 80 53 NAMING ORA 80 9443 85 82 54 STA VARNAM l 9445 20 53 EO 55 JSR FIND 9448 A0 02 56 LOY 2 944A Bl 9B 57 LDA LOWTR Y 944C 8D 7495 58 STA VARIN 944F C8 59 9450 Bl 9B 60 LDA LOWTR Y 9452 85 83 61 STA VARAD 9454 CB 62 INY 9455 Bl 9B 63 IDA LOWTR Y 9457 85 84 64 STA VARADH 9459 AD 78 95 65 LDA SAVARRAY 945C 85 9B 66 STA LOWTR 945E AD 7C 95 67 LDA SAVARRAY 1 9461 85 9c 68 STA IOWTRHl 9463 AO 05 69 IM 5 9465 Bl 9B 70 LDA IOWTR Y 9467 8D 78 95 71 STA UPLIM 946A C8 72 INY 94
109. ETURN 4000 4010 words sent and the number of bits sent Since BASIC does not use the in accumulator The latter could have been avoided by using a few NOPs in stead of the EOR In the USR routine whenever a delay routine is called this problem forces storage in memory of the command word the number of No 55 December 1982 put buffer beginning at 13 for anything other than input USR can access that space with compact and speedy page zero addressing for data storage on a MICRO The 6502 6809 Journal non permanent basis Alternatives in clude stack storage and replacing DELAY with your own non destructive time delay Because my C1P runs about 4 slow the time delays in MS4 MS6 8 MS1 2 and the message suffix portion of WORD have been shortened about 496 to compensate If you can obtain an oscilloscope listing 3 will load and ex ecute a useful infinite loop USR rou tine This routine turns on RTS for precisely 999 cycles and then turns off RTS for 1001 cycles giving an overall wavelength of exactly 2 ms for a machine running at exactly 1 MHz If your machine is running a few percent slow or fast listing 4 will compute and POKE the necessary loop constant al terations to the BSR X 10 driver routine As with many USR routines it is convenient to place the driver in un used memory below BASIC text start ing at 0222 Because the OSI Assem bler occupies this space and cannot directl
110. H Start Heading Home cursor Vertical line CHR 221 CHR 156 2 STX Start TeXt Run Horizontal line CHR 195 CHR 157 3 ETX End TeXt Stop Lower right corner CHR 189 CHR 154 4 EOT End Transmission Delete Lower left corner CHR 173 CHR 153 5 ENQ ENQuiry Insert Upper left corner CHR 17 6 CHR 134 6 ACK ACKnowledge Erase to EOL Upper right corner CHR 174 CHR 149 7 BEL ring BEL Cursor right Bottom middle corner CHR 177 CHR 158 8 BS Back Space Cursor left Left middle corner CHR 171 CHR 150 9 HT Horizontal Tab Tab Top middle corner CHR 178 CHR 152 10 LF Line Feed Cursor down Right middle corner CHR 179 CHR 151 11 VT Vertical Tab Cursor up Cross CHR 219 CHR 159 12 FF Form Feed Clear screen Little white box 13 CR Carriage Return Carriage return Little white box No 55 December 1982 MICRO The 6502 6809 Journal Updates and Microbes Continued from page 91 Robert R Ringel of Comstock Park MI found a bug in COMPRESS 52 89 If COMPRESS is processing the token for NEXT 82 one byte before a page boundary it can lose that token when it goes to update its addresses for the new page To correct this problem replace the STX instruction at 9088 with 86E3 and the corresponding LDX instruction at 908E with A6E3 Zero page loca tion E3 is an unused location that works well for a temporary location in this instance COMPRESS Removes Variables Warren Friedman from Berkeley CA
111. H4 TD AS Po 65 81 O25 He WS HM CER AF ETT 6Sa hundreds of lines of code eas 30 01 CB 54 7C CH 95 FI a 38 cS 94 2A CH 95 zh i B35 CA 19 FR 40 38 C4 Ad AA em CH Fe 4C 42 C4 H4 55 MICRO makes it easy to order 846 B1 AS ES AR AS AO De 45 ege B1 Ee 58 ne SB Da 45 Send check payable to MICRO to a45 C59 26 Fa Fe C9 amp F OA ael a43 CA Fa Fe C9 SF De l 456 3A 09 ah OW BEBE S6 AF AS asa SA 3A De Be se SD B4 MICRO INK esa nc Fe EX CH S6 nc 8 AS ess 5A E3 CH 36 SA 560 AS G50 AR Fe ZA ES AC Ad AE C9 aca AF 2h E6 SA A4 SC C P 0 Box 6502 nes SE DG 2 S5 AF C Ce Da ees BE az ss SD cs cB Da Chelmsford MA 01824 Bre BS AS S9 C9 A4 DA BS CH Are uz 89 C9 Ad Ob c3 C z eae Se A oe yur toll free number 67S 89 FG C3 Ca AT FO BF Ae avs S5 Fa C3 Ca A FA BF h Call our tofl f esa AF F Bh CS 89 08 aS Ca ese So BA C9 s9 De ae Ca 1 800 345 8112 ua AY Fe BS AS AP AA AB 91 was AY BS AS AP n4 99 91 In PA 1 800 662 2444 GSG FC S HE ES AB C9 zz Da use zn BC E amp 55 C9 z2 00 ISA m and MasterCard accepted 023 4 45 HD SS AD AS mE ne eem q SB SS SR AS SC Oe V p BAG D Ce 85 53 11 AS RC Oe ena em 56 11 Re SA De Also available at your local computer store ARS A4 Gm 9A 3 7C G8 6 amp 5 TC Ex u TA 29 65 2A AM Ee uiu SR Mica ee dis ang an ns enone Add 2 00 shipping per book aga 5 SC 30 a2 EG F s ARG se a2 S S6 A GRG GS SC S8 az Ee PD ASA ABG ae dz E 2B ASS MA residents add 5 BES H4 AS 18 938 hi GES 19 8 Al ACRO No 55 December 1982 MICRO
112. HARACTER cluded at the end of the last line to in 00062 7F85 C9 2D CMP 15 IT ANOTHER MINUS SIGN dicate the end of the program Actually 00063 7F87 FO 73 BEQ BAD IF IT IS THEN ERROR 00064 7F89 320 F B8 FIRST JSR INTEGR sACCEPT INTEGER INPUT there are three zeros here if you count 00065 7F8C 20 A3 BS JSR SEARCH FIND THE LINE NUMBER the normal end of the line zero Sup 00046 7F8F Ab 5C EDX ADDRES AND SAVE ITS ADDRESS 00057 7F91 A4 SD LDY ADDRES 1 pose we wish to delete lines 3 and 4 as 00068 7F93 85 59 STX SAVE indicated in figure 1 What we will do 00069 7F95 84 SA STY SAVE 1 00070 7F97 20 76 00 JSR CHRGOT 3LOOK AGAIN AT CHAR is pick up everything from point B to 00071 7F9A 90 13 BCC LAST GO GET LAST LINE NUMBER the end of BASIC and put it back down 00072 7F9C FO SE MIDDLE BEQ BAD x 00073 7F9E C9 2D CMP W 31S IT A MINUS SIGN again at point A Lines 3 and 4 will be 00074 7FAO DO 5A BYPASS BNE BAD 3NO ERROR written over in this step At this point 00075 7FAZ 20 70 00 JSR CHRGET YES FETCH NEXT CHAR hagas ferred 00076 7FAS DO 08 BNE LAST IF PRESENT GO ON we have just transferred some memory 00077 7FA7 A2 FF LDX FF OTHERWISE DEFAULT TO The link addresses will now be all wrong Sees A en Ta RENE A DINE NUMBER SERE Fu 2 41 for the new locations Fortunately 00080 7FAD DO O3 BNE DEFALT BRANCH ALWAYS there is a routine in the ROMs that will QO0081 7FAF 20 F amp B8 LAST JSR INTEGR GET LAST LINE
113. HORTEST PUT ELEMENT LENGTH IN X 7 OFFSET TO ADDRESS 7GET LOW BYTE OF ADDRESS GET HIGH BYTE INITIALIZE Y 7SET UP LOWTR AS ZERO PAGE PTR FOR ARRAYAD COMPARE ARRAY TO STRING STRING IS GREATER STRING IS LOWER CONTINUE COMPARE FIND OR CREATE A DESCRIPTOR FOR SS INTEGER 7BY JSR TO FIND STORE HIGi BYTE OF INDEX FIRST THEN LOW BYTE RESET TXTPTR RETURN TO BASIC IF LOWLIM INDEX THAN ELEMENT CAN T BE FOUND SO BRANCH TO NOTFOUND RIN 7RESET LOWER LIMIT CONTINUE SEARCH XF UPLIM INDEX 7THEN ELEMENT CAN T BE FOUND 7SO BRANCH TO NOTFOUND ROUTINE RESET UPPER LIMIT INDEX UPLIM LOWLIM 2 7ADD UPLIM TO LOWLIM JAND STOR IN INDEX DIVIDE BY TWO l MEANS NOTFOUND LOWTR INDEX 3 LOWTR 2 VARIABLES LENGTH SEARCH INDEX HIGHEST POSSIBLE POSITION FOR SEARCH LOWEST POSSIBLE POSITION FOR SEARCH WORK AREA LENGIH OF CURRENT ARRAY ELEMENT ADDRESS OF CURRENT ARRAY ELEMENT MICRO The 6502 6809 Journal in SS96 To use the amp feature you must BRUN the object program The other choice is to BLOAD the program and use CALL 27632 in place of the ampersand This will allow you to use this subroutine in conjunction with another ampersand routine Upon entering the subroutine at ENTRY the TXTPTR see july Apple Slices for an explanation of TXTPTR FIND CHRGET DATA and VAR NAM is advanced to point at the first character past the GET token Next a JSR to CHKO
114. ITION 708 FOKEV UC 718 2 Y 728 FORX ITOR 238 F214 32 930 16 8 749 FORH 1TQS 758 I PEEH F4H J 32 TF L2 1 41 THENJ 1 768 GzG3J IFHSBTHEN 88 279 6 246 88 NEXTH 290 POKEC CC 1258 4D 888 NEXTX 885 PRINT 816 INPUT NEXT CHARACTER NO D 820 RETURN 888 REM SUER FOR R KEY DRAUS REQUIRED CHAR ON SCREEN 900 PRINT INPUT N OF CHARACTER TO BE REVIEUED K 910 IFK ATHEN980 928 GOSURGSO 2 Y 238 FORX 1TOR 949 FeCCUC T A HG SPEER FD 959 F RH ITOS RsINT 24 H 1 4 5 N2128 R 948 JeINT I R 378 IF J 1THENPOKE 24 632 4H 1o T I N 988 NEXTH NEXTX 998 UCZPEEK 1433 L 21 05 1433 1888 E 48 IFUC 161 THENE 49 1919 POKEU E 1815 IFUC 49THENUC 32 1020 RETURN CSE means OSI Software and Hardware Specializing in C1P and C4P machines Basic Load SAVE Employs token loader system 50 100 faster than the old indirect ASCII system Maintains a listing of file names found on the tape Basic Enhancer Renumber Auto Sequencer Screen Control func tions and tape l 0 system that is faster and has file names comes with required modified monitor Rom chip NEW NEW NEW ANCHOR SIGNALMAN MODEMS Please write for more info on new disk programs or send 2 00 for catalog Please include 2 00 shipping 4 00 for modems Computer Science Engineering Box 50 291 Huntington Ave Boston 02115 MICRO The 6502 6809 Journal 89 S THE ATARI KID ALTOS ve em HOW TO WRI
115. MASH The Software Farm 3901 So Elkhart Aurora CO 80014 PH 303 690 7559 No 55 December 1982 It is late at night in a monster infested graveyard and you have been given the job of keeping the monsters in All you have between you and complete chaos is a new MonsterMasher System and quick reflexes Monster Mash is an original and unique arcade action game written in assembly language for the Apple II and Apple in emulation mode 29 95 MICRO The 6502 6809 Journal 33 s box is open And all the evils The world is already changing for the worst Your skills and courage are needed of the past are loosed upon mankind Armed with bolts of lightning you have the chance to recapture anq return these corrupt creatures of doom to the prison of Pandora s box Time is short Pandora r w Q r 2 breaks loose INICRO News by Phil Daley MICRO Staff Editor Apple Bits and Pieces As the release date for a new APPLE approaches rumors fly fast and furious Apple is securing sources for one million 68000 microprocessors leading me to believe that the Lisa model APPLE IV will be the first out probably this Spring It is to sell for approximately 8000 and to be pitched at the business person who knows little about computers At least those are the rumors The Seem alike Franklin ACE 1000 may prompt Apple to release the Super Apple II sooner than originally an
116. MF MS 8 6760 3 686 MS4 LDX 15 690 LOOFZ DEX 700 BNE LOOFZ 716 LDX 2 720 JMF DELAY TXO 3 740 MS1 2 LDX 228 750 LOOF4 DEX 7460 BNE LOOPA4 770 RTS 780 790 MS6 9 LDX 52 800 LOOFS DEX 810 BNE LOOFS 820 LDX 5 gio JMP DELAY 840 850 TABLE BYTE 96 224 22 160 15 144 980 208 860 BYTE 112 240 48 176 0 128 64 192 870 BYTE 8 24 40 56 72 88 Listing 2 Listing 3 FO 1 AOFE LDY FB 100 4 0222 FC ea DEY i 110 START LDX 64 FC94 DOFD ENE FC92 120 STX trooQ FC9 amp SSFF EOR FF X 136 NOF FC CA DEX i 140 LDX 198 FC99 DOFS BNE FC91 i 150 X1 DEX FC9B 60 RTS 160 BNE X1 176 STX F000 i80 LDX 3 190 LOX 198 200 X2 DEX 210 BNE X2 220 JMF START No 55 December 1982 MICRO The 6502 6809 Journal pretuned to a specific frequency be sure the one you buy is set to 40 KHz One transducer that costs less than 10 is J4 815 in the Calectro catalog The circuit can be installed on any of the unconnected prototype sockets adjacent to the ACIA with a pair of output lines running out of the com puter case to the transducer Or the cir cuit can be placed externally on perf board with connection lines for power ground and RTS Because my CIP board is crowded with add ons I chose the latter method I recommend that you do not mount the transducer to the C1P case because it has to be in a fairly direct line with the receiver micro phone grid on the front face of the com mand console for transmi
117. MS 91jesseo eut nd no gep ayesseg i ut NOY Jeu9 yoyms 0 euis N3HVHOJ 5 Qno WOH leue uoiI s 0 eu6is WvHIH Z no WOU OISV8 U IIMS 0 EuDIS WvHOT uod O I diuo uo 01689 SOW eje9 uop 2x jNdul Q NG indino ug LLLLOLXX 161s 6eu UOOA eeg 089 SOM l Ja siboay i011u0 IOUJ8 A DIA uopound ow leijonuo eogiejul OePIA 9999 SOW c v S 9 L Zl Q c st i10 0 cLctG LZe S OL2ES 69 eS B9ces L9ZES 99 ES G9ces v9OZES EZES coges L9ces 09c sS 6S2eS eSces LSc S 9SctS SSZES vSces ESZES 8 0Q 210Q 9100 SLod yoa 100 toa LLOG oloa 4000 400d qooq 0000 gooq vooq 6000 800g 200d 9000 MICRO Data Sheet 11 No 55 December 1982 NEW SOFTWARE for TRS 80 Model Ill and the Color Computer u Church Contribution System designed to simplify and facilitate the tedi ous chore of recording envelopes Provides a variety of reports Maintains its own data files Only 150 Data Base Manager designed to help organize all your data and pro vide you with meaningful reports Add or delete any information New files can be created and old information transferred Only 150 m Single Entry Ledger designed as an uncomplicated control of finances for home or small business Add de lete edit at any time Compatible with DBM Only 95 Write or phone for complete software price list Dept MI 2 2457 We
118. NOW RUN WORD PRO 3 OR WORD PRO 4 FROM THE SAME MACHINE Available for either 4000 or 8000 Series ALSO For 2001 3000 Series Computers Operate these Models in a Full 8032 Like Display For Word Pro 4 and all other 80 Column Software All installation instructions included EXECOM CORP 1901 Polaris Ave Racine WI 53404 Ph 414 632 1004 PET CBM a trademark of Commodore Business Machines trademark of Professional Software Inc MICRO The 6502 6809 Journa Computer Get Down to Business Disk Based Data Manager Create and manage your own data base Allows you to create add change delete search sort print etc Available for VIC 20 Commo dore 64 any CBM or Pet and IBM Personal Computer VIC 20 59 95 Allothers 79 95 Inventory Control Manager Fast efficient inventory package which will manage your day to day Inventory requirements Provides information on sales and movement of items Mailing List Manager 4 050 items per 8050 disk 1 300 on 4040 disk and 1 200 on 1540 1541 disk User defined label format 1 4 across Payroll System Ful featured complete Payroll System Up to 350 employees on a 8050 disk Prints checks 941 s and W 2 s For the CBM 8032 8050 4032 4040 Commo dore 64 1541 Hospitality Payroll The most compiete payroil system written specifically for the Restaurant industry available today Recognizes tip and meal credits pay advances salaried and hourly employees et
119. Name The Football Comput Stat Apple II IBM PC Radio Shack MIII Memory 48K Language BASIC Hardware One disk drive printer optional Description Compu Stat con System tains programs and related data for the analysis of pro football s regular season both point spread records and the underlying box score sta tistics It performs analyses for the 1981 and 1982 regular sea sons A related program prod uct Tally Sheet keeps a run ning tally on your predictions Price 100 3500 depending on programs and equipment ordered Includes user manual program diskette and security chip Author Dr John Page Available Interactive Sports Systems P O Box 15952 New Orleans LA 70175 Name Elements of Mathematics System Apple II Memory 48K Language BASIC Hardware One disk drive Description This program was developed to assist students in adding fractions reducing frac tions and adding fractions with unlike denominators Materials were developed and tested by the authors before be ing published Price 90 00 Author Ray E Zubler Susan Sarapata Available Electronic Courseware Systems Inc P O Box 2374 Station A Champaign IL 61820 217 359 7099 or computer retail stores and book stores continued What s eating your Apple Find out with Apple Cillin I If you use your Apple for your business or profession you probably rely on it to save you time and money
120. O ORK lt 2 OR RF THEN 77 REM FORGET M 75 IF MIDS CS K l S THEN C LEFTS C K 1 CHRS 95 REM PUT A TRAILING UNDERLINE AT LAST SPACE AS A MARKER FOR THE LEFT HAND STRING 76 IF LEN GS gt 2 AND LEFTS G 1 S THEN GS CHRS 95 RIGHTS G LEN GS 1 REM PUT A LEADING UNDERLINE AT FIRST SPACE OF RIGHT HAND STRING AS A MARKER 77 GOSUB 17 K LEN C PRINT MS LEFTS C 8 GOSUB 18 PRINT RIGHTS C K 8 K FRE 0 IF SF THEN D 1 GOTO 55 REM PRINT REST OF A SPLIT LINE 78 RS 0 IF FF THEN FS FS 1 FF 79 D O SF 0 G IF B 1 GOTO 25 REM GET ANOTHER LINE NUMBER IF E O L ELSE FALL THROUGH AND GET ANOTHER STATEMENT 80 GOSUB 2 D 1 GOTO 34 81 REM INITIALIZATION OF VARIABLES 82 DIM T 127 H 4 V 127 83 REM INITIAL VARIABLE SETTING HAS AN 80 CHARACTER WIDE PRINT LINE AND 82 LINE PAGE LENGTH INCLUDING HEADER EXCLUDING CONTINUED INDICAT OR CHANGE LL AND LP AS DESIRED FOR OTHER FORMAT SIZE 84 PE PEEK 75 256 PEEK 74 1 P PS REM PS INTEGER PROGRA M START ADDRESS MINUS ONE PE INTEGER PROGRAM STOP ADDRESS MINUS O 0 2 NE 85 B O LL 80 LP 82 IM 4 TN O TS O TR 0 S X 01234 56789ABCDEF cs ue G ONS SMS sLBS BBS 86 REM T ARRAY STRING CONSTANTS FOR PRINTING TOKENS 87 DATA c Ioad Save Con Run Run Del New Clear Auto LLL Man Himem Tomem S
121. OSI C1P As a C1P owner I type in a lot of BASIC programs mainly because neither OSI nor independent vendors have the pro grams I want While I pounded my fingers to the bone and cursed my two fingered typing speed I wished for a utility similar to the macro function of some assemblers After punching out GOSUB8000 GOTO650 for the 20th time in a program I was inspired to write BASIC Macro Macro is an extension of the Cursor Control program MICRO 36 75 It lets you insert one of ten macros up to 70 characters long in a BASIC line with only two keystrokes three if you count CTRL R as two keys If a phrase such as GOSUB8000 GOTO650 oc curs frequently in a program you re typ ing store it in a BASIC line 0 9 1 GOSUB8000 GOTO650 Now as you encounter that phrase hit CTRL R A white block will appear Type 1 and the phrase will be printed on the screen and stored in the input buffer Should you type a line number that doesn t exist Macro will wait for another number If you type a letter Macro assumes you ve changed your mind about calling a macro and exits CTRL R stands for repeat No 55 December 1982 When designing Macro I had plans for a sophisticated phrase storage area with variable length storage space After I d written the code to find and print the phrases which was the lesser half of the program I found that I d used over half a page of memory This approach was going to cost me well ov
122. P OF MEMORY POINTER execute and will produce a syntax error 00014 0000 SAVE 59 SAVE START ADDRESS message 00015 0000 ADDRES 5C 3 ADDRESS OF FOUND LINE 8 g 00016 0000 CHRGET 70 3BASIC CHRGET ROUTINE If the range is backwards e g 00017 0000 CHRGOT 76 BASIC CHRGOT ROUTINE lt 200 100 an error message will again Dig as POINIR Ris hd 1 CHRGET POINTER z be produced Finally I feel so strongly 00020 0000 RETURN 7D RETURN TO CHRGET ROUTINE about error checking that I incor oe 0000 FIXUP B4AD 3ADJUST POINTERS is 22 0000 CHAIN B4BS 3REBUILD LINE CHAINING porated one more feature After enter 00023 0000 SEARCH B5A3 SEARCH FOR BASIC LINE ing a valid delete command the com 00024 0000 INTEGR B8F6 FETCH INTEGER INPUT puter will respond with ARE YOU Beane 2909 ERROR Spron SYNTAX ERROR ROUTINE Sie cake 2 ARE YOU SURE SURE giving you one last chance to 00027 0000 CHROUT E202 PRINT CHARACTER TO SCREEN change your mind This feature is only 00028 0000 00029 0000 available to users with 4 0 operating 00046 0000 ENE systems since the ARE YOU SURE 00031 7FS2 routine is part of the normal SCRATCH be 7FS2 A 4C SETUP LDA 4C 0P CODE FOR JMP 33 7F54 85 79 STA WEDGE and HEADER commands M 00034 7F56 A 63 LDA lt ENTRY 3LOW BYTE OF ENTRY 00035 7F58 385 34 STA MEMTOP 3LOWER MEMORY TO PROTECT 00036 7FSA 85 7A STA WEDGE 1 About the Program nus o
123. PN an Applesoft built in routine is performed which checks for an open parenthesis The JSR to GET ARYPT Applesoft built in routine returns with the address of the descrip tor for XX in LOWTR 9B 9C If the array cannot be found an OUT OF DATA IN LINE nnn error message is produced Lines 36 40 check the number of dimensions to be sure that this is a one dimensional array If it is not a syntax error message is produced line 40 The array descriptor address is then saved for future use in SAVARRAY lines 41 through 44 A JSR to CHKCOM en sures that a comma separates the two parameters and loads the accumulator with the first byte following the com ma This byte is stored at VARNAM Lines 47 through 54 load VARNAM 1 with either the negative ASCII of the second byte of the two byte or longer variable name or 80 if the variable name is only one byte long A JSR to FIND loads LOWTR with the address of the descriptor of the passed variable Lines 56 through 64 load and save the length and address of the passed variable in VARLN and VARAD respectively Lines 65 through 74 re establish LOWTR to the address of the array s descriptor SAVARRAY and initialize the upper limit UPLIM J to the size of the array The lower limit LOWLIM is then initialized to zero and the main search loop SEARCHLP is entered First there is a JSR to COMPIDX which is an internal rou tine that takes the average of the upper and lowe
124. PROGRAM 51 TOTAL NON REM STATEMENTS END HEREHERE ZAP BYPASS FOR LISZT D Chr 4 QT Chr 162 BR QT Print D OPENDF Print D DELETEDF Print D OPENDF Print D WRITEDF Print SAVELISZTER PATCH Print 87 DATA A 1 B 25 Gosub 2005 Print 68 DATA A 26 B S Gesub 2aas Print 89 DATA A 51 B 51 Gosub caos Print 9 DATA A Se B 75 Gesub Faas Print 291 DATR A 76 B 107 Gosub Z005 Print DEL 1000 3048 Print INVERSE QT DQTA CONVERTED Print NORMRL SPEED 182 L 15T 87 91 SPEED 255 Print D CLOSE Print D EXEC DF End He CONVERT ONE LINE For J A To B Read ST Print QT LF L Len ST If L Then Gosub 3005 If J amp Then Print QT If J lt B Then Print BR Next Return EEEE CONVERT ONE STRING For I 1 Tet C Mid ST I 1 If C And C Chr 219 Then C Chr asc C 32 LF LF 1 Print C Next Return END OF LISTING LENGTH 653 BYTES TOTAL OF 27 LINE NUMBERS 3 TOTAL REMARKS MICRO The 6502 6809 Journal 91 aT ing like it before Nothing else like it no brings you continuous Hi Res action animation in every adve turous moment And real running leaping crawling Real fighti shooting stabbing dynamiting Real wounding poisoni killing Real action excitement mystery Allina real ti challenging adventure that s the wave of the fut Paul Stevenson s graphic genius first displayed
125. PTR essa STY WINPPTR 1 esse 90 RESET ALL BASIC SCAN LINE FLAGS e ie a920 Lay e 2930 LOX 0 esae 8358 COPY BASIC LINK AND LINE NUMBER FROM INPUT TO OUTPUT asa 97G COPVLNK LDA XINPPTRO V aasa STA lt OUTPTR gt Y esse STR NXTLIN V Continued on next page MICRO The 6502 6809 Journal TURN AN EPSON PRINTER INTO A DAISY Li with the ISUPER MX CARD rfor the APPLE Il l The standard of printing excellence is the i daisy wheel printer The SUPER MX card provides the Epson printers with just about the same quality print as the 1 daisy wheels SUPER MX Roman font is the standard Epsons can now print Elite with the SUPER MX card Other optional font styles are available in addition to the standard Roman font that just plug into the extra sockets pro vided They come in pairs so you can add a total of four extra fonts Orator Large comes with Letter Gothic Script comes with Olde English LETTER GOTHIC is modern looking ORATOR is easy to read and good for speeches SCRIPT adde the personaz touch OLDE ENGLISH is very farmal and elegant Apple Hi Res graphics is fully sup ported with a wide variety of commands including double dumps both pages side by side dump from page 1 or 2 double size emphasized rotated strip chart recorder mode and text screen dump The two expansion sockets allow EPROM expansion to 12K to insure you that the SUPER MX card will remain
126. Price 435 00 4 port VISA Master Charge Includes nine user selectable preprogrammed routes Available Park Computer Corporation Box 13010 Minneapolis MN 55414 MICRO 107 INICRO 6809 Bibliography 86 Color Computer News Issue No 11 August 1982 Ostrom Steven M Graphics and Animation for the Color Computer pg 30 42 A tutorial for the TRS 80 Color Computer graphics with a number of demo routines Dawson Don Color Yahtzee pg 44 47 A game for the 6809 based Color Computer Phelps Andrew Comment Corner pg 49 50 A tutorial on RAM hooks places where the program jumps and which then jump elsewhere in memory McClenahan Shawn A A Real Keyboard for the Color Com puter pg 55 60 A hardware project for the Color Computer Field E C Electro Sketch pg 67 69 A graphics program for the 6809 based Color Computer which allows one to draw simple schematics and save or print them Lee Paul Educating Your Preschooler with the Color Com puter pg 71 A simple teaching program for young children using the Col or Computer Weiss Arnold Cryptogram pg 72 76 A program to present cryptograms on the TRS 80 Color Com puter screen or to make printed copies Harper Jeff Word Processor pg 77 79 A word processor program for the 16K or 32K Extended BASIC Color Computer Foster Robert D Monitor pg 81 82 A simple monitor to all
127. SE 73 SEQ OUTFUT since sockets are available everywhere 00s i n EE n ASCII I The chip has the circuitry for the en 1052 76 x coder speech to digital and decoder 1052 77 x ew Isp gital 1052 78 x XNFUT ROUTINE digital to speech conversions 1052 79 x Pins 1 and 7 are the speech input dos ius a 2 x Te Ls TE 52142 t NAL WHEN READY and output while pins 13 and 9 are the 1054 60 16 i2 82 INPO LDA DLM2 x digital input and output respectively 1057 C9 1F 83 CMF 1F Data then travels in the chip from pin 1 MEA S ER d oe to pin 9 or from pin 13 to pin 7 depend 105E EB 84 INX s T ore 3 ing on the input to pin 15 encode 105F 00 F3 87 BNE INFO ete 1061 20 E2 FB 88 INP4 JSR KKK decode A high in pin 15 makes the chip 1064 A9 0C 89 LDA C START CLOCK encode the speech input to pin 1 giving 1066380 80 EF 90 STA DELR digital hrouzh pin 9 A low i 1069 A0 00 91 LDY 0 a digital output through pin 7 A tow in 106E A2 08 92 INFUT LDX 8 EICTH BITS pin 15 converts digital input through 106D A49 04 93 INPF1 LDA 4 CLOCK LOW pin 13 to a speech output in pin 7 SU IER S EF on Rap ee URB The chip provides for positive and 1073 EA 96 NOF DUMMY negative excursion of the speech signal i014 80 EF 24 Eun PEER PA eras with a regulated voltage at half of the 1078 26 14 99 ROL BITS ASSEMELE WORD supply voltage that is used as zero for 106185 S be iM LDA eae CLOCK HIGH the speech input or output The chip 107F3CA 102 DEX COUNT BITS also provides pin 12 t
128. T CBM original upgrade or 4 0 ROMs This routine squeezes all the imbedded blanks line separators and comments from a BASIC program In addition the following syntax corrections are made 1 GO TO GOTO 2 IB GOTO IF THEN 3 IF THEN GOTO IF THEN SQUEEZE is relocatable and can be stored in either cassette buffer It is designed to be called with a SYS com mand in the first line of your BASIC program This means that you need to store only one copy fully com mented and expanded of your pro gram on tape or disk When you run the program it is automaticaly com pressed first BASIC Example Program XXX ADDRESS OF SQUEEZE ROUTINE 10 SYSXXX 15 20 REM EXAMPLE PROGRAM 30 PRINT EXAMPLE PROGRAM 40 FORI 1 TO 10 45 PRINT SQR REM ROOTS 50 NEXT 55 60 IF lt gt 0 THEN TO TO 80 42 65 70 tB 1 REM NONSENSE 75 80 END After the SYSXXX squeeze call the program continues execution with the following BASIC code 10 SYSXXX 30 PRINT EXAMPLE PROGRAM 40 FORI 2 1TO10 45 PRINTI SQR I 50 NEXT 60 IFI lt gt OTHEN80 70 l 1 B 1 80 END Cautions l Do not use SYS XXX any blanks between SYS and XXX can confuse the BASIC run time pointers Any GOTO GOSUB or THEN references to REM commented lines or null lines will become erroneous due to the deletion of these lines Ed note SQUEEZE does not handle these references SQUEEZ
129. TE AN APPLE 3 exceptional books join the DATAMOST library Zowonder why you were ever intimidated 7 By the thought of programming igu want to get the very most out of your Apple IBM PC or TRS 80 then you t reglly want HOW TO WRITE A PRO because there are three specific volumes l Ms Before you re past Chapter Hertha Appleone for he BM BC YOU 9e PONA oN By ihe endans nd one for the TRS 80 EIS book you Il be willing to tackle business Ee amet aerea tak SSN Cae tne Ba leads you through your favorite com Get your iw Availabl t ii puter and takes the mystery out of writing ap ipee ow Available at computer programs for it As you proceed interest 1 Dook stores OT ing chapter by interesting chapter you ll E DATAMOS FE 213 709 1202 No S Reston Publishing Comps f 9748 Cozycroft Ave Chatsworth CA 91311 A Prentice Hall Compan Apple is a trademark of Apple Computer Inc IBM PC is a trademark of IBM Corp TRS 80 Is a trademark of Tandy Corp Reston Virginia VISA MASTERCHARGE accepted 2 00 shipping handling charge California residents add 6 2s sales tax Toll free 800 336 0338 INICRO Updates and Microbes Updates John Beckett of Collegedale TN sent in this revision to A Homespun 32K Color Computer 53 91 Solder the chips together rather than expecting hand bent pins to make good contact It is best to put a ferrite bead around the wire connected to the 6883 chip
130. The 6502 6809 Journal 45 Skyles Electric Works Presents The VicTree Leaves your new Vic or CBM 64 with 35 additional commands Branches out to most BASIC 4 0 programs Roots into most printers New from Skyles the VicTree a coordinated hardware and software package that allows your Vic to branch out in unbelievable directions and makes it easier than ever to do BASIC programming debugging and to access your disk And the new VicTree provides routines to interface the Vic to the powerful ProNet local network 8kb of ROM 4kb for the BASIC commands 4kb for disk commands and interfacing to ProNet plus 4kb of RAM for miscellaneous storage Perfect not only for the new Vic but also for the Commodore 64 Unbelievably simple to use and to install the VicTree gives you all the additional BASIC 4 0 commands to allow most BASIC 4 0 programs to work on your new Vic or CBM 64 Now only 89 95 or 99 95 complete with Centronics standard printer cable Cable alone 19 95 Available now from your local dealer or order through your Visa or MasterCard toll free 800 227 9998 California Canada Alaska Hawaii 415 965 1735 or send check or money order directly to 231E South Whisman Road 3 Mountain View CA 94041 Skyles Electric Works 415 965 1735 46 MICRO The 6502 6809 Journal No 55 December 18 ee conmodore BEEN BASIC Line Delete for PET CBM and VIC by Thomas Henry Use this convenient ut
131. UB509 60T0228 REM F KEY IFUz278 THENS OD GUC 605UB498 GO0TO22 9 8 REM ESL KEY IFW22 THENEND 9 REM CR KEY IFUzZz13THEN328 G05UR768 60TO13e REN RK KEY IFUz82THENGU SIRS G3 GOTO228 KEM LOAD USK SUER X 67 4 F RY dTQTS sREADAsFOKEX Y A NEXTY 72 32 185 255 133 216 184 168 184 179 194 96 378 RETURN 398 REM SUBER FOR KEYS 2 1 OR F 395 REM SHIFTS CURSOR SETS OR RESETS INDICATED BITS 406 X Y L 32 8 P Ue T FF2 YTHENM L 418 POKEU Q IFA 8THENAG 429 IFM JANDMZ2LTHENA4Q 430 V rF G 0TO459 349 ze eC 32 L M 459 UCsPEEK V 3E 48 480 I FUC amp 81THENEz49 476 G0T0498 488 UCSPEEK Y sE 48 IFUC2 161 ORUCZ A9 THENE 247 485 IFUCz48THENUC 32 499 POKEV E SRE TURN 495 REM SUER FOR ID KEY SHIFTS CURSOR DOUN A LINE 968 L L 1 IFL ETHENL L 6070548 916 POKEV UC UZU 32 UCZ PEEK V E248 928 IFUCz161THENE 49 336 POKEU E 546 RETURN 398 SUBR FOR DRAWING WORKSHEET FOR CHAR 669 FORX 1TOS2 F RINT sNEXTX 619 X 53415 F 48 FORZ 1TO8 POKEX Z F 2 NEXTZ 649 F RZ IT B U Z IFU29 THENU H 19 No 5 POKEX 32 2 ABSUzNEXTZ Yz53448 UC PEEK CY L 21 021 6248 IFUCzTS1THENE 49 5 December 1982 Listing 1 continued 678 FOKEY E YzY 3J 688 aSgz COHMANI 4685 PRINTEHR 13 CHARACTER NO 305 698 FORXs1TOB P KES49534X ASC MIDS A X TO SNEXTX S RE TUER 495 REM SUBR FOR CR KEY 498 REM SAVES CHAR IN CHAR GEN Red AT CORRECT F S
132. ULL 250 0244 3007 BHI TOKEN 3CONVERT IF TOKEN 260 024U A497 FND LUY 97 KESTORE Y REGISTER 270 024E 206F02 JSR STORE 280 0251 LOFO BNE FOUNI 7BRANCH ALWAYS 290 0253 300 0253 38 TOKEN SEC 3FINHi amp CONVERT TOKEN 310 0254 E97F SEC 7F TOKEN MINUS 7F 320 0255 AA TAX 3TOKEN INDEX IN A REG 330 0257 AOFF LDY FF 340 0259 CA To DEX 350 0254 F008 BEG T2 FOUND TOKEN IN TABLE 340 025C CB Ti INY NO NEXT LETTER 70 0250 B984A0 LIA 40845 Y 380 0260 10FA EFL Ti LOOF amp GET NEXT CHAR 390 0262 30FS BMI TO ALOOF TO NEXT TOKEN 400 0264 C8 T2 INY 410 0245 B984450 LUA 4084 Y CET LETTER 420 0268 30E2 BMI FND LAST LETTER OF TOKEN 430 026A 205F02 JSK STORE 440 0260 LOFS BNE T2 450 O26F 460 O26F A50E STORE LIX 0E ST KE CHAR IN BUFFER where it was stored at the start of the INPUT routine the X register Loca tion 0E the screen character counter is loaded into the stack to update the buffer count For those unfortunates who have not been converted to Cursor Control I whipped up a short patch to the stock output routine that prints CIP error messages correctly As the output rou tine prints characters on the screen ERGO checks every carriage return to see if it comes from the error message routine If so ERGO steps in and prints the second letter of the error message as a letter not a graphics character The stock carriage return line feed is omit ted to save space on the screen To patch ERGO into the output rout
133. VARIABLES and INTEGER NUMBERS FORM 0 64K TINY COMPILER is written in BASIC I generates native relocatable 6502 or 680 code It comes with a 20 page manual an can be modified or augmented by the usei 24 95 on tape or disk for OSI TRS 8 Color or VIC ALSO FROM AARDVARK This is only a partial list of what we carry We have a lot of other games particularly for the TRS 80 Color and OSI business programs blank tapes and disks and hardware Send 1 00 for our complete catalog AARDVARK 80 2352 S Commerce Walled Lake MI 48088 313 669 3110 e Phone Orders Accepted 8 00 a m to 4 00 p m EST Mon Fri MICRO The 6502 6809 Journal No 55 December 1 Home Control Interface for CIP by John Krout A circuit is presented that uses the C1P s ACIA to control an ultrasonic transducer The transducer generates signals that control the receiver modules BSR X 10 DRIVER requires OSI C1P BSR X 10 hardware modifications Perhaps the greatest untapped potential of personal computers is control of common household devices such as lamps air conditioners and TV sets A computer that turns an air conditioner off after you leave for work and on before you return will rapidly pay for itself in energy savings and one that handles lights and entertainment equipment on a schedule will dis courage burglars who prefer to enter unoccupied homes You can probably think of more uses BSR markets the X 10
134. Video Data Bit 6 VD6 Whenever these bits are high and the modification is enabled VD5 and VD6 will be masked turning lower case into upper case and an upper case character in the selected mode i e inverse dim etc will be displayed instead of the lower case character Since charac ters above 128 also have VD5 and or VD6 set gating is used to restore VD5 and VD6 and disable the modification whenever VD7 is set retaining your graphics characters Before we get into soldering let s 74 discuss OSI s video as implemented on the CIP Even though we ve spent the past couple of years squinting at our CIP s screen almost daily some of its subtleties have escaped us When the creen is filled with CHR 161 OSI s solid white block character and is viewed from about two feet away all but the poorest TV or video monitor will show faint dark vertical lines on character cell boundaries You may have attributed these lines to a one dot wide intercell space Closer inspection reveals that the whole screen is filled with evenly spaced dots no blank spaces appear between cells As the rows of dots of each character are clocked out of the shift register U42 the first dot in each row is held only one third as long as the others in that row Since this happens for the first dot of each row and for each character the end result is faint dark bars when viewed from a distance This is the subtle video defect al luded t
135. Videoterm Softswitch Microsoft MICROSOFT SOFTCARD Best Buy Has everything the Softcard has except MBASIC CP M operating package with an 80 column range of CP M software on Apple tI Includes U Z 80 PROCESSOR BOARD ALS Software 149 and Softcard Microsoft and 2 80 Card and Osborn CP M Manual 595 JOYSTICK Takes the place of two Apple Paddle Controllers From BMP Enterprises Heavy duty industrial con struction and cable Non self centering With polarity switches for consistent motion control List 59 suuueu 39 MONITORS FOR YOUR APPLE AMDEK 300G 18MHZ Anti Glare Screen 179 EC 12 HIRESGREEN 179 SUPER SPECIAL SPECIAL 12 GREEN MONITOR 99 SPECIAL AND NEW 5 MEGABYTE HARD DISK For Apple Il Su opteg with controller Use E CP M Apple DOS amp Apple Pascal 1 514 DISK DRIVE Use with standard Apple II disk controller 514 FLOPPY DISKS With hub rings Box of 10 With other purchase 15 Withoutpurchase 23 00 295 16K MEMORY EXPANSION MODULE The preferred 16K RAM Expansion Module from PROMETHEUS Fully compatible with CP M and Apple Pascal warranty With full 1 year parts and labor WITH WORDSTAR AND SUPERCALC Do professional word processing on your APPLE All necessary hardware and software included Complete 80 column video display enhanced character set 16K memory board Z
136. XT INDEXES 3 STY INPIND STY OUTIND CHECK FOR END OF BASIC TEXT LOY 1 LDA COUTPTRD Y BNE SCAN 3 sADJUST START OF VARIABLE RDDRESS i LDX 5 H LDY VRRTRB 1 LOA VARTAB ADC 1 SWITH CARRY SET ADC 2 BCC CLR INY 3PERFORM BASIC CLR E CLR STY MOUTPTR X DEX STR OUTPTR X DEX BPL CLR FIX BASIC LINKS AND RETURN TO CALLER 3 LINK JMP LHKPRG 3 3 JSCAN BASIC INPUT TEXT LINE SCAN LOY MINPING 3GET AW INPUT TEXT CHRRFX LOR lt INPPTRD Y INC INFIHD BOOST INPUT TEXT INDEX E LOX QTFLAG ERSIC QUOT FOUND FLAG Ul BNE OUTTEXT AYES COPY ALL TEXT CHI E CMP Ww TEST BLANK BEQ SCAN EYES IGNORE BLANKS 3 CMP REMTK TEXT REM BNE CKSEG FMO NEXT CHECK TXA PjvyES FORCE ENO CF LINI CKSEG CMP W FENG CF TEXT LINE SEGMEN BNE CKECL eNO NEXT CHECK 1 CARRY SET H STs IFFLRG PUES RESET IF FLAG LOY QUTSEG FANY SEGM CHARS CN OUT BEQ SCAN INQ IGNORE SEGM SEP i DEX YES TRIGGER ZERO SEG STA OUTSEC E CARRY STILL SET NEXTLINJ BCC NEXTLIN FLONG JHMF ACCOMODATION CKEOL TAK TEXT END OGF LIHME BEQ OUTTEXT FYES COPY EOL TE INC CUTSECG INCA OUTPUT SEGMENT CH i LOY PRVOGLIT GET PREVIOUS OLITPLIT CHA CKIF CMP WIFTK TEXT IF TOKEH SNE KG 2NG NEXT CHECK STH IFFLRO FLAG HRHFFEHIHG cKGO CMP GOTK TEXT GO TOKEN BNE CKTQ NQ NEXT CHECK LOR G0TOTr ES REPLACE BY GOTO CK TO CMP 4TOTK TEXT TQ TOKEN BNE CKIFGO jHO HEXT CH
137. You can t afford to guess whether it is working properly or not Now you don t have to guess Now you can find out with Apple Cillin I Apple Cillin Il is the comprehensive diagnostic system developed by XPS to check the performance of your Apple Il computer system Apple Cillin I contains 21 menu driven utilities including tests for RAM memory ROM memory Language Cards Memory Cards DISK system Drive Speed Keyboard Printer CPU Peripherals Tape Ports Monitors and more These tests will thoroughly test the operation of your Apple and either identify a specific problem area or give your system a clean bill of health You can even log the test results to your printer for a permanent record Apple Cillin Il works with any 48K Apple system equipped with one or more disk drives To order Apple Cillin Il and to receive information about our other products Call XPS Toll Free 1 800 233 7512 In Pennsylania 1 717 243 5373 Apple Cillin I 49 95 PA residents add 6 State Sales Tax XPS Inc 323 York Road Carlisle Pennsylvania 17013 800 233 7512 717 243 53 3 XPS Apple it is a trademark of Apple Computer inc MICRO The 6502 6809 Journal 105 Software Catalog continued Name Basic Aid System TRS 80 Color Computer Memory 16K 64K Language 6809 Machine Language Hardware ROMPAK Description Basic Aid is a utility program to help and assist Color BASIC and Ex tended BASIC users S
138. a clobbered disk recover a killed file or find parts of a file when other parts have been lost With this new window into its disks the Color Computer sheds its image as a toy Now you can use this exciting machine like other powerful microcomputers For the TRS 80 Color Computer Available on disk with an accompanying manual from Software Options 19 Rector Street New York N Y 10006 212 785 8285 Toll free order line 800 224 1624 Price 49 95 plus 3 00 per SOFTWARE order shipping and handling New York State residents add sales tax Visa Master card accepted OPTIONS INC MICRO The 6502 6809 Journal 31 INCRO From Here to Atari By Paul S Swanson Atari News I was pleased to see that Atari Inc recently established two regional soft ware acquisition centers located in Cambridge Massachusetts and London England The centers were set up to ac quire software by contracting out for specific programs or by buying software that has already been developed in dependently more centers are planned for the future I ll let you know where they will be as soon as Atari annouces that information Technical Tidbits Code conversion is required in two areas when you re programming the Atari The normal character code called ATASCII is a variation of ASCII There are two other character codes used by the system One is used to write characters to the screen The screen handler does
139. a modified BASIC program line 10 would force the variables to begin being stored on top of the last lines ruining them To prevent such dis asters it s always a good idea to save a modified program to disk before trying to run it The actual chaining happens in line 2060 2060 DLOAD D PD 4040 MENU ON U UN For BASIC 2 0 and the VIC use 2060 LOAD STR PD 4040 MENU UN Soft Coding Notice the variables used in line 2060 above PD and UN program drive and disk unit number They are set earlier in the program in lines 1220 and 1230 1220 UN 8 REM DISK UNIT 1230 PD 0 REM PROGRAM DRIVE By setting them there and using only the variable names everywhere else in the program package it is easy to change the package to work with dif ferent equipment such as a disk drive that answers to device 9 instead of 8 We will have more to say about soft coding shortly but first we need to finish setting up Setting Text Mode One other task awaits us in prepar ing the machine Commodore com puters have two character sets one for graphics and one for upper and lower case text Since this program uses text we must enable the text character set A method that works for all CBM and PET models is given in lines 1080 and 1090 below On the VIC leave out line 1080 1070 REM SET TEXT MODE 1080 POKE 59468 14 1090 IF PEEK 57345 lt gt 54 THEN PRINT CHR 14 REM UNLESS FAT 40 MICRO The 6502 6809 J
140. adow registers for horizontal and vertical scroll values respectively The BASIC Program Listing 2 enhances the program presented in last month s article by ad ding the shadowing routine The machine language routine is converted to decimal and included as line 1010 in a DATA statement A new subroutine called at line 152 has been added at line 500 It first READs the machine language routine into the locations chosen Line 540 turns off the deferred vertical blank interrupt routine so that the computer will not try to branch through the vector that needs changing Lines 550 and 560 copy the current con tents of that vector into the JMP in struction of our machine language rou tine and then change the vector to point to location 600 1536 decimal Line 590 turns off the flag enabling the new routine and RETURNS Note that the second DATA state ment READ happens after the READ for the first one If you rearrange the pro gram make sure you pay attention to the DATA pointer so that you don t in sert the shape of the bird where the machine language routine should go There are a few other changes made to the portion that scrolls the bird Lines 266 through 292 are altered Line 266 now calculates the new position If it is the same as the old position except for the scrolling values the character is not erased It is erased only when the position value has changed this limits the flickering substantially S
141. afe The second category of variables is illustrated by line 1830 1830 QT CHR 34 This is the quote character It is needed later to allow INPUT statements to read past troublesome characters like commas We could use CHR 34 everywhere instead but CHR is a slow command in BASIC Predefining QT is at least ten times faster overall Other characters the mail list pre defines include RETURN SHIFTED RETURN and SHIFTED SPACE We will explain how each is used later in this series of articles The third class of global variables is the controllers These include both numeric and string variables used in IF tests and within expressions later in the program For instance line 1210 flags whether or not you want to allow the user to get out of the program by pressing STOP continued PET BASIC SCROLL PROGRAM Scroll thru basic program using Cursor up down keys Specify computer 6 00 on cassette 9 00 on disk Flip N File diskette storage case 50 6U disks 21 95 3239 Linda Dr Winston Salem N C 27106 919 924 2889 919 748 8446 Send for free catalog Memory Test for Apple on Disk 9 95 on Tape 6 95 System Saver for Apple Fan Surge Protection 2 extra outlets Apple power cord 75 00 BMC Green Screen Video Monitor 12 inch CRT sharp crisp 40 or 80 column display 90 00 DC Hayes Smart Modem 235 00 Micro Modem I 289 00 Chronograph 225 00 C Itoh Prowriter Print
142. aker but you can use another method if you write your programs to accommodate it Instead of using INPUT and GET to obtain information from the keyboard you can PEEK location 764 This loca tion contains the keyboard code of the last key pressed on the keyboard You must read this location then POKE 764 255 If the location contains 255 you know that no key has been pressed since the last time you read it The problem with this method is that the code you read is neither ATASCI nor the internal code You can get the values of all of these codes by running the following program 10 REM KEYBOARD CODES 11 REM STOP BY PRESSING BREAK 12 REM 18 REM 20 PRINT PRESS KEY AND THIS PROGRAM 30 PRINT WILL DISPLAY THE 40 PRINT CORRESPONDING KEYBOARD CODE AS A DECIMAL VALUE 50 N PEEK 764 60 IF N 2255 THEN 50 70 POKE 764 255 80 N 5 90 GOTO 50 If you use this program as a sub routine by itself it will act as a GET statement Putting the subroutine in a loop that stacks the codes in a string until it gets a RETURN code will act as an INPUT statement for alphanumeric MICRO The 6502 6809 Journal input For this remember to display the characters on the screen and to make allowances for backspaces Now your program will not produce a click with each keystroke The only other common code con versions required are for the graphics screens Those are simpler than the other conversions
143. also pushed on the stack when the pro gram was interrupted If this instruc tion was a BRK control is passed back to the system monitor If on the other hand it was an illegal op code control is passed to a user program that imple ments new micro coded instructions There are several methods to jump to the user code corresponding to each new instruction The most straight forward way is to use a CMP instruc tion followed by a BEQ for each ele ment in a list of new hex op codes If more than just a few instructions are added a more elaborate scheme may be necessary to reduce the execution time and program length In this situation 94 748287 256 x 4 PROM Figure 2 Schematic diagram of the illegal op code Trapper The board is compatible with any 6502 system bus All lines to the board are generated by the 6502 CPU C1 is a silver mica capacitor and R1 is a low temperature coefficient precision resistor Ci R1 68 pF 20K 45 you may want to use a jump table to build this case select structure The break service routine in listing 2 is completely transparent i e all registers are preserved The illegal op code is returned at address 0042 The address is arbitrary and can be changed to any convenient location If the user exits the break service routine at line 23 indicating an IRQ he should use the following sequence to restore the original registers PLA TAX PLP PLA
144. an 8 channel device Both multiplexer ICs and their operation are described in detail in the literature listed in reference 4 Figure 2 A 16 channel multiplexer circuit based on a 74150 TTL integrated circuit Construction details have not been discussed at length since they are ade quately described in the microcom puter and electronics literature but good construction techniques must not be underemphasized particularly for applications requiring higher precision The important construction practices are documented in the literature and are well known to experienced person nel Do not hesitate to ask for advice Some care should be exercised in the use of the converters For instance the characteristics of all electronic components are to some extent tem perature dependent Therefore large fluctuations in ambient temperature should be avoided during data collec tion or between calibration and actual use Another point concerns the use of the 555 based converter in the triggered mode described above When the EOC is reached the 555 IC starts discharging the timing capacitor and the system will remain in discharge mode until it is triggered again If the time between EOC and the next trigger pulse varies the circuit may operate with varying levels of residual charge on the timing capacitor The result will be timing er The end of conversion signal pin 3 of any of the 555 timers can be accessed by placing the
145. and To accomplish a line deletion a file must be opened so that the line to be deleted is the last Then deletion will remove it After working with Musicomp Paul Lutus first music editor I was spoiled by his hi res display of notes in motion I would love to have seen that feature retained in Electric Duet However by obtaining 2 part music with no hardware at a fraction of the cost of popular music boards this program should be considered carefully before investing in more expensive alternatives Skill level required Fairly easy for the novice to master with a little practice Reviewer David Morganstein Product Name Terminal 40 Equip req d VIC 20 8K or more of extra memory VICMODEM or RS 232 compatible modem Price 29 92 Manufacturer Midwest Micro Associates P O Box 6148 Kansas City MO 64110 Author Dr Jim Rothwell Description Terminal 40 is an extremely powerful telecommunications program for the VIC 20 This machine language program is fast enough to support up to 2400 baud is quite flexible and allows you to specify duplex parity wordsize stopbits linefeed and baud rate options Through software Termuinal 40 displays a 40 character line with each character represented by a 3 x 6 matrix All characters are shown as upper case and are quite readable Terminal 40 also has a 4K or larger buffer No 55 December 1982 a ee Reviews in Brief continued which can be used
146. ant ideas tech niques and calculations en countered in the laboratory The programs are in a tutorial format using demonstrations interactive exercises animated sequences and simulations Price 550 00 tentative Includes nine disks and complete documentation Author Sandra L Olmsted and Richard D Olmsted Available John Wiley amp Sons Inc Eastern Distribution Center Order Processing Department 1 Wiley Drive Somerset NJ 08873 System 103 Software Catalog contiaueg Name System ASM 3A System Apple II Plus Memory 48K minimum Language card is supported Language Assembly Hardware Disk II required Silentype printer optional i Description System ASM 3A is an assembly language devel opment system that features a two pass assembler full screen editor and disk file manage ment system The system is easy to use but powerful enough to write very complex programs System ASM 3A is written in its own assembly language and is DOS 3 3 compatible Price 35 00 5 00 for manual only Includes no shipping and handling charges Ohio residents add appropriate sales tax Available The Mike Piaser Company 15401 Maple Park Drive 11 Maple Heights OH 44137 Name Factoring Whole Numbers System PET DOS 2 1 Memory 16K Language BASIC Hardware Disk drive or cassette Description Twelve programs on six tapes or three diskettes present the concepts of factor ing in a ca
147. apons skill and armor The scenario permutations are as infinite as the Universe Price 39 95 Includes rulebook disk and data card Author Tom Reamy Available Strategic Simulations Inc 465 Fairchild Dr Suite 108 Mountain View CA 94043 415 964 1353 Name The Animator System Apple II or Apple II Plus Memory 48K Language Applesoft Assembly Hardware Disk drive Description This program pro duces animated film strips that enter only key frames then The Animator calculates the in between frames The key frames are easily entered either visually numerically or from a library The demo in cludes a ballet sequence show ing a ballerina with 12 inde pendently moving body parts Price 51 95 Includes 57 page manual three tutorials and a shape generator Author Ray Balbes Available Balbesoftware Systems 6 White Plains Dr St Louis MO 63017 314 532 5377 MICRO The 6502 6809 Journal Name The Apple Family Sing Along Christmas Disk System Apple II Apple II Plus Apple III Memory 48K Language Applesoft or Integer Basic runs in emulation mode on Apple III Hardware Disk drive Description Sixteen favorite carols complete with words to all the verses containing multiple voices and four part harmony are pitched so you can sing along if you want to The choice of an internal Speaker or cassette port output is given The Christmas music is tuneful well arran
148. appropriate binary number 0 15 on the input pins 15 14 13 and 11 respectively of the 74150 In the diagram PAO PA4 and PA7 represent PET parallel port connections The output from the 74150 Is available at pin 10 The resistance value of the transducers RO R15 will determine the value of the charging capacitor C see figure 1 A typical value is 0 22 F see reference 3 MICRO The 6502 6809 Journal No 55 December 1982 ee Commodore EHI xd Figure 3 A two stage voltage amplifier The overall gain des 3 e ranges from 630 to 1260 depending upon the setting ot the 20 KQ variable resistor in the feedback loop of the second stage The optional diode network ensures that the output voltage will be positive D1 and will not exceed 10VDC D2 This is a requirement for proper operation of the QM 100 A D converter D3 is used to indicate over ranging rors leading to poor reproduction of the data The problem can be circumvented by introducing a sufficient delay be tween measurements to assure total discharge or by operating the system with reproducible discharge time Temperature Measurement Two analog electrical signals com monly associated with temperature are thermocouple voltage and thermistor resistance The problem is to provide a convenient method for measuring these analog signals then convert the results to temperature Consider for example a tempera ture measurement in whic
149. aracters in a form suitable for incorporation into an EPROM Character Generator requires OSI Superboard While developing software for a mini mum chip homebrew 6502 system it was necessary to produce a character generator I wrote the program for an 8K OSI Superboard II to draw characters on the OSI video and save these charac ters in RAM The characters could then be incorporated in an EPROM or trans ferred to the homebrew system The program was made fairly general as the homebrew computer included the capa bility of a variable character depth whereas the OSI is restricted to 8 x 8 characters Although the program was intended for a specific purpose it is equally useful in developing alternate character generators for an OSI Thus if games are a major attraction you may wish to define new characters e g Space Invader aliens for unused char acters in your OSI character set Ac cordingly the new character set may then be loaded into a 2K EPROM 2716 and replace the original OSI character generator ROM The MEMORY SIZE cold start prompt should be restricted to 6000 This will prevent overwriting the character generator RAM that com mences at 1800 6144 decimal allow ing the number of characters to be 256 with a character depth of 8 The re quired character number is input and a display will appear on the screen to assist in the graphing of the intended character A cursor in the top left hand cor
150. at takes much of the drudgery out of data entry programming In this first article I will prepare the computer to run the mail list In the No 55 December 1982 process I will 1 show how to mix BASIC and machine language 2 have one program load another without stop ping or losing variables called chain ing and 3 explain the use of global variables called soft coding Because of the general availability of Bennett s Mail List a full listing will not be presented here However you don t need the program to under stand the articles If you do wish to obtain the program see the box on page 41 Mixing BASIC and Machine Language One of the more difficult tasks in programming is mixing BASIC and machine language code gracefully When first released the mail list used one common method reading the machine language portion from data statements and POKEing it into work ing locations This method easily allows changes to the BASIC program However if the machine language por tion is sizeable it can be slow incor porating substantial changes from a new assembly of the machine language portion would be tedious at best Next I tried attaching the machine language portion to the end of the BASIC code and using a machine language SYS call to boot it into work ing location This method is fast How ever it makes modifications to the BASIC program difficult as any change in the length of the program a
151. ations of the pause Now it is possi ble to see how little noise the process itself introduces When the message is to be stored in permanent memory and used many times it is advisable to use a good high speed tape recorder and a person with a pleasant voice to produce the originals With several messages stored on disk it is possible to write a routine that calls the proper message into a standard area of memory and reproduces it In this way the same routine can handle many messages in an economical way PBo LO 6522 PB2 PB3 You may contact Mr Valdez at 1001 Flotilla Indian Harbour Beach FL 32937 MICRO Perry Peripherals Repairs KIMs SYMs and AIMs Too We will Diagnose Repair and Completely Test your Single Board Computer We Socket all replaced Integrated Circuits You receive a 30 day Parts and Labor Warranty Your repaired S B C returned via U P S C O D Cash Don t delay Send us your S B C for repair today Ship To Preferably via U P S Perry Peripherals 6 Brookhaven Drive Rocky Point NY 11778 KIM 1 Replacement Modules e Exact replacement for MOS Commodore KIM 1 S B C Original KIM 1 firmware 1K and 4K RAM versions Replacement KIM 1 Keyboards Identical to those on early KIMS SST switch in top right corner Easily installed in later model KIMs Perry Peripherals is an authorized HDE factory service center Perry Peripherals carries a full li
152. bE 271 1 P bE 72 29 1210 RETURN MICRO The 6502 6809 Journal INICRO No 55 December 198 INICRO New Publications So we can list more of the many new books now available we are offering New Publications in a different format We think you l find this increased sampling of computer literature useful Library of PET Subroutines by Nick Hampshire Hayden Book Company Inc Rochelle Park NJ 1982 140 pages paperback ISBN 0 8104 1050 8 14 95 PET Graphics by Nick Hampshire Hayden Book Co Inc Rochelle Park NJ 1982 218 pages paperback ISBN 0 8104 1051 6 16 95 Computer Consciousness Surviving the Automated 80 s by H Dominic Covvey and Neil Harding McAlister Addison Wesley Publishing Company Inc Reading MA 1982 211 pages paperback ISBN 0 201 01939 6 6 95 Atari Sound and Graphics by Herb Moore Judy Lower and Bob Albrecht John Wiley amp Sons Inc 605 Third Ave N Y C NY 10158 1982 234 pages paperback ISBN 0 471 09593 1 9 95 The Creative Apple Edited by Mark Pelczarski and Joe Tate Creative Com puting Press Morris Plains NJ 1982 448 pages paperback ISBN 0 916688 25 9 15 95 The VisiCalc Book Apple Edition by Donald H Beil Reston Publishing Company Inc Reston VAJ 1982 301 pages paperback ISBN 0 8359 8398 6 14 95 The Third Book of Ohio Scientific by S Roberts ELCOMP Publishing Inc Postbox 1194 Pomona CA 91769 1982
153. c For the CBM 8032 8050 CONTACT US FOR ALL YOUR DISK BASED SOFTWARE NEEDS Call for specifics on Hardware Configurations Send Self Addressed Stamped Envelope for Catalogue of Games and other Applications DEALER INQUIRIES WELCOME 9 2905 Ports O Call Court Plano Texas 75075 214 867 1333 VISA and MASTERCARD Accepted No 55 December 1982 1240 REM SELECTS DATA DRIVE 1250 DD 1 1260 OPEN 15 UN 15 1270 PRINT 15 INITIALIZE STR DD 1280 IF DS 2 74 THEN DD 0 REM IF SINGLE DRIVE 1290 CLOSE 15 As these lines initialize disk drive one they identify single drive units and prepare the program to work with either single or dual drives An earlier version of the program had the user select one or two drives manually by changing line 250 How ever I use both single and dual drives often and decided it made more sense to let the computer use its own in telligence to work with all Commodore disk drives This kind of intelligence in a program means more work for the programmer once but less work for all the users for years to come Programs you expect to give or sell to others should work on all existing and likely models If I followed that advice fully this program would have used BASIC 2 0 disk commands at some cost in No 55 December 1982 speed and a great cost in clarity Next time we will begin working with relative records creating the files needed by the mail list package
154. change of address USPS Form 3579 requests for back issues and all other fulfillment questions to MICRO INK 34 Chelmsford Street P O Box 6502 Chelmsford MA 01824 or call 617 256 5515 Telex 955329 TLX SRVC 800 227 1617 Subscription Rates Per Year U S 24 00 2 yr 42 00 Foreign surface mail 27 00 Air mail Europe Mexico Central America Middle East North Africa Central Africa South America South Africa Far East Australasia New Zealand 42 00 48 00 72 00 Copyright 1982 by MICRO INK All Rights Reserved No 55 December 1982 INICRO Editorial Getting to Know You It s more useful than my Swiss army knife Now that s what we like to hear about MICRO and that s what one of you said in response to our reader survey But we did the survey for more than a pat on the back We did the survey to find out just as much as we can about who you are and what kind of information both in editorial content and advertising you need and want We discovered that you are an ex tremely well educated affluent gain fully employed bunch of people with a great deal of technical computer knowledge at your command and you want more 3396 of you have advanced degrees 7096 have incomes over 25 000 6096 are programmer analysts en gineers or technicians and 9096 of you have intermediate to ad vanced knowledge of software and 8096 of hardware No wonder only 696 of our readers cons
155. clock is used it is necessary to sample it to send and recover the bits at the proper time The audio amplifier shown on the circuit is very simple and includes an elementary filter to reduce the digitiz ing noise Notice the capacitor in parallel with the speaker for the same reason Some experimentation with the values used in a particular circuit might improve the quality of reproduc tion The circuit can be built in the ex isting board of the computer if there is room or wire wrapped in a small board and connected as convenient Only five volts are required to power the unit Software The software presented with this ar ticle is self explanatory The user must adjust the memory locations to match his system The subroutine KKK reads the keyboard and returns with the ASCII character in the accumulator the subroutine OUT displays the accumulator The only part of the program that 71 should be treated carefully is the Listing 1 continued generation of the clock It is important 1152 219 x to maintain the sampling and reproduc Hus 3n 5 220 DLM ASC SPEECH ANALYSIS AND SYNTHESIS USING tion clocks as close as possible Large 1198 20 41 4E variations produce unpleasant results 1156 41 4C 59 1156 53 49 53 The program presented here has 1141 20 41 AE been written for the 6502 Converting 1164 44 20 53 the code to any other microprocessor I167197 AE 94 1 es 1166 48 45 53 requires only limited programming 114D249 53
156. d INTERESTING SOFTWARE 8781 Troy St Spring Valley CA 92077 619 466 2200 WORLD ALPHABETS p odl det BAT Ten type fonts allow user to create text or use pro nunciation tables in Arabic Cherokee Indian Hieroglyphics Greek Hebrew Japanese Rus pe edib olieds EECZMHRS O MWEHHUS J 2 22 sian Sanskrit or Roman Author W C Jones Diskette 89 95 the top of the line in floppy diskettes BASIC LEARNING PACKAGE An introduction to the Apple Il or Il Plus Computer Teaches beginner to program in BASIC Author J J Sudikatus Diskette Both require an Apple ll with Appiesofi 48K plus disk drive Epsom printer with Graftrax is optional Write for free catalog with more than 400 fantastic values for all your word and data processing needs Outside USA enclose 1 00 ABM PRODUCTS 8868 CLAIREMONT MESA BLVD SAN DIEGO CALIFORNIA 92123 Toll Free 800 854 1555 Orders Only For information or California Orders 714 268 3537 49 95 Apple II or Il Plus and Applesoft are trademarks of Apple Computer Inc 24 MICRO The 6502 6809 Journal No 55 December 1982 Lines 550 and 560 are altered to POKE into the new shadow registers ANTIC is not turned off at all Line 291 is added to update the position value P and cause a slight delay if the position value were changed This delay guaran tees that there has been at least one ver tical blank interrupt routine since the new
157. d For critical situations our non volatile 64K byte CMOS static RAM boards with built in battery back up retain data even with system power removed A fully charged battery will power this board for a minimum of 21 days A write protect switch permits CMOS boards to be used for PROM ROM emulation and software debugging The GIMIX DMA controller eaves the processor free to perform other tasks during disk transfers an impor tant feature for multi user multi tasking systems where processor time allocation is critical The DMA board will accomodate up to 4 drives 5 or 8 in any combination running single or double density single or double headed Programmed I O Disk Controllers are also available GIMIX systems are designed with ultimate RELIABILITY in mind You can choose from the below featured systems or select from our wide variety of components to build a custom package to suit your needs GIMIX 2MHz 6809 System including CLASSY CHASSIS 6809 PLUS CPU BOARD 56KB STATIC RAM 2 SERIAL PORTS W CABLES GMXBUG MONITOR FLEX and OS 9 LEVEL 1 lsssseeese eh hh hen 3248 49 FOR TWO 5 40 TRACK DSDD DRIVES ADD 0 lh ae ah el 900 00 GIMIX 128KB WINCHESTER SYSTEM including CLASSY CHASSIS 6809 PLUS CPU BOARD 128KB STATIC RAM 4 SERIAL PORTS W CABLES 5 4 80 TRACK DSDD FLOPPY DISK DRIVE 19MB 5 4 WINCHESTER HARD DISK OS9 LEVEL 2 EDITOR AND ASSEMBLER denenner cures io Uu eer HUE Icio Roe a Widen eg e E ORE UO Og tin fen fe ne
158. dard Address Function M NER Se TATEA Pe with 39K of it available for BASIC programs 00 FF Page zero operating system storage pointers floating point accumulators flags etc Graphics 100 1FF Microprocessor system stack 3 character modes 100 10A Floating to string work area 2 bit map modes 100 13E Tape input error log sprite graphics 200 2FF Operating system buffers tables vectors I O flags keyboard handling Sound 300 3FF Vectors tape 1 O 4 programmable voices 400 7FF Normally video memory sprite data pointers etc attack sustain decay and release 800 9FFF Normally BASIC program space output compatible with stereos 8000 9FFF VSP Cartridge ROM A000 BFFF BASIC ROM Z 80 option for CP M CO00 CFFF RAM RS 232 expansion cartridge parallel cassette D000 DFFF VO devices and color RAM or character generator ROM and controller interfaces EO00 FFFF Kernal ROM ru Control Port 1 Control Port 2 Function e Ra Fonction 25 JOYAO EDS oe JOYA1 JOYA2 MOYA3 7 CEU C2 POTAY S BUTTON ALP B re ESV POT AX LL 994S Eea 19 3HOCOWWO ORNAAa on a Audio Video E e aa 123 45 6 7 8 9 10111213 1415 16 17 18 19 20 2122 LUMINANCE a OW OM RO RR j GND C AUDIO OUT VIDEO OUT AUDIO IN ABCDEFHJKLMNPRSTUVWXYZ S Cassette L4 Function CASSETTE SENSE 4 5 6 7 8 9 10 11 42 COMMODORE 64 G1 0 uotjesnp ejo o Keoep 159 98 G1 Q uon
159. de SPEED MX 80 80 cps for 46 full lines per minute throughput PROWRITER 120 cps for 63 full lines per minute throughput GRAPHICS MX 80 Block graphics standard fine for things like bar graphs PROWRITER High resolu tion graphics features fine for bar graphs smooth curves thin lines intricate details etc PRINTING MX 80 Dot matrix business quality PROWRITER Dot matrix correspondence quality with incremental printing capability standard FEED MX 80 Tractor feed standard optional friction feed kit for about 75 extra PROWRITER Both tractor and friction feed standard INTERFACE MX 80 Parallel interface standard optional serial interface for about 75 extra PROWRITER Parallel and serial interface standard WARRANTY MX 80 90 days from Epson PROWRITER One full year from Leading Edge PRICE Heh heh Distributed Exclusively by Leading Edge Products Inc 225 Turnpike Street Canton Massachusetts 02021 Call toll free 1 800 343 6833 or in Massachusetts call collect 617 828 8150 Telex 951 624 LEADING EDGE For a free poster of Ace fProwriter s pilot doing his thing please write us
160. ds separated clock and data inputs Available Bare BMEM CM9F or controller only FL 470 Ideal way to upgrade cassette based system No 55 December 1982 CAP EXP Expansion Interface 65 Expansion for C1P 600 or 610 board to the OSI 48 pin buss Requires one slot in backplane Use with BP 580 backplane BIO 1600 Bare IO card 50 Supports 8K of memory 2 16 bit parallel ports may be used as printer interfaces 5 RS 232 serial ports with manual and Molex connectors DSK SW Disk Switch 29 Extends life of drive and media Shuts off minifloppy spindle motor when system is not accessing the drive Complete KIT and manual D amp N Micro Products Inc 3684 N Wells St Fort Wayne Ind 46808 deeem 219 485 6414 apa C e TERMS 2 50 shipping Foreign orders add 15 Indiana residents add 4 sales tax MICRO The 6502 6809 Journal Disk Drives and Cables 8 Shugart SA801 single sided 395 8 Shugart SA851 double sided 585 FLC 66ft cable from D amp N or OSI 69 controller to 8 disk drive 51 4 MPI B51 with cable power 450 supply and cabinet FLC 5 1 48 ft cable for connection 75 to 5 1 4 drive and D amp N or OSI controller with data separator and disk switch Okidata Microline Printers ML 82A Dot Matrix Printer 534 120 CPS 80 120 columns 9 5 paper width friction or pin feed ML 83A Same as 82A except 895 16 paper width 132 232 columns with tractor feed ML 84 Same as 82A except20
161. e oldest and largest professional specialists in the business Skyles Electric Works 231 E S Whisman Road Mountain View California 94041 ee commodore Microcomputers in a College Teaching Laboratory Part 2 by Richard Heist Thor Olsen and Howard Saltsburg Many laboratory situations involve measuring continuous ranges of light heat and sound An inexpensive device to help the digital computer deal with these analog quantities is the analog transducer Specific applications to temperature and light intensity measurement are discussed Part 1 of this series MICRO 53 53 gave an overview of the microcomputer laboratory program at the University of Rochester Department of Chemical Engineering In this article the prob lems of measuring physical chemical and mechanical properties will be ad dressed since such problems are com mon to most engineering and scientific laboratories Temperature pressure flow and light intensity are typical quantities of interest and in many cases the required information is pro vided by a transducer in the form of an analog signal usually electrical in nature Difficulties in the measure ment and conversion to the desired physical or chemical quantity of these signals may tend to obscure the pur pose of the measurement The micro computer often offers a simpler alter native to more conventional laboratory instrumentation thus making it easier for the user to maintain
162. e 2 S LDA gt ENTRY HIGH BYTE OF ENTRY 5 STA MEMTOP 1 LOWER MEMORY TO PROTECT Figure 1 illustrates the principle As 00039 7F40 85 7B STA WEDGE 2 you probably know a BASIC line is 00040 gres 60 RTS 3 INITIALIZATION COMPLETE stored in the computer in a specific 00042 7F63 form As shown in the illustration two ouis ORIS DN UG SYS Se nea Ae ee UE bytes are devoted to storing the forward 00045 7F67 48 PHA YES IT S HERE SAVE link address which i 00045 7F68 AS 77 LDA POINTR ESS ch is nothing more 00047 7F6A C9 00 CMP 4 00 CHECK FOR IMMEDIATE MODE than a pointer to the following line in 00048 7F amp C FO 09 BEG DELETE DO DELETE IF IMMEDIATE 00049 7F4E 48 PLA DUN T DO IN PROGRAM MODE memory The next two bytes contain 00050 7F amp 6F C9 3A COMMON CMP 3A COMPLETE CHRGET ROUTINE the line number The next area vari 00051 7F71 90 O1 BCC FINISH n 00052 7F73 40 RTS E n ee UR the one QE 00053 7F74 4C 7D O0 FINISH JMP RETURN tokenize statement is is 00054 7F77 li d ff wi QooSS 7F77 polished o ith 9 ERTO byte to indicate 00056 7F77 20 70 00 DELETE JSR CHRBET FETCH FIRST CHARACTER the end of a line This format is fol 00057 7F7A 90 OD BCC FIRST IT S A NUMBER 00058 7F7C FO 1E BEQ MIDDLE NULL INPUT IS ERROR cr kp ain SM until the 00059 7F7E C9 2D CMP 18 IT A MINUS SIGN ast line is hit A pair of zeros is in 00060 7F80 DO 1E BNE BYPASS 3NO ERROR in 00061 7F82 20 70 00 JSR CHRGET 3FETCH NEXT C
163. e X and Y positions actually extend beyond the visible portion of the screen That way it is possible to have a corner or an edge appear first followed smoothly by the rest of the sprite I mentioned priorities earlier The sprites themselves have fixed priorities with respect to each other sprite O is higher priority than sprite 1 1 higher than 2 and so on However each sprite may be selected to be higher or lower in priority with respect to the background data Objects of higher priority will overwrite objects of lower priority Collisions are detected by the VIC II and appropriate bits are set in two registers If the corresponding sprite is involved in a collision then its bit will be set in the register The bits in the register will remain set until the register s contents are read by your pro gram Then the whole register is cleared There is one register for sprite to sprite collisions and another for sprite to background collisions Some of the limitations can be cir cumvented with more sophisticated programming For instance it is possi ble to display more than eight sprites at once using raster interrupt techniques Also because there is so much mem ory you can have lots of sprite defini tions stored and only alter the pointers If the fixed sprite priorities are a prob lem just swap the pointers and the ap propriate bits and registers The Programmer s Reference Manual gives all the details of the various
164. e compared in terms of speed and memory economy using three benchmark programs However within the text of the article there were some comments made about FORTH MICRO The 6502 6809 Journal by the author Timothy Stryker which require rebuttal Mr Stryker states that program modules in RPL do not execute directly but rather place their address on the stack where a second call operator amp actually executes this address As cor rectly noted this is in contrast to FORTH where the defined word directly executes it does not need a second ex ecute operator This allows all FORTH definitions to be treated as syntactically equal Programmers may freely mix FORTH language words with their own new definitions in deed there is no difference in the inter nal dictionary structure between these two parts On the other hand RPL forces us to use amp for execution of all new words while pre existing ones are immune to this rule and execute directly creating an inconsistent syntax That this is memory efficient is doubtful The higher level definitions of any non trivial application program can consist of a large proportion of user defined operators each one of which would re quire the addition of this execute operator in RPL This probably con sumes some memory in the compiled form and it certainly and unnecessarily clutters up the source code With FORTH the address of any definition can be placed on the stack with
165. e either a token or a char 15 acter variable names are ASCII characters The Final Print Line Lines 55 to 80 form the output print line splitting and indenting as in the original LISZTER First priority split is still a space but second priority split has a vertical bar added to line 69 Con trol characters seem to be used more in Integer At this point they have been converted to upper case letters between bars and will not upset printer control The complex print statement group in line 77 is solely for the italics capability of the Epson printer A single character set printer can substitute a simple PRINT M C for both GOSUBs and PRINTs Possible Binary An IF true test at lines 26 or 39 in dicates something is wrong with the In teger source code More than likely it is due to embedding binary code with in teger The routine at lines 114 to 120 checks this condition Variable LA is made up of the ad dress of each new source line number start That address is converted to hex adecimal and printed with the Possi ble Binary From indicator A search now begins for any byte group meeting the following the group is below HIMEM the group is less than 128 bytes long and the end of line byte value is found from the first byte ad dress plus value A successful search will print the byte group last address in hex to complete the indicator then return to line 25 for a new source line number The indica
166. e example of a disk or memory byte changer utility Although the author has upper lower case conversion on the key board this utility was used to cor rect typos in ILISZTER s DATA statements 7 LISZT with Strings Richard F Searle Don Cohen Leonard H Anderson MICRO May 1982 listing 2 on page 41 The easiest patch is a GOSUB in line 45 just after the CF 2 1 statement the subroutine would look for a delimiter comma in ASCII such as BT 44 to decre ment the FOR spacer You may contact Mr Anderson at 10048 Lanark St Sun Valley CA 91352 ANICRO EVER WONDER HOW YOUR APPLE Il WORKS QUICK TRACE will show you This relocatable program traces and displays the actual machine operations while it is running and without interfering with those operations Look at these FEATURES And it can show you WHY when it doesn t Singie Step mode displays the last instruction next instruction registers flags stack contents and six user definable memory locations Trace mode gives a running display of the Single Step information and can be made to stop upon encountering any of nine user definable conditions Background mode permits tracing with no display until it is desired Debugged routines run at near normal speed until one of the stopping cond itions is met which causes the program to return to Singie Step Price 50 QUICKTRACE was written by John Rogers QUICKTRACE is a trademark of Anthr
167. e of optical instrumentation is in measuring the concentration of light absorbing chemicals in liquids and gases Nor mally the response of such instru ments is proportional to the inverse ex ponential function of the concentra tion Thus should a linear response be required when using a chart recorder for data acquisition an expensive linearizing module must be added In some cases not only is a linear response required but the quantity of interest is the total amount of a chemical that has passed through the detector This type of measurement re quires the capability to integrate a response over time another module to add to the recorder 61 DT aoo ERS commodore HEE Figure 4 A current to voltage converter The circuit shown here will typically produce millivolt level output for microampere level input with good frequency response When the microcomputer is used to monitor such instruments these con versions require only a few lines of ad ditional code in the applications pro gram Within the limits of the micro computer s capabilities any relation ship between sensor output and the quantity of interest can be accommo dated without additional cost as long as the relationship can be adequately des cribed by mathematical expressions Also since the computer can store spectral data between scans it is possi ble through computer interfacing to con
168. e return do the following LDA 0D JSR E202 To rebuild the forward link chain ing simply call subroutine B4B6 No set up is needed to enter this routine The BASIC Line Delete program ends with two alternate ways to get back into BASIC If JMP B4AD is used then a graceful return will be made to BASIC indicating that all went well However if a return is made via JMP BFOO the statement SYN TAX ERROR will be printed in dicating that the attempted operation was aborted To round out your survey of this program note that locations 59 and 5A hold the address of the start line number where the later memory will be moved to A in figure 1 5C and 5D hold the address of the end line B in figure 1 2A and 2B are pointers to the end of BASIC How to Load and Use the Program If you have a computer other than 4 0 you will have to make the required translations to your machine If you have memory maps handy this shouldn t take too long I was able to make a VIC 20 version in about fifteen MICRO The 6502 6809 Journal minutes simply by comparing memory maps Just enter the resident machine language monitor and list out the re quired lines with the command M 7F52 7FFF Now type over what the computer shows using the byte values generated in the assembly in figure 2 as a guide When you are done save the program with the command S DELETE 32594 08 7FS52 7FFF If you are saving to ta
169. eeieie ien 1l 12 APPLESOFT SUBROUTINES 13 14 CHRGET EPZ Bl 15 GIRGOT EPZ B7 16 FNDLIN EQU D61A 17 STXTPT EQU D697 18 LINGET EQU DAOC 19 CRDO EQU SDAFB 20 STROUT EQU S DB3A 21 LINPRT EQU SED24 22 STANDARD ZERO PAGE LOCATIONS 23 24 LINNUM EPZ 50 25 TXTTAB EPZ 67 26 TXTPTR EPZ B8 27 28 SPECIAL ZERO PAGE LOCATIONS 29 30 TOKEN EPZ F9 MICRO The 6502 6809 Journal No 55 December 1982 2 If none are found continue with the next line until the end of the pro gram is reached 3 If a GOTO THEN or GOSUB token is found read the line number following the token 4 Search through the program for a line so numbered 5 If the line is found continue inspect ing the current line for GOTOs THENs and GOSUBs 6 If no such line is found report this fact by displaying the current line number and the offending GOTO THEN or GOSUB statement then continue the inspection To go through RAM one byte at a time Applesoft has the subroutine CHRGET which is located on page zero at B1 This routine makes use of the two byte pointer called TXTPTR at B8 B9 TXTPTR is usually point ing to a byte somewhere in the Apple soft program in RAM The effect of CHRGET is to advance TXTPTR to the next byte and to load that byte into the accumulator setting certain flags along the way Thus by repeatedly invoking CHRGET we can go through each pro gram line looking for GOTO
170. eger program might seem better many Apple II owners possess ROM or RAM cards for language duality and ILISZTER seems more compact in Applesoft due to string handling capability Another ad vantage is that ILISZTER can be re run without disk operations or loss of In teger source code ILISZTER retains the original features such as separation of con catenated statements indenting and remark highlighting Multiple iterator NEXT statement handling for restoring FOR NEXT loop indents is an improve ment The added binary code deter mination and restoration routine is useful for listing certain utilities No 55 December 1982 Since Integer BASIC differs from Apple soft a brief review of Integer structure will help provide an understanding of ILISZTER Integer BASIC Source Code Figure 1 shows one line number of source code in Integer The first byte contains the number of bytes per line with the next two bytes having the line number in binary End of line is signified by the end byte having a value of one Each entered line is immediately checked for syntax Line numbers are limited to 32767 but may be modified by utilities Numeric constants are converted to binary on entry an advan tage for program execution time All function words are stored as one byte tokens in the range of zero to 127 decimal Punctuation arith metic and logical operators are also tokens Eight tokens are unused and three ot
171. embly LDA S4A Procesaor codes 43 D4 Ci NV EDIZC Stack pointer PS i10110001 Reference address 0033 Disassembly STA oa end MICRO The 6502 6809 Journal User defined location amp Contents OOOO0 4C Processor status Content of referenced address DD Anthro Digital Inc P O Box 1385 Pittsfield MA 01202 413 448 8278 17 Tired of trying to run your word processor or your DMB on an OSI 64 character video screen Now there s the SEB 3 THE most versatile 80x24 video board anywhere is available for OSI 48 pin BUSS systems No longer will you have to consider con verting your video based system to a serial terminal because you ve found 64 characters stifling for serious business use Nor need you give up compatibility with any existing graphics software because the SEB 3 allows you to choose ANY screen format up to 80x24 including 32x32 and 64x32 Since the SEB 3 s screen format can be changed at any time under soft ware control even gaming displays can benefit from screens custom tailored to the game itself The SEB 3 is so well designed and so versatile that it will not need to be replaced ever Simple changes in software and or hardware will allow the SEB 3 to generate displays up to 256 If your Challenger can t generate displays like those shown above WHAT ARE YOU WAITING FOR The SEB 1 High Resolution Graphics and Memory Board for C1P and Superboard I and the SEB 2 High Resolution Graphics a
172. er Better than MX80 We use constantly with our Apple and PET Can be used on IBM Atari TRS 80 etc 120 cps friction and tractor feeds hi resolution dot graphics nice looking high quality construction Parallel 499 00 with IEEE interface for commodore 599 00 RS232 660 00 ll commodore 1210 NS 0 REM NON STOP If NS 1 the program becomes non stop a great idea when using untrained operators but a terrible idea when a skilled user is trying to modify the package An example of a string variable used as a control is PZ defined in line 1310 1310 PZ A REM ASCII P PET One of the skills of the machine language portion of the package is that it can convert strings from PET ASCII to true ASCII codes and back again This is useful when working with a modem or a non Commodore printer Line 1760 shows how this feature is used or skipped depending on the con tents of PZ 1750 REM FLIP CASE OF ASCII PRINTER PROMPTS 1760 IF PZ lt gt A THEN 1830 1770 SYS SM 1 NA 1780 C3 C1 1790 SYS SM 2 C3 PET CBM 1800 C4 C2 1810 SYS SM 2 C4 My personal copy of the mail list carries the control variable idea a step further by using the variable TY to select between using the package as a church mail list a computer users mail list and a sermon file depending on whether TYpe 1 2 or 3 in a new line added to this module The other special options set by the global variables are e
173. er 1982 Listing 1 continued 280 PRINT 4 HX REM amp PRINT IT 290 FC FC 1 REM PRINT 4 MISMATCHES PER LINE 390 REM TAB IF HAVE ROOM FOR ANOTHER ON LINE 310 IF FC lt MF THEN PRINT 4 1 GOTO 426 320 FC 0 REM ELSE RESET FIELD COUNTER 330 PRINT 4 REM amp FINISH LINE 340 LC LC 1 REM INCREMENT LINE COUNTER 350 IF LC lt 59 THEN 420 REM 58 MISMATCH LINES PER PAGE 360 LC 0 REM RESET LINE COUNTER 370 FOR I 1 TO 6 REM SKIP LAST 6 LINES 380 PRINT 4 396 NEXT 400 PRINT 4 NM REM TITLE NEXT PAGE 410 REM END ON STATUS CHANGE 420 IF Sl OR S2 THEN DCLOSE PRINT 4 CLOSE 4 END 430 AD AD 1 REM ELSE INCREMENT ADDRESS COUNTER 440 GOTO 150 REM amp CONTINUE 4590 END OF FILE 460 REM DECIMAL TO HEX CONVERTER SUBROUTINE WITH NUMBER IN N 480 REM RETURNS HEX EQUIVALENT IN HX 490 IF N 0 THEN HX DO GOTO 608 REM HANDLE EXCEPTION 5060 HX REM INITIALIZE OUTPUT VARIABLE 518 D LOG N LOG 16 520 D D D lt gt INT D 530 FOR I D TO REM LOOP FOR DIGITS 540 Pz 16 I 470 REM ENTER 550 Q N P 560 HXS HXS CHRS Q 48 7 Q3 gt 9 570 N N Q P 580 NEXT 590 IF LEN HX 21 THEN HX HXS REM FORMAT 1 CHARACTER 00 HXS S HX G10 RETURN 620 REM SETUP SUBROUTINE 630 PRINT SOUP BY HENRY TROUP amp JIM STRASMA 640 PRINT COMPARES MACHINE LANGUAGE PROGRAMS 650 REM PRESET VARIABLES TO GAIN SPEED 6680 NLS 2 2ES CHRS 0 670 INPUT OUTPUT DEVICE 3 SCREEN 4 PRINTER 680 DV VAL OTS REM
174. er the page of memory I had allotted for program and storage space So I let BASIC keep track of the phrases To patch Macro into Cursor Con trol change the input routine PATCH at location 1EOF to JMP 0222 instead of JMP 1E12 Macro finds the BASIC line you specify prints it on the screen and stores it in the input buffer If the addi tion of the phrase makes the line too long the BEL character is printed To use BASIC lines 0 9 as storage space it was necessary to teach Macro how to convert tokens to keywords but the final program is still much shorter than my first attempt The WINDUP rou tine finds the buffer count in the stack MICRO The 6502 6809 Journal BASIC Macro Listing 10 0000 sKASIC MACRO FOR CC 20 0000 FATCH 1E0F 30 0000 OK 1F10 40 0222 0222 50 0222 C912 MACRO CMF 12 3CTRL R 60 0224 Losi ENE RESUME 70 0226 2010 iF JSR OK gPRINT WHITE BLOCK 80 0229 2000FL MAC JSK FIi00 sGET MACRO NUMBER 920 022C C935 CMF 3A SIF NOT A NUMBER 100 022E R057 ECS RESUME STHEN EXIT 110 0230 C730 CMF 30 120 0232 9053 BCC RESUME 130 0234 E930 SEC 4 20 ASCII TO BINARY 140 0236 8511 STA 11 ILOON FOR LINE 150 0238 4700 LDA 0 160 0234 8512 STA 12 170 023C 203244 JSR 4432 180 O23F 90E8 KCC MAC ITRY AGAIN 179 0241 200 0241 A003 LLY 3 TO START OF LINE 210 0243 C8 FOUND INY NEXT CHAR 220 0244 8497 STY 97 ISAVE Y REGISTER 230 0246 BIAA LIA AA Y GET CHAR 240 0248 F035 BEQ WINDUF sQUIT IF N
175. erface the ultrasonic version of the BSR X 10 home control 120 X USR 1536 0 0 0 128 0 128 128 128 0 128 REM SELECT CHANNEL 5 The author may be contacted at 2004 Woody Drive Kingston TN 37763 system to Atari computers Programming information and a sample program are included 130 X USR 1536 0 0 128 0 128 128 128 0 128 0 REM TURN ON Continued on next page Demo Program Table 1 requires FUNCTION USR 1536 A B C D E F G H I eren R ALL LIGHTS ON 0 001 128 128 128 128 128 0 0 ALL OFF 0 0 0 0 128 128 128 128 128 0 ON 0 0 128 0 128 128 128 0 128 0 OFF 0 0 128 128 128 128 128 0 0 0 ae use the Bok 10 kome ona BRIGHTEN 0 128 0 128 128 128 0 128 0 0 evice many computers require a ard DIM 0 128 0 0 128 128 0 128 128 0 ware modification David Staehlin presented a circuit in the January 1982 CHANNEL issue of BYTE magazine which will 1 0 128 128 0 0 128 0 0 128 128 couple a non ultrasonic BSR X 10 to an 2 128 128 128 0 0 0 0 0 128 128 RS 232 port I have interfaced the 3 0 0 128 0 0 128 128 0 128 128 Atari s controller jack port to the more 4 128 0 128 0 0 0 128 0 128 128 common ultrasonic version of the BSR 5 0 0 0 128 0 128 128 128 0 128 X 10 Figure 1 shows the complete in 3 220012 a aT terface circuit required for this purpose 8 128 128 0 128 0 00 128 0 128 Modification of the BSR X 10 is not 9 0 128 128 128 0 128 0 0 0 128 trivial and should be performed by 10 128 128 128 128 0 0
176. es are consistent with the labels specified in Appendix F of the PET CBM Per sonal Computer Guide by A Osborne Hexadecimal dumps of the routine assembled for the three different ver sions of the PET ROMs are included in this article With some minor pointer modifica tions the SQUEEZE routine should alsc operate on most other 6502 systems Hans Hoogstraat is a scientific research and systems development software and hardware consultant to the petroleum in dustry You may contact him at Box 20 Site 7 SS 1 Calgary Alberta Canada T2M 4N3 No 55 December 198 ne conmodore EN Listing 1 SQUEEZE Assembled for 4 0 ROMs ages ea2R ea2c eazE bag ease gase gass BASA AQIB aost aasi ean osae 33E 6340 No 55 December 1982 OI wD ASAD 93 at 2A a4 2B ab n Cn ea ea 54 2A Se ad edid S USTEM EQUATES agen ea38 BASIC DI 1 ORIGINRL ROM 0040 BASIC DI 3 UPGRRDE ROM aSa BRSIC DI 4 BRSIC 4 8 BAER eQ a BASIC BI 4 gasa BESO 2 0100 SQUEEZE 0110 pon nn nn on nn a ei20 13 THIS ROUTINE SQUEEZES A BASIC PROGRAM FROM ALL ITS 146 IMBEQOEG BLANKS LINE SEPARATORS ANO COMMENTS wise 16 IN AOOITION THE FOLLOWING SYNTAX CORRECTIONS ARE MADE 0170 188 31 GO TO GOTO eise sz IF GOTO IF THEN az
177. eviewer Jon R Voskuil Product Name SPELL N FIX Equip req d TRS 80C with disk or cassette 32K other versions available for FLEX OS 9 and other systems Price 69 29 FLEX version 89 29 Manufacturer Star Kits P O Box 209 Mt Kisco NY 10549 Description SPELL N FIX is a package of program files that provides a dictionary for Color Computer text files The main program SPELLFIX loads and executes a 6809 machine language dictionary look up program A 20 000 word dictionary file is used to check ASCII files for spelling and typographical errors Other files included are utilities for writing and reading ASCII files a sample text file binary to ASCII conversion programs and a program to expand the dictionary These programs allow you to use SPELLFIX with processors that create binary files Pluses The dictionary program is expandable when using the disk version and you can create your own dictionary that fits your writing style Questionable words are dis played and or printed in alphabetical order for checking The disk version also allows marking of questionable words for later correction or they may be corrected immediately Large files usually take only slightly longer to correct than smaller files It will work on most files that are larger than RAM memory The disk version can be easily converted to tape and vice versa Minuses The tape version cannot mark or immediately correct text files Not direct
178. f the graphics modes Other registers are used to control positions and colors of sprites to read light pens and to select background colors This month s data sheet p 109 lists the control registers for the 64 I will refer to them here only by name Character Modes The 64 s characters are normally read from the character ROM and the color is determined by the contents of the corresponding location in color memory The pointer to the character ROM can be altered to point to RAM where you can design custom charac ters There s plenty of memory to play with so this is a lot more practical than on an unexpanded VIC Multicolor character mode has a lot of possibilities Standard characters consist of eight rows of eight pixels while multicolor characters consist of eight rows of four double width pixels A pixel is the smallest dot of light on the TV screen in the current graphics mode The bits of each byte in charac ter memory are considered in pairs rather than individually Each of the four possible bit combinations for a bit pair determines where to get the color for the double wide pixel on the screen Combinations 00 01 and 10 get the color from background registers 0 1 and 2 respectively and 11 gets the color from the appropriate location in color memory Since any background color can be changed with a single POKE parts of all the characters on the screen can be changed at once This mode is probably bes
179. for the first eight pixels in the first row of pixels on the screen and the second codes for the first eight pixels in the second row The ninth byte codes for the ninth through six teenth pixels of the first row What this means is that you have to go through a little arithmetic to find the correct bit to change in hi res memory given X in the range of 0 to 319 and Y in the range of 0 to 199 Screen memory is used to deter mine the color of the pixels in the area normally occupied by a character The high nibble determines the color of all the bits set to 1 and the low nibble determines the color for the 0 s Multicolor bit map mode reduces the resolution to 160 by 200 As with multicolor character mode the bits in hi res memory are considered in pairs to determine the color of the correspon ding double width pixel on the screen Combination 00 selects the screen color background 0 01 gets the color from the high riibble of the appropriate byte in screen memory 10 gets the color from the low nibble in screen memory and 11 gets the color from the 4 bit color memory location Commodore plans a VSP Cartridge which will include convenient com mands for high resolution graphics Fine Scrolling The VIC II chip allows the whole screen to be scrolled up down left or right by only one pixel To make this work smoothly there are provisions to reduce the width of the screen to 38 columns and to reduce the height to 24
180. form logic to accomplish the following functions If VD5 and VD6 are high and SW2 is high and VD7 is low Ul pin 6 is low causing lower case characters to be read as upper case and activating the rest of the circuit via U2 pins 9 and 10 If either VD6 or VD5 is low or SW2 is low U1 pin 6 will be high and the screen will behave normally Continuing with conections U42 pin 9 is brought into U3 pin 12 U42 pin 1 is brought into U4 pin 11 U42 pin 7 is brought into U3 pin 5 Connect U42 pin 2 to U5 pin 3 and connect U42 pin 2 to U5 pin 8 Signals coming out of the circuit on US pin 5 must be con nected to U70 pin 2 The output of the potentiometer R2 should be brought to U70 pin 6 This is where our circuit starts modifying video If the first part of the circuit has recognized a modified video situation i ee VD5 VD6 VD7 SW2 then U2 pin 8 goes high The signal is now fed to parts of U2 and U3 where combined with the states of switches SW3 and SW4 the inverse and dim op tions are selected If dim is selected either alone or in combination with in verse the signal on U2 pin 11 is used to enable the flip flop U4 which is clocked at the shift load rate i e CLK 8 and through the R1 R2 network modulates the video for a dimming effect R2 con trols the level of brightness from almost fully bright to almost dark SW3 controls the inverse option If it is low the normal video signal is passed from U42 pm 9 out to US pin 5 witho
181. g 3 THEN GOTO IF THEN 0210 0220 BASIC REFERENCES a230 e24a IFE BRSIC 1 Bz5 BPOINT DI 7A 6260 WORK DI SAG a270 LHKPRG DE 0430 azg 29 3 IFE BASIC 3 BFOINT OI 29 WORK BI 54 LNKPRG OE 0442 x IFE BRSIC 4 BPOINT LDI 28 WORK DI 54 LHKPRG TOE sBa4B6 BR BPOINT TXTTRE 0s 2 POINTER TO START OF BASIC VRRTRE 108 2 POINTER TO START OF VAR 8468 ARYTAE LOS 2 PNTR TO START OF ARRAY TA a47a STREND 108 2 3PQINTER TO ENO OF YAR aaa amp 438 PRGE ZERO WORK AREAS nmSsuead asia BEA WORK ese esae INPPTR 03 2 INPUT LINE POINTER 0540 NXTLIN as 2 NEXT BASIC LINE RDDRESS S58 QUTPTR DI YARTAB 0UTPUT LINE POINTER amp ea INFIND DS d INPUT TEXT INDEX a570 QUTIND DS 1 QUTPUT TEXT INDEX esee nUTSEG 10S 1 QUTPUT LINE SEGMENT LENGT asoa nTFLRG 08 1 QUDOT FOUND FLAG eee PRVOLT DS 1 PREVIQUS OUTPUT CHARACTER a610 IFFLRG LES 1 SIF TOKEN FOUND FLAG a620 H630 RAMLOC LOI 400 START BASIC TEXT 2640 gt 65G BASIC TOKEN EQUATIONS meea a670 GOT UTK DI 89 GO TO Geaa IFTK DI 8 amp IF 269 REMTK DI seF REM area TATK DI f4 STO 0719 THENTK DI A STHEN ev2a GOTK DI CB 360 arse 074o p 07590 e7se LBA 533A a770 8788 SET BASIC OUTPUT LINE ADDRESS POINTER 6790 900 SQUEEZE LOA L RAMLOC 1 esie STR wD TPTR a820 LOY H RAMLOC 1 eese STY KOUTPTR 1 ease ease SET BASIC INPUT LINE ADORESS POINTER easa 8870 NEXTLIN STA INP
182. ge You ve matured the market has matured and MICRO is growing along with you The system specific maga zines are a great place to get hints cor rections fixes and details about your own equipment the kind of material it made sense for us to publish back in 1977 when no one else coverd the 6502 But now that manufacturers are doing a better job of providing documentation and there are lots of publications for beginners we want to concentrate on more advanced issues that cut across machine and processor lines that keep you abreast of new developments and stretch your knowledge into new areas MICRO s editorial schedule for the next year reflects that concern This is the last system specific feature we ll be running Upcoming issues will feature various kinds of peripherals languages operating systems communications With your strong engineering back ground you ll want to know what new processors are being developed and how they can be used even before they re available in complete systems There are new programming languages being developed we will look at what they are which ones are worth pursuing for what purposes etc We will provide in formation in the form of data sheets and information sheets on a variety of products and issues And most in teresting of all we will explore new modes of computer use e g networks communications automated offices and industrial control systems We think that advanced c
183. ge from eight to 12 bits the corresponding con version times are approximately three to 200 milliseconds The ability to trade off conversion time for resolution gives these simple devices a flexibility not shared by other kinds of A D con verters and makes them feasible for many laboratory applications The device used for voltage meas urements is a QM 100 A D converter Analog Systems P O Box 35879 Tuc son AZ This device has three indepen dent A D channels each with a 0 to 10 VDC input range In operation a voltage ramp generator is triggered by the computer and its output is com pared to the transducer voltage A com parator signals the computer when the ramp just exceeds the transducer voltage EOC For resistance measurements a simple A D method outlined in an arti cle in MICRO was chosen It uses a 555 timer IC in the configuration shown in figure 1 The conversion method involves charging the timing capacitor Cl to a fixed voltage through the transducer resistance R and measuring the charging time with 59 Figure 1 A 555 timer integrated circuit wired as a monostabie muitivibrator A typical Du a value for C2 is 01 LF The value chosen for C1 depends upon R For Instance if R 150 KQ and 10 bit conversion is desired 1024 counts see text then C1 should be about 0 1 uF see reference 3 the computer The computer triggers the charging process and is then sig naled by the 555 t
184. ged and lots of fun to listen to Just the thing to lend novelty and a festive background to Christmas parties office par ties and Apple family get togethers Price 24 50 Includes everything needed to play the songs no hard ware required Author Product of the Music Maker utility from SubLogic Communications Corp Available Solutions Softworks Box 72280 Roselle IL 60172 1 50 shipping costs or from Apple dealers Name Anova Il System Apple II or Apple II Plus Memory 48K Language ROM Applesoft Hardware One or two disk drives printer optional Description Anova II performs up to a five way analysis of variance with equal or unequal numbers It can analyze ran domized designs between and within designs and repeated measures of designs Anova II can also perform an analysis of co variance for all designs The Anova table output tests all factors and interactions Price 150 00 Includes program disk and backup disk documentation and binder Authors Stephen Madigan Ph D and Virginia Lawrence Ph D Available Human Systems Dynamics 9249 Reseda Blvd Suite 107 Northridge CA 91324 continuedj No 55 December 1982 Software Catalog o Name UniFLEX System Gimix 6809 Winchester Systems Memory 128K minimum Language Available BASIC Pascal Assembler FORTRAN 77 C Hardware 2MHZ 6809 CPU with memory disk controllers 19MB 5 Winchester Desc
185. gh experiments EXEC file ILISZT is executed after loading the Integer program to be listed The first two POKEs in ILISZT generator MAKE ILISZT will move the Integer HIMEM pointer into the LOMEM space at 4B 4A 75 74 LOMEM also restores on Integer re load The last two POKEs move the start of program into the space nor mally used for Integer HIMEM Running ILISZTER will automatic ally switch over to Applesoft without disturbing the new Integer start and end addresses MAKE ILISZT can be deleted when EXEC text file ILISZT is generated Starting ILISZTER The first line resets Applesoft high memory to prevent string operations from overwriting the Integer source Token words are initialized at line 91 Since quotes are tokens if not in a remark the DATA declaration uses an amp symbol with conversion via the IF and CHR 34 statement A token evaluation array is gener ated in V at line 96 The V array is used in line parsing to test unused tokens and tokens that may have following numeric constants Unused tokens V22 may be nulls or single spaces spaces were written just in case the binary insert routine crashed The choice of lower case characters in token words is up to the user Mixed case token words give distinc tion from normal upper case variables Available utilities can edit upper case source code by adding hexadecimal 20 to each desired lower case letter Initial display at line 98 is optional but
186. gh technology lasers Your successful escape de pends on maneuvering your turbo car through the enig matic curves of ten con secutive mazes and foiling your pursuer through the clever use of bazooka rockets and oil slicks Ten different speeds ranging from novice to expert offer hours of fun before proficiency is achieved Price 29 95 Includes disk and documentation Author Don Fudge Available Avant Garde Creations P O Box 30160 Eugene OR 97403 or local dealers MICRO The 6502 6809 Journal Name Single Entry Ledger 6809 Using FLEX or UniFLEX TRS 80 Model III and Color Computer Memory 56K Language Extended BASIC Hardware 8 or 54 disk Description Single Entry Ledger is a simple bookkeeping system for tracking income and expenses It is an ideal ac counting system for tax pur poses saving the user both tirne and money The data files may contain any number of ac counts or transactions Any number of reports may also be written from comparison reports of the previous year to transactions by account number Price 95 00 Includes disk and manual Author K Orlowski Available Universal Data Research Inc Dept A 2457 Wehrle Drive Buffalo NY 14221 System Name Prelab Studies in General Organic and Biological Chemistry Apple II with 3 3 DOS Memory 48K Language Applesoft Description This package pro vides a review of selected chemical concepts highlight ing import
187. ginp ajoAo X981 9219S 149 BJOAD eo9sppx9ege 10je1eueD edojaAu3 eseeja1 IS Q sns oap ye eS Iq ayeH uo b9Jj OSO YIM ISO eziuoJuou S UO ndino 9SO YM 2S0 ejeijnpoul DuiH JOJefjjoSO ejqeSIp 4 HA sel UJJ0JjOAPA uL 129JeS UO UJJ0JOAP YOO MES 9913S UO U1JJOAPA esjnd 1o9Jes UO UlOJ8AEM eSiOU UJODUEI 29j6S J8 Si6981 J01 U02 9910A aiqaiu yl YIPIM u0J8Ae es nd 1 MMA pasnun 91 q MO UIPIM WIOJBARM eS nd 99IOA 9e1Aq uBiu jo11u09 Aduanbdal4 3010A 91 q moj Jonuoo funes 10j09 7 eiudg Jojoo 9 ayyds 10109 G euudg JOJO y ads 10102 ayds Jojoo Z dg JO0J0O ayuds 1009 0 aysds 1618156 1ojoonnu d Q 16181681 10joonnui eja4dg 10J09 punoiJ8xyoeg 2 10 09 punosHyoeg 10 09 punoJ6xoeg Q 10409 puno146xoeg J0JO09 18p10g 19e1jep uoisijbo puno16xoeq o1 e14dg 199 p uoisijjoo eids oj ey4dgs A 189111894 xz puedxe 7 0 sejudg WOW 1 1961s apow 1ojoonjnui 7 0 sey1ds ayids 1 Aoud Kejidsip punoj8x9eq o1 e11dg peiqeue jdniejul 1 e64s 681 ysew OY Gel OY e1eduioo Jajsey 62l OW uoisijoo puno45x2eq 0o1 810d S Gel DYI uorsiijoo eids or ejudg 6e DY pe1e65uj ued 1u6r1 uonpuoo OY OIA paigeua Aue uo jag pe1unooo OY 49 says1690y 684 1dnujeiut OIA peiiN990 OHI i ug SSoJppe eseq eIPp Op J919 J8u2 OIA 9pisul sseJppe eseq xuyew O9pIA LL 1334S eed P QU iuDsdoOC o 39
188. h a precision of one degree Celsius is desired at a temperature of 100 degrees If the sen sor is a thermocouple the transducer output will be in the low millivolt range and a difference of one degree in temperature would produce a voltage difference of at most a few tens of microvolts beyond the direct resolu tion of most analog meters As the precision requirement of an experiment increases conventional thermocouple instrumentation becomes costly With digital instrumentation this precision is not difficult to achieve Provided the input signal at 100 degrees is within the upper half of the con verter s input range all that is required is an eight bit A D converter An ob vious problem then in interfacing thermocouples and many other labora tory devices as well is the low level of No 55 December 1982 the output voltages The millivolt level signals generally available must be amplified to the 0 5 to 10 VDC range before A D conversion can be performed satisfactorily Fortunately the fre quency response requirements are min imal for most applications so large gain amplifiers 100X 2000X are relatively simple to build See figure 3 for a typical example When adjustable gain is included the combination amplifier and QM 100 converter be comes an A D system that is inexpen sive versatile and reliable Thermistors in contrast to thermo couples can be manufactured to pro vide large resistance change
189. hardware or software In addition to the Hi Res Graphics the SEB 1 gives C1 amp Superboard II users 16K of additional user memory over and above that memory devoted to the graphics two 16 bit timers counters an on board RF modulator and a parallel port with handshaking The SEB 2 gives OSI 48 pin BUS users an OSI hardware software compatible Disk controller and an RF modulator that can be user populated FOR OSI 1P 2 4P 2 8P C4P C8P unti now SEB 1 SEB 2 SEB 1 SEB 2 Assembled and Tested 249 00 5K RAM 239 00 1K RAM Bare Board amp Manual 59 00 59 00 Kit 165 00 No RAM 199 00 No RAM Manual only 5 00 5 00 COMING SEB 3 80 x24 Video Disk Controller C2 4 8 SEB 4 48K Memory RAMIROM C2 4 8 SEB 5 8K RAM Disk Sound Clock Voice C1 amp Superboard Write for FREE catalog International Requests please supply 2 international Response Coupons ORION 18 MICRO The 6502 6809 Journal SOFTWARE ASSOC P O BOX 310 OSSINING NY 10562 914 762 5636 No 55 December 1982 BASIC Macro Function for Cursor Control by Kerry Lourash BASIC Macro is a machine language program similar in function to the macro option of some assemblers It enables Cursor Control users to insert often used statements with only two keys when typing BASIC programs ERGO a routine for all C1P users eliminates the graphic character in error messages BASIC Macro and ERGO require
190. he LM334 is an adjustable current source with good current regulation A typical value for R with two LEDs in series is 5 to 10 ohms The two LEDs in series are used to provide a sample signal and a reference signal for the colorimeter applications discussed In the text Francisco 1978 The TTL Data Book Texas Instrument Inc 1976 2nd ed D Lancaster The TTL Cookbook Howard W Sams and Co Inc Indianapolis 1979 5 See for example P Horowitz and W Hill The Art of Electronics Cambridge University Press Cam bridge 1980 F M Mims Engi neer s Notebook II Integrated Cir cuit Applications Tandy Corpora tion 1981 Z H Meiksin and P C Thackary Electronic Design with Off the Shelf Integrated Circuits Parker Publishing Co Inc West Nyack NY 1980 S A Hoenig How to Build and Use Electronic Devices without Frustration Panic Mountains of Money or an Engineer ing Degree Little Brown and Co Boston 1980 2nd ed 6 See for example W Jung IC Op amp Cookbook Howard W Sams and Co Inc Indianapolis 1979 Operational Amplifiers Design and Application McGraw Hill Book Company New York 1971 edited by J G Graeme G E Tobey and L P Huelsman 7 F M Mims Engineer s Notebook II Integrated Circuit Applications Tandy Corporation 1982 p 116 You may contact the authors at the Department of Chemical Engineering Uni
191. hers are used only with key board entries ASCII characters have the high bit set to use the decimal range by Leonard Anderson of 128 and 255 Token and character values are opposite that of Applesoft A major difference also exists in handling numeric constants within In teger Certain functions permit a following numeric constant or variable name Distinction of a numeric con stant is done by making the first byte following an ASCII number BO to B9 not allowed as first letter of a variable with the next two bytes con taining the numeric constant in binary Integer BASIC is located just below the highest free memory address In teger does not need the three null end of program marker required by Apple soft Other details may be found in earlier publications 5 An EXEC File for Glue If an Integer program exists in memory loading an Applesoft program will not destroy the Integer source code Loading does change the Integer start of program pointer at CB CA 203 202 Integer end of program or HIMEM at 4D 4C 77 76 remains unchanged LINE NUMBER 16 BIT BINARY MICRO The 6502 6809 Journal Figure 1 Source code structure on one line number in Integer END OF LINE MARKER lt ONE LINE NUMBER ooo INCREASING MEMORY ADDRESS E 13 HIMEM will restore to the end of free memory on re loading an Integer pro gram the mechanism is unknown but confirmed throu
192. hine modem or printer This particular line is not used by the CIP although the ACIA designers provide it so that a computer can indicate whether or not it is ready to receive data The control register of the ACIA chip controls the status of the RTS line among other ACIA activities In BASIC whenever the Break key is de pressed the control register is reset to a value of 17 and RTS goes low If you POKE a value of 64 to the register then RTS will go high and stay there until another value is stored in the register One advantage of this bit in the BSR in terface is that it will automatically turn off when Break is depressed The ACIA control register is located in the C1P at address 61440 F000 The RTS line can be toggled at a 40 KHz rate to produce the BSR code Since the CIP uses a standard clock rate of 1 MHz the wavelength of a 40 KHz tone is precisely 25 clock cycles However I found by timing my C1P with an oscilloscope that its clock is running about 496 slow Thus I could produce the tone using a 24 clock cycle wavelength Instead I chose to build a free running 40 KHz oscillator and use the RTS line to switch the oscilator output to an ultrasonic transducer The oscillator circuit is shown in figure 2 and the parts are listed in table 2 The only part not universally avail able is the ultrasonic transducer a capacitive loudspeaker that creates the actual tone Since these devices are Listing 1 20
193. hine language program files on Commodore disk It uses BASIC 4 0 disk commands but is otherwise compatible with other Microsoft BASICs SOUP requires PET CBM disk drives printer optional This program originally adapted by Henry Troup from a similar mini computer utility compares two ver sions of a machine language program on disk and prints out any lines that differ between the two versions All you need to use SOUP are disk copies of the two machine language programs to be compared The only other restric tion is that they must begin loading at the same address To use the program place the disk or disks with the files to compare in your disk unit Also prepare your printer if you are using one At start up you will be asked the name and drive number of the two files This is the only time in the program that disk status is checked If an error is found here repair the cause and re enter the file name and drive number From here on operation is automatic As differences are discovered they are listed either to the screen or printer You may wish to make some changes in the formatting used here Lines 700 and 710 set the maximum fields per line for screen and printer respectively If your screen has over 40 columns or your printer over 80 you may increase the value given to variable mf Like wise if your printer is not device 4 52 change lines 690 and 710 to allow the device number you need If your
194. hmark comparisons of BASIC FORTH and RPL page 63 I would have to say that Mr Stryker is apparently somewhat biased in his viewpoint since he is the father of RPL What he appears to have done is take perfectly readable FORTH and translate it into hieroglyphics Surely the FORTH word DUP is more meaningful as a stack operator than and who would ever guess what sU 7 and 969 have to do with anything Single character words are very useful for lazy typists but they do tend to produce write only code for those who need to determine what a program is doing Every FORTH implementation I have ever seen has a machine language primitive to handle block moves on a character basis Why do we go through the gyrations of listing 1B when the word CMOVE would do just as well actually better Even without using CMOVE the word BLKM would ex ecute faster and with fewer FORTH words if it were written BLKM OVER SWAP DODUPCQ IC 1 LOOP DROP This word expects a slightly dif ferent order of things to be on the stack than originally specified FROM TO and COUNT 634 826 150 using his numbers This is the same order that CMOVE would expect them also I am sure that this arrangement would be of benefit for RPL as well Regarding the SHUFFLER bench mark first of all it appears there is a typographical error of omission in line 8 of listing 2B since the word MOD referred to in the text is not there Even
195. holes on computer top or side for entry of foreign object Two 8 single or double sided floppy disk drives IBM single density 3740 format for 243K of storage on each drive Using double density with 1K sectors 608K of storage is available on a single sided drive op 1 2 meg on a double sided drive Satin finish extruded aluminum with vinyl woodgrain decorative finish 8 slot backplane for expansion 48 pin buss is compatible with most OSI boards Uses ali standard IBM format CP M software Model 80 1200 2995 2 8 single sided drives 1 2 meg of storage Model 80 2400 3495 2 8 double sided drives 2 4 meg of storage Option 001 95 Serial printer port dip switch baud rate settings Software available in IBM single density 8 format MICRO 80 COMPUTER Microsoft Basic 80 289 Basic Compiler 329 Fortran 80 410 Cobol 80 574 Macro 80 175 Edit 80 105 Mu Simp Mu Math 224 MuLisp 80 174 Digital Research PL 1 80 459 Mac 85 Sid 78 Z Sid 95 C Basic 2 110 Tex 90 DeSpool 50 Ashton Tate dBasell 595 Micropro Wordstar 299 Mail Merge 109 Spellstar 175 Super Sort 195 Pascal Pascal MT 429 PascalZ 349 PascalM 355 Convert almost any static memory OSI machine to CP M with the D amp N 80 CPU Board Z80A CPU with 4MHz clock 2716 EPROM with monitor and bootstrap loader RS 232 serial interface for terminal communica tions or use as a serial printer interface ina VIDEO system Disk co
196. hosphor Amdek Video 300L green phosphor BUSINESS SOFTWARE Spellmaster Dictionary great for WordPro 199 02ZZ Data Base System 8050 240 o A C2 Q2 C NN OO ov Ccncocco Silicon Office database wp f ho 995 New Wordcraft 80 289 VisiCalc new expanded 199 Dow Jones Portfolio Management System RS232 120 WordPro 4 or5 1 299 The Manager 199 Legal Time Accounting 425 LRMA 295 BPI AR G L Job Cost Inventory Payroll SJB will service any VIC or CBMO4 MasterCard Visa Money Order Bank Check COD add 5 accepted Add 3 surcharge far credit cards in stock items shipped within 48 hours FO 8 Dallas TX All products shipped with manufacturers warranty TO ORDER CALL TOLL FREE 800 527 4893 800 442 1048 within texas SJB will meet any competitive price under similar in stock conditions SJB DISTRIBUTORS INC 10520 Plano Road Suite 206 Dallas Texas 75238 hs 325 pkg SOFTWARE FOR CBM 645 Word Processing Computer Tutoring Game COCO General Ledger Pet Emulator emulates 4 0 basic CBM EasyCalc for the 64 CBM EasyFinance CBM EasyPlot CBM EasyScan appointment manager Sprite Magic build sprites on screen with Joystick save to disk or cassette Assembler Package for CBM 64 cassette Editor creates and updates source code Assembler Loader Disassembler IEEE Interface 64 Parallel Interface RS232 Interface modem
197. hrle Drive Amherst NY 14221 716 631 3011 ec EM SeaFORTH for the Apple computer ls a consistent structured operating system providing the advanced programmer with the tool to easily develop programs from machine language to high level compiled applications With SeaFORTH the edit compile execute edit cycle is measured in seconds not minutes The integrated SeaFORTH package includes Editor Disc I O Assembler Hi res Graphics Transcendental Floating Point Command Line Input with Editing Detailed 150 Page Technical Manual with Complete Source Listing Implemented as a true incremental compiler SeaF ORTH generates machine code not interpreted address lists SeaFORTH s direct threaded subroutine implementation executes faster than interpreted address list versions Apple SeaFORTH requires a 48K Apple J with DOS 3 3 Manual and copyable disk are available for only 100 00 Compatible SeaFORTH for the AIM requires a terminal and is only available in EPROMs Manual and EPROMs 150 00 Manuals available separately for only 30 00 All prices include UPS shipping VISA or MASTER CHARGE welcome Dealer Inquiries Welcome TAU LAMBDA P O Box 808 Poulsbo Washington 98370 206 598 4863 Apple J and AIM are registered trademarks of Apple Computer and Rockwell also send MICRO The 6502 6809 Journal 111 Apple Math Editor Th Appl allows you to construct edit and prin mathematical fo
198. ical to the data read cycle except for the SYNC line operation which rises to a logic level one 5V shortly after the fetch cycle is initiated The fetch cycle figure 1 starts when the system clock 2 falls to a logic level 0 0V For a 1MHz system clock the fetch cycle normally requires 1000 nano seconds or one micro sec ond During this 1000 nano second period several events occur in well ordered sequence First the CPU out puts the current value of the program counter on the address bus This is the address location of the next instruc tion The specified memory then out puts the op code to the data bus The CPU reads the op code from the data bus just before the end of the cycle The interval in which the Trapper has to operate extends from the time the memory device presents the op code to the data bus until the CPU latches it internally In this time it must determine if the op code is valid or not and force a BRK 00 if it is il legal The Trapper described in the next section requires a maximum of 150 nano seconds to operate leaving a mini No 55 December 1982 mum of 525 nano seconds for the mem ory to present valid data to the data bus This of course precludes the use of very slow memory devices but is ade quate for most microcomputer systems Hardware The Trapper figure 2 samples the data bus in a parallel mode The data lines are first buffered through IC4 and IC5 and then used to form the
199. ications Company THIRD PARTY SOFTWARE tor atari 800 or 400 K BYTE K STAR PATROL K RAZY ANTICS AUTOMATIED SIMULATIONS Star Warrior CXL4011 STAR RAIDER CXL4004 BASKETBALL CXL4006 SUPER BREAKOUT WE CARRY MANY OTHER THIRD PARTY PRODUCTS YOUCANCALL FOR PRICES ON AND ASK FOR YOUR FREE ATARI PRODUCT CATALOG Interfacing Available JOYSTICKS In Stock Atari CX 40 LeStick Wico Command Control WICO RED BALL STICK STAND DISKETTES In Stock Maxell MD1 10 Maxell MO2 10 Elephant 10 THIRD PARTY SOFTWARE ATARI PROGRAM EXCHANGE Eastern Front 1941 25 50 Avaisnche 15 50 Outlaw Howitz 15 50 Dog Oaze 15 50 Wizard of War 31 00 31 00 Frogger 26 00 BUSINESS SOFTWARE In Stock Atari Word Processing Letter Pertect Test Wizzard Datasam 65 Intertisp Monkey Wrench Utility Disk Uttimate Renumber CXL4008 SPACE INVADER CX8130 CAVERNS OF MARS CX4106 CX4102 CX4112 CX4114 EUROPEAN COUNTRIES 12 75 CX4109 GRAPHIT CX4121 CX4123 CX4101 PROGRAMMING I CX4106 PROGRAMMING It CX4117 PROGRAMMING Iil CXL4015 TELELINK CX4119 CX4118 CX4120 CX4120 CXL4007 CXL4002 ATARI BASIC CxX8126 MICROSOFT BASIC CXL4003 ASSEMBLER EDITOR CX8126 MACROASSEMBLER CXL4018 PILOT HOME CX405 PILOT EDUCATOR CX415 HOME FILING MANAGER 41 75 CX414 BOOKEEPER 119 75 NEW RELEASES CHOP LIFTER APPLE PANIC PREPPIE e POLICY ls e
200. ick hipment A 490 3420 And we ll be here to help after you receive your order Feel free to call the SGC NaN Staff for assistance PN mail d specialists 342 Quartz Circle Livermore CA 94550 No 55 December 1982 STAFF President Editor in Chief ROBERT M TRIPP Publisher MARY GRACE SMITH Editorial Staff PHIL DALEY Techn cal editor JOHN HEDDERMAN Jr programmer MARJORIE MORSE Editor JOAN WITHAM Editorial assistant LOREN WRIGHT Technical editor Graphics Department HELEN BETZ Director PAULA M KRAMER Production mgr EMMALYN H BENTLEY Typesetter Sales and Marketing CATHI BLAND Advertising mgr CAROL A STARK Circulation mgr LINDA HENSDILL Dealer sales MAUREEN DUBE Promotion Accounting Department DONNA M TRIPP Comptroller KAY COLLINS Bookkeeper EILEEN ENOS Bookkeeper Contributing Editors CORNELIS BONGERS DAVE MALMBERG JOHN STEINER JIM STRASMA PAUL SWANSON RICHARD VILE Subscription Dealer inquiries 617 256 5515 DEPARTMENTS 3 December Highlights 7 Editorial 9 Letterbox 30 CoCo Bits 32 From Here to ATARI 35 MICRO News 54 PET Vet 65 APPLE Slices 91 Updates Microbes 97 Short Subjects 99 New Publications Reviews in Brief Software Catalog Hardware Catalog 6809 Bibliography Data Sheet Advertiser s Index Next Month in MICRO No 55 December 1982 NO 55 DECEMBER 1
201. ideo registers from the contents of the shadow reigsters This guarantees that all of the hardware registers are written while ANTIC is not drawing on the screen At the end of the interrupt rou tine the 6502 automatically returns to whatever it was doing before the inter rupt occurred so this process is almost invisible to the main program This in 22 terrupt routine happens at the end of every sweep of the electron beam or exactly sixty times per second The Vertical Blank Interrupt Routine Every sixtieth of a second your pro gram whether in BASIC or machine language gets interrupted for this special routine Actually there are two routines The first one which almost always runs is called the immediate vertical blank interrupt routine It takes care of all of the timers in the system which includes the real time clock in locations 18 through 20 Listing 1 Routine to shadow the fine scrolling registers The JMP location xxxx will be the vector value at location 224 The shadow registers will be at locations 610 and 611 O600 AD 11 O6 LDA 611 0503 8D OS D4 STA D405 060S AD 10 05 LDA 610 0609 8D 04 D4 STA D404 OSOC 4C xx xx JMF xxxx decimal It adds one each frame so that PEEK 20 PEEK 19 256 4 PEEK 181465536 always reveals the elapsed time in sixtieths of a second The second routine is tacked on to the end of the first one This second part is called the deferred vertical blank interr
202. ider MICRO too technical Your biggest beef Not enough information on your own system whatever that may be Too much Apple not enough Apple not enough Atari not enough OSI Now we know that that is going to be something of a problem in a publica tion that covers more than one system or more than one chip but we think it s important to cross fertilize to generalize to bring you knowledge and information that is transferable Our goal is to make at least half of the magazine non system specific while dividing the other half in much the way our readers are divided about half Apple and the other half heavily weighted toward OSI Commodore Atari and 6809 systems Interest in the 6809 and 68000 remains high especially among users who are adding boards and processors to 6502 machines A great many of you 6296 use more than one kind of system and 4696 have systems both at home and at work nearly all of you plan to spend money adding more equipment during the coming year We trust that the reviews hardware and software catalogs and advertisements are helping you make those purchases There is a great proliferation of system specific publications and more and more information for the beginning computer user We are trying not to MICRO The 6502 6809 Journal clutter up the magazine with informa tion you already have you ve learned a lot over the last few years and we want to help you build on that knowl ed
203. ility during your BASIC program development It allows you to delete a whole range of lines rather than just one at a time BASIC Line Delete requires Upgrade or 4 0 PET CBM or VIC BASIC Line Delete a command you can add to your Commodore computer s resident BASIC deletes blocks of BASIC lines instantly For example suppose you wish to delete line num bers 1000 through 5000 in a BASIC pro gram Simply type 1000 5000 and hit return and all those lines will be deleted instantly This BASIC Line Delete function is easy to use since the syntax is the same as that found for the LIST command In addition extensive error checking is employed to avoid disasters You can consider BASIC Line Delete as an addition to the computer s BASIC language It is loaded into the computer at the start of a session and can be invoked at any time in the im mediate mode to perform its task Because this 177 byte long machine language program sits at the top of memory with memory pointers lowered accordingly it can peacefully coexist with any BASIC program The original program was written on a CBM 8032 with 4 0 ROMs How ever it should be easy to convert to any type of Commodore computer since the ROM routines used are common to all models only the addresses are dif ferent In addition it is likely that other Microsoft BASIC machines can use this program with a few changes When we examine the ROM routines you will n
204. imer when conver sion is complete By choosing the ap propriate combination of transducer and timing capacitor for a specific ap plication you have a simple and inex pensive data acquisition system While the examples described here are specific to temperature and light intensity measurements the concepts are general These interfacing methods can be extended to virtually any kind of voltage or resistance measurement Moreover it is clear that the use of a resistance transducer when appropri ate can result in a significant simplifi cation of hardware compared to other techniques and it will often pay to change to sensors of this type One additional point that should be made in connection with the pulse width A D converters is the ease with which these devices can be multi plexed Many times it is necessary to measure a number of inputs simultane ously Since most microcomputers will support only a limited number of I O lines it is useful to be able to switch select devices automatically multi plex Examples of this include the simultaneous monitoring of the tem perature of each tray of a multistage distillation column and multiple con centration profile measurements along a tubular reactor The circuit shown in figure 2 has been used to multiplex the sensors in several experiments It is based on the 74150 IC a 16 channel 60 multiplexer A similar circuit based on the 75151 IC can be used to construct
205. in best selling Swashbuckler sword fighting ga outdoes itself in AZTEC You re inside an anci Aztec pyramid searching for the golden i Descend deep into the heart of the templ meet cobras scorpions giant liza hostile Aztec guardians and more Wa for hidden trapdoors and strange de rooms Be ready to fight or run cra jump to possible safety The menac real the options and strategy are yo You ve never seen an adventure Aztec You ll never tire of its ama action animation and exciting challe 39 95 for the Apple II At computer stor uet jut m s _ Chatsworth Ca 91311 213 70 TA We D P VISA MASTERCARD accepted 2 00 s handling charge California residents sales tax Apple iL isa trademark of Apple Computer Inc Utilizing the 6502 s Undefined Operation Codes by Curt Nelson Richard Villarreal and Rod Heisler This method allows you to use the 6502 s undefined op codes to design new and individualized pseudo instructions under program control A simple hardware device attached to the data bus forces a simulated BRK command when an illegal op code is detected Utilizing Undefined Op Codes requires Hardware modification to a 6502 microcomputer Fetch Cycle Before the Central Processing Unit CPU can execute an instruction it must first get the hexadecimal code from memory This process is called a fetch cycle The fetch cycle is ident
206. in your program is actually 122 and the last one before line 210 is 186 Then 100 200 will still delete all of the lines between this range mean ing that actually lines 122 through 186 are deleted The second column shows some of the possible statements with improper Figure 1 FORWARD LINE LINK NUMBER A LINES TO BE DELETED B END OF BASIC SIGN MICRO The 6502 6809 Journal How BASIC is Stored and Principle of DELETE END OF LINE SIGN nae TOKENIZED AND COMP ESSED BASIC LINE a ale eels wee 6 47 NE commodore He syntax If you type any of these the Figure 2 operation will be aborted and a SYN i 00001 0000 COE XE RELL EEL EEL REEL E E LE E E E EXER E EXE TAX ERROR message will be returned 00002 0000 px It is important to have this feature 099007 0000 5 BASIC LINE DELETE UTILITY i 00004 0000 M since a delete function could have 00005 0000 ASSEMBLER CODE FOR CBM B032 potentially catastrophic results if 00006 0000 P THOMAS HENRY improperly used So essentially the Q9007 9000 Pix e 90008 90000 3 3E FETE TE HEE TEE I 3C JEJE IC EAE TE TEE TE FETE IC Ie 4C EIE IC HE SESE EE statements shown in column one all 00009 0000 s have proper syntax and will produce 00010 0000 00011 0000 VALUE 11 s INTEGER VALUE meaningful results from the computer 00012 0000 VARBLE 2A POINTER TO VARIABLES while all other statements will not 00013 0000 MEMTOP 34 TO
207. ine change the contents of the output vec tor to the start of ERGO 021A 22 021B 02 You may contact Kerry Lourash at 1220 North Dennis Decatur IL 62522 ANICRO OSI fum HB oem p P i2 NICHT RID COSMIC DEBRIS M BAK LIEE KALEIDOSCOPIC LIVING KALEIDOSCOPE DRAW ME DEPTH CHARGE GOTCHA All programs will run on 8 amp CIP Many are compatible for C and run in 4k 20 icz amp Robinson authors of MINOS NIGHT RIDER etc proudly present to you 34 original PROGRAMS zs DE s i the unde reus low price of 29 95 hat s less than MAZE YER HBORS FOR TWO CHI SQI Fl PATTE H eacl NIGHT RIDER UTILITIES PAPE VERIFIER LISTING LINE VERSATILE LINE FO VEOR STATISTICS ARI HON PLO FER RNG PROBABILITY i SOFTWARE ORY MICRO The 6502 6809 Journa Mg LINE RE BASIC Macro Listing Continued 470 0271 E047 CFx 47 480 0273 BOOS BCS STO i 490 0275 297F AND 7F 3ZERO HI BIT 500 0277 9513 STA 12 X 510 0279 2C4707 STO BIT 074 BEL CHAR IF 71 520 027C 4CESAS JMF 48ES PRINT CHAR 530 027F 540 027F BA WINDUF TSX UPDATE BUFFER COUNT 550 0280 ASOE LIA 0E SLINE COUNT IN STACK 560 0282 9D0201 STA 0102 X 570 0285 A901 LUA 1 NON FRINTING CHAR 580 0287 4Ci21E RESUME JMF FATCH 3 BACK TO CC ERGO Listing 10 0000 ERGO ROUTINE 20 30 0222 0222 40 0222 C90D CMP 13 IS CHARA CR 50 0224 D015 BNE EXIT 60 0226
208. ing to see if INDEX is equal to the upper limit If it is not STRNGLO resets the upper limit to INDEX instead of the lower limit Subroutine Hints Before using BINARY SEARCH you should set HIMEM to 37888 or lower if you decide to load the routine at 9400 I could have set HIMEM for you in SETVEC but I believe that leaving this task to you allows more flexibility you can BLOAD and CALL the routine instead of using the amp feature You can also BRUN the subroutine from anywhere in your BASIC program instead of just from the first line MICRO Decision Systems P O Box 13006 No 55 December 1982 DEVOTED TO ALL ASPECTS OF MICROCOMPUTER GC UNDERGRADUATE K GS CGA Q FEBRUARY 1983 Collegiate MI crocomputer USE AT THE PREMIER ISSUE write Rose Hulman Institute of Technology Terre Haute IN 47803 USA Prospectus sent upon request Systems SOFTWARE FOR THE APPLE II Denton TX 76203 ISAM OS is an integrated set of Appiesott routines that gives indexed file capabilities to your BASIC programs Retrieve by key partial key or sequentially Space from deleted records is automatically reused Capabilities and performance that match products costing twice as much 50 Disk Applesoft PBASIC DS is a sophisticated preprocessor for structured BASIC Use advanced logic constructs such as IF ELSE CASE SELECT and many more Develop programs for Integer or Applesoft Enjoy the p
209. investment in your computer equipment COMMANDER can help you make the most of it Each issue brings you the no nonsense advice you need to stay on the leading edge of this constantly changing field COMMANDER will be your reference source to the woridof computers with the best most comprehensive coverage you can get PREMIER ISSUE C1 YR 322 2 YR 40 C 3 YR 56 4 DISCOUNT PRICES DO NOT INCLUDE 34 DISCOUNT COMMANDER P O BOX 98827 TACOMA WASHINGTON 98498 206 565 6818 64 Subscnpoion Orders Oniy Toll Free Number 1 800 426 1830 lence WA H AKI MICRO The 6502 6809 Journal SOPHISTICATED TELE COMMUNICATION IS HERE THE COMMUNICATOR for 4 0 Commodore Computers With HIGHER SPEED MORE SOPHISTICATED CONTROL LOWER PRICE THE HARDWARE A printed circuit board easily installed in the CBM it uses no CBM connectors gives a serial port with true RS232C standard The board alone is capable of running up to 9600 baud With the software it will run up to 4800 baud THE SOFTWARE Emulates the ADDS Regent 100 ADM 31 and or the TeleVideo 950 Or choose the VT100 model for use with DEG and VAX computers Runs coresident with BASIC programs lets BASIC programs and program on host computer communicate to develop really sophisticated communication and control capabilities The program is on ROM at either address no disk loading re quired Uses only 512 bytes of RAM
210. ion hard copy capability of the dot matrix printer are combined to make the system an inexpensive but powerful universal data acquisition instrument Once it is realized that resistance and voltage can be measured so easily with the microcomputer you may wish to redesign existing experiments to match the output to the interface rather than the other way around In particular it may be advantageous to generate resistance rather than current or low level voltage e g use thermis tors instead of thermocouples At moderate expense the system can be expanded further to provide the capability to feed back information and change the operating conditions of the device it monitors Digital to analog conversion and control will be dis cussed in a subsequent paper The role of the computer in the laboratoy is that of a tool Certainly it is a remarkable tool in terms of power and capability but nevertheless it is a means to an end and not the end in it self This point is sometimes too easily forgotten References 1 H Saltsburg R H Heist and T Olsen MICRO The 6502 6809 Journal 53 53 2 J Sherburne MICRO The 6502 6809 Journal 26 31 3 See for example H Berlin The 555 Timer Applications Sourcebook with Experiments Howard W Sams and Co Inc Indianapolis 1979 4 See for example Signetics Logic TTL Data Manual Uniplan San No 55 December 1982 Figure 5 A current regulator T
211. ique VIC 20 User Group Borrow any program from our extensive loan library for only 1096 of cost and get free newsletter and special purchase prices on all VIC 20 hardware and software from our huge catalog Membership only 25 by check VISA MasterCard Software To Go Rt 3 Box 309 A 52 Clinton TN 37716 615 457 5068 615 584 0022 a 8000 Software For Apple compatible boards DTACK The Moose professional and only available 68000 chess program 67 MUXA68 UCSD 68000 Crossassembler 70 68TICID Debugger 47 PCON68 UCSD Interface for DTACK board 30 10 shipping and handling Moose Systems f Steenbargkoppel 21 D 2000 Hamburg 65 German de Ne ee Continued No 55 December 1982 Table 1 continued Mnemonic Data Size CCR Function Comments 6 CORSO 8 1632 Inclusive CCR OR XNZVC L gical 00 CXNZVC The addressing mode will be covere i Fu No 55 December 1982 MICRO The 6502 6809 Journal M ic RO bits continued OSI Peter Packer Pack widgits into boxes and ship them out in the elevators before your defective robot assistant unpacks them or packs you An original arcade game of cunring and skill that increases in difficulty each round 8K tape 14 95 Watts Ware 153 Madrona Drive Anacortes WA 98221 OSI Affordable DBMgr 8 single dual floppy under OS65D V3 3 video User defined files
212. it home Nothing extra to buy But you ll never outgrow PIE because it works with just about anything you might want to add e 80 column boards shift key modification lower case adapter spelling checker hard disks VisiCalc files modems e program source files VisiCalc is a registered trademark of VISICorp Just how functional is PIE WRITER Try these with any other word processor Character word line and paragraph editing Global word search and replace Automatic centering Justify right and left plus incremental spacing Help screen for quick reference Cut and paste Automatic wrap around Forward and backward page scrolling Custom form letters and mailing lists Full format control Status display Full control over page numbering bottom and top headers Save a segment of text on another file Insert text from another file Underlining Control page breaks Tabbing by word or moveable tab marks Built in training lessons And Pie Writer s comprehensive indexed manual and quick reference card make it easy to use it is very writer friendly The best word processor available PIE WRITER For you just cant afford to buy anything else All you need to start is an Apple II with 48K 3 3 DOS one disk drive a monitor and printer Available at your local computer store or call 1 800 343 1218 in MA call 617 937 0200 SOFTWARE It s All Relati
213. l No 55 December 1 Listing 1 continued 104E A2 00 130 10E0 ED 16 12 131 OUT4 10E3 C9 1F 132 10ES F0 06 133 10E7 20 SF FA 134 10EA EB8 135 10EE DO0 F3 136 10ED 20 E2 F8 137 OUTS 10C0 A 0 00 138 10C2 E1 10 139 OUTO 10C4 85 14 140 10C463E4 10 141 10C8 D0 02 142 10CA E 5 11 143 10CC A2 08 144 OUT1 10CE 49 08 145 QUT2 10D0 8D 80 EF 144 1003 A9 02 147 1005 04 14 148 10D7 24 149 10D8 24 150 1009 8D 80 EF 151 10DC 29 02 152 10DE 8D 80 EF 15 10E1 CA 154 10E2 D0 0E 155 10E4 38 15 10E5 A5 i 157 10E7 ES 10 158 10E9 A5 13 159 LOEBSES 11 160 10ED E0 D3 161 10EF 4C 00 10 142 10F2 51 14 163 OUTS LOF43A1 14 164 10F 6 651 14 165 10F8 E1 14 166 10FA ES 14 167 10FC ES 14 168 10FE EA 169 10FF 4C CE 10 170 1102 171 x 1102 172 x 1102 173 x 1102 174 x 1102 175 x 1102 49 00 176 ADRS 1104 85 12 177 1104 85 13 178 1108 20 E2 F8 179 ADRO 1106 20 SF FA 180 110E C9 5 181 1110 00 11 182 1112 69 00 183 1114385 10 184 1114 84 12 185 1118 49 04 184 111A 85 11 187 111C A 40 188 111E 85 13 189 1120 49 FF 190 1122 60 191 1123 C9 0D 192 ADR1 1125 F0 26 193 1127 C9 30 194 1129 90 DD 195 112bE C9 3A 196 112D 90 OC 197 112F C9 41 198 1131 90 DS 199 1133329 SF 209 1135109 47 201 1137 E0 CF 202 1139 69 09 203 113E 29 OF 204 FKA 113D 04 205 113E 0A4 206 113F 0A 207 1140 04 208 1141 52 04 209 1143 04 210 ADRZ2 1144 26 12 211 1146 26 13 212 1148 CA 213 1149 D0 F8 214 114B F 0 EE 215 114D 65 12 216
214. l ine of software for business games and education up to 35 off MUSE KIS VISICORP STONEWARE SONNE SYNERGISTIC HOWARD AND MANY MORE HARDWARE AMDEK HAYES MICROSOFT FRANKLIN COMPUTER SYSTEM ACE 1000 1 795 00 Maxell Box of 10 54 SS DD 35 00 Verbatim Box of 10 55 SS DD 29 00 LEMONITORS _ List Our Price 9 Green 189 00 159 00 12 Green 199 00 169 00 ZENITH 12 Green 179 00 129 00 Plus a full line of AMDEK Monitors PAPER TIGER List Our Price 4600 y 1 094 00 950 00 560G 1 394 00 1 250 00 EPSON MX 70 449 00 395 00 MX BOFT 745 00 595 00 MX 100FT 945 00 795 00 CALL FOR THIS MONTHS SPECIAL BB 800 835 2246 EXT 211 702 459 4114 5130 East Charleston Blvd Suite SMI Las Vegas Nevada 89122 Phone orders welcome Mail orders may send charge card number include expiration date cashiers check money order or personal check allow ten business days for personal or com E checks to clear Add 3 00 for shippi ng andling and insurance eee residents a 5 7555 sales tax Please include phone number All equipment is in factory cartons with manu facturers warranty Equipment subject to price change and availability Call or write for price list 51 ENN commodore EBENEN SOUP A CBM Machine Language Compare Program by Henry Troup and Jim Strasma SOUP is an efficient compare program for mac
215. lege professor in a friendly and informative style the Blue Book gives you theory of operation schematics program listings parts list construction hints and sources of materials for each one of the 20 pro jects If you want to get the most out of your VIC this book is a must Even if you don t plan to build any of the projects the Blue Book is a valuable source of information on what can be done with the VIC Cost is 14 95 less than 75 per project WORD WHIZ Here Is a no frills word processor that does the job and is so small it leaves plenty of memory for your text Yet if offers full screen editing and easy save of work in progress on cassette by taking advantage of VIC s built in text manipulation capabilities WORO WHIZ prints out on the 1515 printer and is a bargain at 9 95 WORD WHIZ 80 For classy looking output this version of WORD WHIZ will drive an EPSON MX 80 See interfacing info in Blue Book above Get letter quality printing for only 14 95 Above prices include postage in the U S CA res add 6 tax Foreign add 2 mirrasignal 900 Embarcadero Del Mar Unit A Goleta CA 93117 ViC 20 A 02 VIC 20 VIC 20 VIC 20 VIC 20 ViC 20 VIC 20 VIC 20 VIC 20 VIC 20 VIC 20 VIC 20 072A OZA 0Z 21A OTA OTA OZ DIA OZA OTIA 0 2IA 07 1 50 240 PRINT WAIT A MOMENT 250 X PEEK 55 2568PEEK 56 163 260 FORA X TO X 162 270 READD POKEA D NEXT 280 Y X 17 HZ Y 256 L Y 2568H 290 POKEX 5 L
216. lementary use the voice can be described as robot like because of the lack of intonation and inflections With additional work and knowledge it is possible to obtain better results The cost of a simple unit is under one hun dred dollars The use of this method re Listing 1 Program for Adding Voice to a Computer 1000 2 ORG 1000 1000 3 x MODIFY TO SUIT INSTALLATION 1000 A MAAK AAA AAA AK 1000 5x x 1000 6x x 1000 7 x PROGRAM TO ADD VOICE TO ANY x 1000 Bx x 1000 9x x 1000 10 x COMPUTER x 1000 11 x x 1000 12 x x 1000 13 XXOKOIOKCICIONORCNCICNCRKCOKCICNORCIORORXORORORCIONDIORDIORON 1000 14 MSB OFF 1000 15 x 1000 16 x STORAGE LOCATION MUST SE MODIFIED 1000 17 x TO SUIT SYSTEM 1000 18 x 0010 19 PNT EQU 10 0012 20 END EQU 12 0014 21 BITS EQU 14 1000 22 X 1000 23 x SYSTEM SUBROUTINES 1000 24 x F8g2 29 KKK EQU F882 KEYEOARD INFUT IN ASCII FASF 26 QUT EQU FASF OUTPUT IN ASCII 1000 27 x 1000 28 x LOCATIONS OF I O PORT 1000 29 x EF80 30 DELR EQU EF80 6522 PORT EF82 31 DELDR EQU EF82 6522 DATA DIRECTION REGISTER 1000 32 x 1000 33 x 1000 34 x PROGRAM START 1000 35 x 1000 36 x 1000 42 00 37 DELTA LDX 0 BEGINNING OF SUFFER 1002 ED 52 11 38 DEL1 LDA DLM X 1005 C9 1F 39 CMP 1F L 1007 F0 06 40 BEQ DEL4 continued 69 quires some knowledge of linguistics Listing 1 continued ane 1009 20 SF FA 41 JSR DUT and phonetics if good results are 100C E8
217. ll the program names in a string array The array holds up to 68 file names the maximum number a CoCo disk can hold After reading the filenames each name is presented Pressing Y invokes the COPY com mand and the file is read into memory You are prompted to switch disks and if all goes well told that the copy is complete If you don t wish to copy a file press any other key The next file in line is then presented for your decision Be sure to reinstall your source disk before pressing Y In addition to the COPY command the simple program makes use of another powerful disk command 30 DSKIS is used in a loop to read the sec tors in the directory track It is the only BASIC command that can directly read the directory The routine that reads and stores the filenames is modified from the routine provided on page 62 of the COCO disk manual By the way there is a slight error in the routine that will cause it to miss several files Line 60 reads FOR N 1 TO 7 it should read FOR N 0 TO 7 The selective backup program routine uses several small arrays to read and identify the files that exist on a particular disk Upon execution of line 160 the array FI contains the filenames of the program on the disk Lines 170 to 230 present the filenames and invoke the copy command if necessary This routine has saved me a lot of time and hassle A Color Computer user s group has been formed in the Toronto Ontario Canada
218. ll write a little program to fill the screen with mixed upper and lower case characters like the one below 10 FORX 11012 20 PRINT AaBbCcDdEeFfGgHhliJj 30 NEXT This should fill your screen with alter nating upper and lower case letters Using the mode selection switches select inverse upper case according to table 1 this should be LH H L With the switches thus set all lower case letters should now be displayed as inverse up per case Step through all the other modes to ascertain that they are work ing propery If not carefully check your wiring of both the circuit board and its interconnections to your CIP You may contact the authors at Orion Software Assocs 147 Main St P O Box 310 Ossining NY 10562 ACRO 76 TRS 80 COLOR QUEST A NEW IDEA IN ADVENTURE GAMES Different from all the others Quest is played on a computer generated map of Alesia Your job is to gather men and supplies by combat bargaining explor ation of ruins and temples and outright banditry When your force is strong enough you attack the Citadel of Moorlock in a life or death battle to the finish Playable in 2 to 5 hours this one is different every time 16k TRS 80 TRS 80 Color and Sin clair 13K VIC 20 14 95 each ADVENTURES These Adventures are written in BASIC are full featured fast action full plotted ad ventures that take 30 50 hours to play Ad ventures are interactive fantasies I
219. lr tee pe ae os uw gt DL lt a og M EP MW ow And ue or an Mcd H d n M y i Then 88 DATA n Then AARS a at haan Gade n Peek End Sgn Abs Pdl ee Not udi nn Len Asc Scrn quU V oen eee eee e Man Wut tp y t s Text Gr Ca 1l l Dim Dim Tab 89 DATA End Input Input Input For To Step N ext Return Gosub m u Goto If Print Pri nt Print Poke Color Plot HLin At VLin At VTab 90 DATA 2 m eje writ List Pop NoDsp NoDep NoTrace Dsp Dsp Trace Pr In 91 FOR K 0 TO 127 READ TS K IF T K amp THEN TS K CHRS 34 REM ONE WAY TO GET A DOUBLE QUOTE INTO A STRING 92 NEXT 93 REM 94 DATA 2 0 2 0 0 0 0 1 0 1 1 0 0 2 2 2 1 1 1 1 2 1 1 1 Z 1 L 1 1 1 1 1 1 2 1 1 1 0 0 0 0 0 1 2 2 1 0 0 0 0 0 2 1 1 1 1 1 0 0 0 0 1 1 1 0 2 1 1 1 0 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 0 0 1 1 0 1 0 95 DATA 1 1 1 1 1 1 1 1 1 1 0 1 0 2 1 1 0 0 0 0 0 0 0 0 1 1 rl vl 96 FORK O0 TO 127 READ V K NEXT 97 REM SCREEN PROMPTS AND OPERATOR ALTERNATES 98 HOME TEXT VTAB 2 HTAB 12 INVERSE PRINT ILISZTER ACTIVE NORMAL VTAB 4 L PS 1 GOSUB 21 PRINT START OF INTEGER PROGRAM AS L PE GOSUB 21 PRINT END OF INTEGER PROGRAM AS REM OPTION AL TO CHECK APPROXIMATE ADDRESS LOCATION 99 PRINT
220. lso moves the machine code guaranteeing a crash when the new version is used Now I use a small trick to load the machine language portion separately from the BASIC part This method is quick and allows easy changes to both the BASIC and machine language por tions of the program Line 1040 checks to see whether a key location contains the value it does when the machine code has been MICRO The 6502 6809 Journal loaded If not MEMSIZ the zero page location that controls top of memory pointers is lowered along with FRETOP the top of dynamic strings pointer On the VIC MEMSIZ is at 37 and FRETOP is at 33 The two POKEs protect the machine code from BASIC s dynamic string variables Note that if only MEMSIZ were altered BASIC would think it had a negative amount of memory free Since changing these pointers ruins any variables already in the top of memory it is essential to do it only at the beginning of the first pro gram module 1030 REM LOAD OBJECT PORTION IF HAVEN T 1040 IF PEEK 31232 lt gt 76 THEN POKE 53 122 POKE 49 122 DLOAD OBJECT CODE After resetting the memory pointers line 1040 loads the machine language portion from disk as a pro gram named object code Usually loading a new program destroys the old one but not this time Object code loads very high in memory beginning at location 31232 7A00 It will over write anything else up there such as Universal DOS support but no
221. ly compatible with Color Scripsit files though Scripsit can print an ASCII file to tape which can be read by the dictionary Documentation A 25 page manual is included that thoroughly explains the proper operation of the programs Information is also provided on modifying and creating new dictionaries No instructions were included foi removing words from the dictionary Skill level required With only a few minutes of study anyone should be able to operate the program MICRO Reviewer Jobn Steiner No 55 December 1982 E 1 i H t E H INICRO Software Catalog Name Data Tape Maker System OSI C1P Superboard II Memory 4K Language 8K BASIC in ROM Description Data Tape Maker is a relatively short program that allows you to save machine language code or any other data stored in con secutive memory locations in DATA statements on tape The sign space for each number is eliminated to allow for compact storage of data A FOR NEXT loop is automatic ally generated to restore the data into memory at a later time Price 4 00 for tape 3 00 for listing Author Brian Zupke Available B C Software 5152 Marcell Ave Cypress CA 90630 Name Air Navigation Trainer System Apple II or Apple II Plus Applesoft in ROM or Language Card Memory 48K Language Applesoft and Machine Language Hardware One disk drive DOS 3 3 and game paddles Description Air Navigation Trainer i
222. many others You can have as many named breakpoints as you wish in both ROM and RAM Some other features of the PTD 6502 include Fast subroutine execution Hex calculator converter e Hex ASCII memory dump Up to 16 machine lan guage cycle timers Ability to monitor specific labeled areas in memory while stepping Effective address Accessible monitor commands A documented mod ule for relocation of the PTD 6502 to virtually any loca tion source code supplied The debugging program shown on the monitor is a simple example it could be far more complex If you can think of it you can probably scan for it at 1000 instruc tions per second If you re a professional the PTD 6205 can pay for itself in the first few hours of use If you re a novice you ll soon be debugging like a pro ORDER PTD 6502 Debugger including DOS 3 3 Disk and instruction manual 49 95 Note that disk is not copy protected Order only one for each business or institution In Califor nia add 6 5 sales tax PTD 6502 requires Autostart ROM for fast breakpoint PIERODACTYL SOFTWARE 1452 Portland Ave Albany CA 94706 e 415 525 1605 MICRO The 6502 6809 Journal 101 WS Te Let Unique Data Systems help you raise your sights on AIM 65 applications with our versatile family of AIM support products Go for high quality with our ACE 100 Enclosure It accom modates the AIM 65 perfectly without m
223. ment and file editing extensive built in hi res graphics to aid in data analysis Professional quality Apple Requires Appt Apple Ill Requires Bus Educationa 106 Fairbanks Rd O ue onNICONe powerful data manipulation and numerical analysis system performs polynomial curve fitting numerical interpolation numerical integration numerical differentiation and statistical calculations using entire data file or selected subsets extensive built in hi res graphics mathematical data transformations plus averaging smoothing and tag iead data files interchangeable with OMNIPACK programs MICRO The 6502 6809 Journal Letterbox continued reading FORTH The advantages of single character operator tokens are three 1 as you acknowledge they cut down on typing time 2 they cut down on the physical size of the source so that more source can be fit into memory at once when undertaking nontrivial applications and 3 they speed up compilation by cutting down on the operator token search time Thank you for pointing out a better method of doing block moves in both FORTH and RPL In writing the bench marks I was primarily concerned about making sure that the FORTH and RPL versions were as close to identical in approach as possible so I missed seeing that the block m ve could be done more efficiently in the way you sug gest You may be interested to know though that the FORTH source you show for thi
224. mmand unit and combined the console with an ultrasonic receiver This allows wireless control at a dis tance like the ultrasonic hand held TV controller If you know the ultrasonic code used by BSR a few hardware mod ifications in your C1P will allow com puter generation of the same codes through an ultrasonic transducer to transmit to the command console Figure 1 shows the various com ponents of a single word of BSR code The code is binary with each bit represented by an 8 ms pattern of sound A bit with value 1 is sent as 4 ms of tone followed by 4 ms of silence A bit with value 0 is sent as 1 2 ms of tone followed by 6 8 ms of silence The data word begins with a 1 bit followed by five bits of data followed by five in verted bits of the same data and com pleted with 16 ms of tone and 24 ms of silence The tone itself is 40 KHz The five bit code for each control module and function is shown in table 1 A single latched output bit in the computer is all you need to transmit the code The C1P uses latched output bits to scan the keyboard and joysticks as well as drive a digital to analog con verter D A circuit However BASIC Figure 1 LOGIC 1 OR N LOGIC 0 EACH 8 ms BIT COMPRISES 4 ms TONE 4 ms SILENCE l f 1 2 ms TONE 6 8 rns SILENCE L AAL LOGIC 1 MESSAGE HEADER FIVE BINARY CODE BITS FIVE INVERTED CODE BITS 16 ms TONE L 2
225. n the pro to area of your C1P You can assemble the circuit on perfboard or solderless breadboard using wire wrap or any technique you prefer The circuit assembles in a straightforward manner In figure 1 the chips numbered U1 U5 refer to the components of our modifi cation all other U numbers refer to chips on your CIP The schematic does not show how to wire in SW1 SW4 SW1 SW4 are the mode slection switches each one should connect its associated line to ground We have not found it neces sary but good circuit design would dic tate that the lines SW1 SW4 should be pulled up to 5 by 3 3K pull up resistors Figure 1 does not show sup plying 5V and ground to all of the chips in the circuit All the chips used have the standard DIP power and ground pins For 14 pin packages all pins 7 should be wired to ground and all pins 14 should be supplied with 5V Once the circuit is assembled you must splice it onto your C1P Cut the trace running from U41 pin 23 to U40 pin 13 and the trace running from U42 pin 9 to U70 pin 2 Connect U25 pin 3 to Ul pin 1 Connect U41 pin 22 to U1 pin 9 and U41 pin 19 to U2 pin 2 Con nect U1 pin 6 to U41 pin 23 No 55 December 1982 We ll stop for a moment and ex plain what this part of the circuit does U25 pin 3 is VD5 and U41 pin 22 is VD6 the data bits that the circuit keys on to know whether to output modified video U41 pin 19 is VD7 Three gates of U1 and two gates of U2 per
226. nd Disk Controller Board for C2 4 8 simply plug in to your computer and give you instant access to over 49000 individually addressable pixels in up to 8 colors Your Hi Res screen can go from 32 x 16 alphanumerics to 256 x 192 point graphics in 11 software selectable modes The standard video of your computer is left intact so that none of your current software library is outmoded Use the graphics for Business Scientific Education or Gaming displays that were impossible columns handle 50 Hz European formats accomodate custom characters or character cell sizes larger or smaller than 8x8 and transparently access the screen to eliminate screen glitches In short the SEB 3 will meet any demands your system may place on it now and in the future The SEB 3 also supports an OSl style floppy disk interface which can handle two 5 or 8 drives Like all of the boards in the SEB series the SEB 3 simply plugs in to your machine there are absolutely NO hardware changes The SEB 3 is designed to replace your outmoded 540 board so you don t even lose a backplane slot Your keyboard input now also plugs into the SEB 3 load one of the software drivers and you re ready to go SEB 3 Assembled 259 00 Kit 220 00 Bare Board 59 00 Manual only 5 00 Installation of either board requires absolutely NO modification of your computer they just plug in Nor do they preclude your using any other OSI compatible
227. ne of the acclaimed HDE expansion components for you KIM SYM and AIM including RAM boards Disk Systems and Software like HDE Disk BASIC V1 1 Yes we also have diskettes For more information write to P O Box 924 Miller Place NY 11764 or Phone 516 744 6462 No 55 December 1982 MICRO The 6502 6809 Journal 73 Enhanced Video for OSI CIP by David Cantrell and Terry Terrance Add a screen blanker inverse upper case and dim character set to your Challenger Enhanced Video requires OSI C1P hardware modification By adding five chips and cutting only two traces you can add several features to your CIP video section There will be a trade off for these features how ever To keep the hardware and soft ware as simple as possible you lose lower case alphanumerics when these features are implemented But no soft ware support is necessary no cumber some POKEing and no software drivers to scroll a background screen because there isn t any You simply release your SHIFT LOCK key whenever you want to enter modified video Your machine s video will interpret lower case characters as modified video whenever this modification is enabled Since the rest of your machine simply sees lower case alphanumerics they can be put into strings and then simply PRINTed to the screen The video mod ification can be disabled with either a hardware or software switch The circuit keys on Video Data Bit 5 VD5 and
228. ner indicates the bit currently being altered 88 The key commands available for manipulating the cursor are as follows The indicated bit is set and the cursor is shifted A block char acter will be inserted at the former cursor position Q The indicated bit is cleared and the cursor is shifted A blank character will be inserted at the former cursor position H The cursor will move from its present position to its home po sition i e top left hand corner of display D The cursor will move down a row of the display FE The cursor will be shifted to the next bit without modifying the status of the previous bit ESC Return to BASIC CR Enter displayed character into character generator RAM at nominated position MICRO The 6502 6809 Journal by Colin Macauley UR A prompt for the number of a predefined character will be re quested This character will then be displayed and may be modified to form the basis of a new character Set bits will be indicated by a block and cleared bits will be blanked to allow for an enlarged graphical repre sentation of the character being created The cursor will be either a 1 or a 0 to enable the condition of that bit to be readily identified The 2K character generator may be saved on cassette using well known machine code save programs or used directly by an EPROM programmer Colin Macauley is a member of the firm
229. new Tutorials for all levels of expertice Beginners Flowchart for where do begin to Advanced Disk Analysis is included e TRACK SECTOR EDITOR An all new Track Sector Editor including the following features Read Write Insert Delete Search and impressive Print capabilities e DISK DIAGNOSTICS Checks such things as Drive Speed Diskette Media Reliability and Erasing Diskettes e HIGHEST RATED Best back up Program in Softalk Poll Rated 8 25 out of 10 e CONTINUAL UPDATES Available from Computer Applications and new listings on the source 69 95 Dealer and Disiributor Inquiries Invited An c MICRO WARE DIST INC quan Neva P 0 BOX 113 POMPTON PLAINS N J 07444 201 838 9027 No 55 December 198 INICRO Short Subjects VIC Jitter Fixer SuperPET Characters by David Malmberg by Terry M Peterson SuperPET Characters Terry M Peterson 8628 Edgehill Ct E Cerrito CA 94530 The SuperPET contains a 4K character generator ROM in place of the 2K ROM found in normal CBM 8032s The 4K ROM contains four character sets In addition to the two PET CBM charac ter sets found in the 2K ROM there are two new sets designed by Waterloo Computing Systems ASCII and APL The Waterloo ASCII character set is used in the SuperPET by all the Waterloo Micro languages except MicroAPL This article describes some of the features of the Waterloo
230. ng and saving the human Sa DATA 48 6 32 1 E population from abductors i 169 6 5 Turn your OSI into a real ar NS DATA Salig pd cade dirae SO SORE DID 24 95 C4PMF C8PDF 65 DATA 253 211 162 r DATA iz 248 96 169 254 141 Send for our FREE catalog e die oe We have what you want for Be DATA oe secu ess S FORTH 99 FULL 3 SCREEN EDITOR 19 242 ADVENTURE 19 SKYHAWK 8 TOUCH TYPING 19 IN TELLIGENT TERMINAL 24 THE WIZARD S CITY 12 UTILITIES and much more for the C1P to the C8PDF BID gi C Ge oh S4a1c 68 POKE 54816 1 312 259 3150 AURORA SOFTWARE 37 S Mitchell es Arlington Heights j Illinois 60005 n APPLE Ii PERIPHERAL DEVELOPERS Your complex function prototype requires the best wirewrap board available SPECTRUM SYSTEMS OSI Disk Users Double your disk storage capacity Without adding disk drives Now you can more than double your usable floppy disk storage capacity for a fraction of the cost of additional disk drives Modular Systems DiskDoubler is adouble density adapter that doubles the storage capacity of Fully Extended Wirewrap Protoboard Size 2 8 by 10 7 inch 2 layer PC EL E No 55 December 1982 each disk track The DiskDoubler plugs directly into an OSI disk interface board No changes to hardware or software are required The DiskDoubler increases total disk space under OS 65U to 550K under OS 65D to 473K for 8 inch floppies to 163K
231. nic compatible connector 64 95 79 95 Lazer Lower Case Plus with Character Set Plus 49 95 84 90 Lower Case Pius alone 39 95 59 95 Lazer Graphics Plus 99 95 159 95 Graphics Plus and Lower Case Plus 134 95 219 90 Computer Stop 16K Ram Board 69 95 149 95 Computer Stop Omnivision 80 Column board 129 95 295 00 Videx Video term with softswitch inverse character set and 80 column Visicalc preboot 295 00 450 00 Wizard BPO 16K buffered printer interface expandable to 32K 134 95 179 95 Wizard 80 80 column board 195 00 295 00 Lazer Pascal 29 95 39 95 Anix 1 0 34 95 49 95 Lazer Forth 44 95 59 95 D Tack 68000 board for the Apple II with 4K Ram 895 00 Lazer Model 32 16032 board for the Apple ll CALL 12 MICRO The 6502 6809 Journal Lisa 59 95 79 95 Lisa Educational Pak 79 95 119 95 Alien Ambush 19 95 29 95 Bandits 19 95 29 95 Cannonball Blitz 24 95 34 95 County Fair 19 95 29 95 Cranston Manor 24 95 34 95 Cyclod 19 95 29 95 David s Midnight Magic 24 95 34 95 Dosource 3 3 24 95 39 95 Dueling Digits 19 95 29 95 Falcons 21 95 29 95 Firebird 21 95 29 95 Foosball 19 95 29 95 Horizon V 25 95 34 95 Genetic Drift 19 95 29 95 Kabul Spy 24 95 34 95 Jelly Fish 19 95 29 95 Lemmings 19 95 29 95 Labyrinth 19 95 29 95 Mouskattack 24 95 34 95 Outpost 19 95 29 95 Red Alert 19 95 29 95 Pig Pen 24 95 34 95 Russki Duck 25 95 34 95 Minator 24 95 34 95 Track Attack 19 95 29 95 Thief 17 95 29 95 Space Quarks 19 95 29 95 Snack
232. nova by Ranks 10 Data Transformations Frequency Distribution Correlation Matrix 2 way Anova r Rho Tau Partial Correlation 3 Variable Regression 3 t Tests ANOVA II 150 00 Complete Analysis of Variance Package Analysis of Covariance Randomized Designs Repeated measures Designs Split Plot Designs 1 to 5 Factors 2 to 12 Levels Per Factor Equal N or Unequal N Anova Table Descriptive Statistics Marginal Means Cell Sums of Squares Data File Creation Data Review Edit Data Transformations File Cambinations All Interactions Tested High Resolution Mean Plots Bargraphs HSD REGRESS 99 95 Complete Multiple Regression Analysis Up to 25 Variables 300 Cases Variable Correlation Matrices Descriptive Statistics Predicted amp Residual Scores File Creation Regression on Any Subset of Variables Regression on Any Order of Variables Hi Res Scatterplot amp Residual Plot Keyboard or Disk Data Input Case x Case Variable x Variable Input Apple II 48K 1 or 2 Disk Drives 3 3 DOS ROM Applesoft Call 213 993 8536 to Order or Write HUMAN SYSTEMS DYNAMICS 9249 Reseda Blud Suite 107 Northridge CA 91324 VISA 41 NIE commodore EBENEN Squeeze for PET BASIC Program by Hans Hoogstraat This short routine removes the unnecessary spaces REMs and blank lines from a BASIC program It is relocatable and does not require maintaining two versions of the BASIC program SQUEEZE requires PE
233. nter out put port and uses normal Vic print commands 79 95 CARDRITER A light pen with 6 software programs includ ing a full screen drawing tablet a light pen instruction pro gram and some games 29 95 Cardette universal cassette interface for the Vic Allows any standard cassette player recorder to be used in place of the Vic Dattasette 29 95 We carry a full line of Vic 20 hardware and software We have a full line of other software including the exciting NEW SOFTSENSE LINE of Small Business or personal business programs SEND FOR OUR CATALOG P O Box 18765 Wichita KS 67218 Personal Checks Accepted Allow 3 Weeks or C O D Handling Charges 1 50 To Order ee ansis 316 684 9660 Prices Subject to Change without notice MIDNITE SOFTWARE GAZETTE PAPER Five years of service to the PET community The Independent U S magazine for users of Commodore brand computers EDITORS Jim and Eilen Strasma Sample issue free on request from 635 MAPLE MT ZION IL 62549 USA No 55 December 1982 MICRO The 6502 6809 Journal 49 stead You can see that this is exactly what the BASIC Line Delete program needs One other feature is that if the exact line number specified was found then the carry flag is set Otherwise as in our example here the carry flag will be cleared In the program if no last line number is specified a default number of FFFF 65535 decimal is specified No
234. nter cards to add intelligence 49 00 specify printer THE MIRROR FIRMWARE FOR NOVATION APPLE CAT 11 The Data Communication Handler ROM Emulates syntax of an other popular Apple Modem product with improvements Plugs directly on Apple CAT lI Board Supports Videx and Smarterm 80 column cards touch tone and rotary dial remote terminal voice toggle easy printer access and much more Ust 39 00 Introductory Price 29 00 DOUBLE DOS Plus A piggy back board that plugs into the disk controller card so that you can switch select between DOS 3 2 and DOS 3 3 DOUBLE DOS Plus requires APPLE DOS ROMS 39 00 MINI ROM BOARDS Place your 2K program on our Mini Rom Board Room for one 2716 EPROM Use in any slot but zero Only 34 95 96 MICRO The 6502 6809 Journal Were you ever frightened to carry your 574 floppies out of the security of your home or office tecause of thal flimsy plastic case you keep your discs in Store and carry 100 discs safely and securely Each disc pocket is surrounded 3y an inch of high density foam Inhibits crushing jarring summer s heat and winter s cold 100 disc 51 4 floppy carrying case 39 95 ea Dealer inquiries Invited Phone or mail orders accepted Check Money order MasterCard Visa For Shipping add 2 00 N Y State residents Add Sales Tax Product Design and Copynght c 1982 By Greg Carbonaro Unique Software Inc POST OFFICE BOX N
235. nterpreter GOTO GOSUB Checker requires Apple II with Applesoft In a previous article MICRO 43 101 I presented a short assembly language program for a utility that would display the bytes constituting a specified line in an Applesoft program That utility was constructed using eight machine language subroutines available in the Applesoft Interpreter and the Apple Monitor In this article I will use two of those routines LINGET and FNDLIN together with six others to construct a utility for checking the GOTO and GOSUB references in an Applesoft pro gram This utility does the useful task of going through an Applesoft program looking for GOTOs and GOSUBs When it finds one it searches the pro gram for the referenced line If the line does not exist it displays the offending statement with the line number in which it occurs To understand the assembly lan guage program presented here it is necessary only to understand the struc ture of an Applesoft line in RAM and the function of the eight Applesoft subroutines that are employed Of course it also helps to know a little about 6502 assembly language pro gramming but novices should not be deterred An Applesoft program line as it 26 exists as bytes in RAM consists of four consecutive parts 1 Two bytes containing the address of the following line low byte then high byte as usual 2 Two bytes containing the line num ber in hexadecimal 3 The t
236. nto the BASIC floating point routines and utility and debug code to link into the 68000 PROM monitor 113 sectors The above routines almost fill a standard Apple DOS 3 3 flop py We provide a second disk very nearly filled with various utility and demonstration programs SWIFTUS MAXIMUS Our last advertisement implied that we sold 8MHz boards to hackers and 12 5MHz boards to businesses That was sort of true because when that ad was written the 12 5MHz 68000 was a very expensive part list 332 ea Motorola has now dropped the price to 111 and we have adjusted our prices ac cordingly So now even hackers can afford a 12 5MHz 68000 board With we remind you absolutely zero wait states Swiftus maximus Do you know of any other microprocessor based product that can do a 32 bit add in 0 48 microseconds AN EDUCATIONAL BOARD If you want to learn how to program the 68000 at the assembly language level there is no better way than to have one disk full of demonstration programs and another disk full of machine readable anc user modifiable 68000 source code Those other educational boards have 4MHz clock signals even the one promoted as having a 6MHz CPU honest so we ll cai them slow learners They do not come with any significant amount of demo or utility software And they com municate with the host computer via RS 232 9600 baud max That s 1K byte sec Our board communicates over a parallel port with hardwa
237. ntroller is an Intel 8272 chip to provide single or double densi ty disk format 243K single density or 608K double density of disk storage on a single sided 8 drive A double sided drive pro vides 1 2 meg of storage DMA used with disk controller to unload CPU during block transfers from the disk drives Optional Centronics type parallel printer port com plete with 10 ft cable Optional Real Time Calendar Clock may be set or read using CALL function in high level languages Power requirements are only 5 volts at 1 4 amps Available with WORDSTAR for serial terminal systems INCLUDES CPM 2 2 D amp N 80 serial 695 D amp N 80 serial w Wordstar 870 D amp N 80 video 695 Option001 80 parallel printer and real time calendar clock D amp N 80 CPU BOARD OTHER OSI COMPATIBLE HARDWARE 10 CA10X Serial Printer Port 125 Compatible with OS 65U and OS 65D soft ware 10 CA9 Parallel Printer Port 175 Centronics standard parallel printer inter face with 10 ft flat cable BP 580 8 Slot Backplane 47 Assembied 8 slot backplane for OSI 48 pin buss 24MEM CM9 380 16MEM CM9 300 24MEM CM9F 530 16MEM CMSF 450 8MEM CM9 210 8MEM CM9F 360 BMEM CM9F 50 FL470 180 24K memory floppy contrdjler card sup ports up to 24K of 2114 memory chips and an OSI type floppy disk controller Available fully assembled and tested with 8 16 or 24K of memory with floppy con troller F Controller supports 2 drives Nee
238. o Digital Inc QUICK TRACE allows changes to the stack registers stopping conditions addresses to be displayed and output destinations for ali this information All this can be done in Singie Step mode while running Two optional display formats can show a sequence of operations at once Usually the information is given in four lines at the bottom of the screen QUICK TRACE is completely transparent to the program being traced it will not interfere with the stack program or I O QUICK TRACE is relocatable to any free part of memory Its output can be sent to any siot or to the screen QUICK TRACE is completely compatible with programs using Applesoft and Integer BASICs graphics and DOS Time dependent DOS operations can be bypassed It will display the graphics on the screen while QUICK TRACE is alive QUICK TRACE is a beautiful way to show the incredibly complex sequence of operations that 8 computer goes through in executing a program QUICK TRACE requires 3548 E00 bytes 14 pages of memory and some knowledge of machine language programming It will run on any Apple I or Appie II Plus computer and can be loaded from disk or tape It is supplied on disk with DOS 3 3 QUICKTRACE DEBUGGER Last address Last instruction FP 59 49 AA Top seven bytes of stack nu ST270 Al Accumulator X reg Y reg A AA X 99 Y 25 a Pu Contents ro Nextinstructon FPF AR 85 No 55 December 1982 Disass
239. o before It s so subtle that most OSlers do not notice it or pass it off as intercell spacing If C4 users are won dering why this effect can t be seen the effect is reversed on the C4 The first Figure 1 Schematic for Enhanced Video U25 3 U41 22 U41 19 U42 1 SW4 SW3 SW2 U42 9 U42 1 U42 7 U42 2 SW1 11 U42 2 C MICRO The 6502 6809 Journal No 55 December 198 dot is accentuated giving rise to bright vertical lines This minor problem wouldn t be worth mentioning except the timing defect that causes it must be fixed if we are to add our modified video Before you begin construction here are a few warnings Keep all wires as short and as direct as possible You ll be dealing with your video signal at RF frequencies You ll want to avoid re radiating your game of invaders all over your house and quite possibly to the neighbors too Do not substitute 74LSXX series components for 74XX series components or vice versa This circuit is carefully balanced regarding timing and current drive capabilities tampering will probably overheat all of the components in the circuit The parts list is short you will need Ul 74LS08 Quad 2 Input And Gates U2 U3 74LS00 Quad 2 Input Nand Gates U4 US 7474 Dual D Flip Flop Rl 150 Ohm resistor R2 5K Ohm potentiometer SW1 SW4 SPST switch Since there are five chips in the cir cuit it cannot be assembled i
240. o set the threshold 1080 D0 18 103 BNE INF3 CYCLE EIGHT TIMES DEF 1082 v y between digital zero and one to adjust 3082 85 14 103 LDA SETS RetOVER WORD e the chip to different technologies The 1084 E6 10 106 INC PNT INCREMENT POINTER feedback point of the output amplifier teenies HER tag E tous is accessible in pin 6 to include a filter 1080 38 109 INP2 SEC TEST FOR EUFFER FULL if desired Pins 3 4 and 11 provide ac 108D A5 12 110 LDA END he i it the ad 108F ES 10 111 SEC PNT cess to tne integrator to permit tne ad 1091 45 13 112 LDA END 1 dition of a syllabic filter The Motorola 1093 ES 11 113 SEC PNT 1 f 1095 E0 D4 114 BCS INFUT GO BACK FOR MORE 3417 works with a single supply 1097 4C 00 10 115 JMP DELTA END voltage and requires a 16 Khz clock in 109A A1 14 116 INP3 LDA BITS X DUMMY utate Lh 109CtA1 14 117 LDA BITS X DUMMY P P 109E A1 14 118 LDA K BITS X DUMMY The data sheet provides a full ex 1040 A1 14 119 LDA lt BITS X DUMMY planation of the theory of continuously 10A2 B5 14 120 LDA BITS X DUMMY iable delt dulati Il 1064 B5 14 121 LDA EITS X DUMMY variable delta modulation as well as a 1046 4C 6D 10 122 JMF INP1 CONTINUE variety of circuit information i ME 123 x 9 124 x 1049 125 x DUTFUT ROUTINE Hardware 1049 126 x mam 1049 127 x For reasons of simplicity and low 1049 49 00 128 OUTPUT LDA 0 CLOCK LOM 1048 8D 80 EF 129 STA DELR cost the unit described in this article 70 MICRO The 6502 6809 Journa
241. o sum it up the 64 offers considerably more graphics capa bilities than the Apple in this area and rivals the Atari 800 at a price that beats them both What exactly does the 64 do in the way of graphics I ve been studying a preliminary draft of the Commodore 64 Programmer s Reference Guide and have begun to learn about all the graphics on my own 64 The 64 has the following modes some of which can be mixed on the same screen 1 Standard character mode a ROM characters b Programmable RAM characters 2 Multicolor character mode both ROM and RAM 3 Extended background color mode both ROM and RAM 4 Standard bit map mode 320 x 200 resolution 5 Multicolor bit map mode 160 x 200 resolution 2 6 Sprites both standard and multi color modes Various blocks of memory and con trol registers are involved in pulling off all these different modes Screen mem ory consists of 1000 bytes normally located at 400 and these usually determine what characters will appear on the screen There is a character ROM which contains two complete character sets as on the PET and VIC Pointers may be altered so that custom characters can be set up in RAM Color memory which can t be moved is 54 1000 4 bit locations at D800 each corresponding to a location in screen memory Four bits is enough to code for sixteen different colors The VIC II uses the different bits of two control registers to select nearly all o
242. ocates both stacks in page one the parameter stack is the hardware stack and the return stack is an indexed sort of affair down below it Stack resident strings up to 60 charac ters long or so can be manipulated free ly without fear of crashing the machine and execution is brought to a con trolled halt if the 64 word stack entry limit is exceeded And on your last point under my version of FORTH a public domain version identifying itself simply as fig FORTH 1 0 which however in cludes such exotic facilities as double precision and floating point math IEEE 488 I O etc the following routine as timed with an actual watch takes 2 minutes and 40 seconds to execute TEST 30000 0 DO 6543 52 MOD DROP LOOP When the MOD is replaced with an other DROP it takes 14 seconds I leave you to draw your own conclusions Timothy Stryker Samurai Software P O Box 2902 Pompano Beach FL 33062 ANCRO Your opinions comments and criticisms can be aired in MICRO too Send mail to Letterbox MICRO P O Box 6502 Chelmsford MA 01824 CHRISTMAS SEASON SPECIALS Let ARK COMPUTING Make This Your Best Christmas Ever Super Fan II by R H Electronics 59 95 79 95 Applicard a high performance Z 80 card with 64K Ram complete with CP M 4 mhz 324 95 445 00 6 mhz 395 00 595 00 Microsoft Z 80 card with CP M and Microsoft Basic 2 mhz 269 95 395 00 Microtek Parallel Printer Interface complete with centro
243. ode and trans mits the appropriate tone sequence In line 450 ROL 13 places each com mand bit into the Carry bit of the 6502 79 status register and in line 460 BCC branches if the Carry bit is zero Subroutine LOGICI turns on the RTS line waits 4 ms turns off the RTS line and waits another 4 ms LOGICO waits 1 2 ms after turning on RTS and then waits 6 8 ms after turning off RTS The three timing subroutines MS4 MS1 2 and MS6 8 handle the precise waiting periods required by the other subroutines Each includes a DEX BNE loop that takes five clock cycles per iteration except that only four are used when BNE does not branch The prior LDX immediate in each case takes two cycles as does the following LDX im mediate in MS4 and MS6 8 These two routines then use three cycles to JMP to a routine called DELAY in the monitor ROM at FC91 Delay is a time delay loop that perhaps was included in ROM to aid in disk I O It appears in listing 2 and uses 1250 cycles per iteration with the number of repetitions controlled by the 6502 X register The RTS at the end takes an extra six cycles The difficulty with DELAY is that it wipes out not only the X and Y registers but also the Listing 4 Listing 5 16 PRINT Enter your CIF clack S X 546 2 4640000 5 PRINT rate as a decimal frac 7 SAVE ZO FRINT tion cf the standard 1 9 PRINT FRINT PRINT megahertz clock rate 10 F RIzOTO175 FRINT example 4 fast is 2
244. odification and features easy access two board add on space plus a3 x S x 17 anda 4 x 5 x 15 5 area for power supplies and other com ponents 186 00 Get high capability with Unique Data System s add on boards The UDS 1 00 Series Memory I O boards add up to 16K bytes of RAM memory or up to 48K bytes ROM PROM EPROM to your Rockwell AIM 65 You also get 20 independently programmable parallet O lines with an additional user dedicated 6522 VIA two independent RS 232 channels with 16 switch selectable baud rates 50 to 19 2K baud and a large on board prototyping area Prices start at 259 00 If you need to protect against RAM data loss the UDS 100B of fers an on board battery and charger switchover circuit 296 00 e Heighten your AIM 65 s communications range by adding the UDS 200 Modem board It features full compatibility with Belt System 103 type modems and can be plugged directly into a home telephone jack via a permissive mode DAA No need for a data jack or acoustic coupler The UDS 200 also has software selectable Autoanswer and Autodial capability with dial tone detector The modem interfaces via the AIM 65 expansion bus with the on board UART and baud rate generator eliminating the need for an RS 232 channel 278 00 The UDS 300 Wire Wrap board accepts all 300 600 900 IC sockets from 8 to 64 pins Its features include an intermeshed power distribution system and dual 44 pin card edge connectors for bus
245. of Callinan and Associates Patent Attorneys and a physicist He uses a modified OSI Superboard II and is interested in utility type programming He may be contacted at 39 Shoalhaven St Werribee Victoria 3030 Australia No 55 December 1982 Listing 1 Programmable Character Generator AR 55 1 29 38 4g 56 53 b 78 58 8 5 199 116 128 136 135 148 219 226 218 235 nm ta no O Oo Cn t Ut o4 P oc o cn t OO O ch a Ss o OC o Vi B BIOPBR BO PO BO DO C3 DATA72 138 72 157 EM LOAN ISR POUTINE nsu8359 F RXz1TO 32 FRINT NEXTA PRINT PROGRAMHABLE CHARACTER GENERATOR PRINT PRINT COFYRIGHT 1931 COLIN MACAULEY PRINT INFUT NO OF CHARACTERS IN GROUPS OF 16 A IF A 18 INT A 15 2200RA2256THEN 2 POKET1 162 sFQKE 12 2 FRINT INPUT CHARACTER DEFTH TO 16 B IFE 16THENGJ PRINT INPUT NEM CHARACTER SET N t8 IFMID GAS 1 1 2 Y THENI18 REM BLANK CHAR GEN RAM FO RXz 144T0819 1 zP KEX 32 NEXTX C 4143 FRINT INFUT CHARACTER NO IF ATHENI2d REM SET UP SCREEN B sUR d REM USR ROUTINE SAVES REGISTERS amp GETS CHAR FROM KEYDI Z USR Z M 0 WePEEK 216 REM CHECK WHICH KEY FRESSED REM g KEY IFUS 48THEN2692 Q 32 G0SUH488 sG0T0220 REM 1 KEY TFWS 49 THEN270 Q 161 G60SUB489 G0T0229 REM H KEY TFUS 72 THEN289 FOREY UC 21253448 UC PEEK CI L21 Uz Y E248 IFUC 161 THENE 49 POKEY Es Y 53415 G0T0229 REM D KEY IFW 68 THEN299 G05
246. of the cards And the brilliant way the Cardmaster programmed these games has taken out the effort and dis tractions but left in all the fun and challenge MA Only 34 95 for the Apple II at your computer store or GDA AMOSE 9748 Cozycroft Ave Chatsworth CA 91311 213 709 1202 By the Cardmaster original Cribbage and 4 Solitaire games Ona scale of to 10 these card stars rate a big 111 for sheer enjoyment and unmatched value Think ofit five of the Cardmaster s best games at the price you d expect to pay for just one It includes original Cribbage with your strategy against the Apple plus 4 Solitaire games Klondike the all time standard in 2 versions 1 or 3 cards at a time Picture Frame and the challenging Pyramid If y family like cards at all this is the one disk you mu VISA MASTERCARD accepted 2 00 shipping handing charge California residents add 6 2 sales tax Apple Il is a trademark of Apple Computer Inc THE PROWRITER COMETH And It Cometh On Like Gangbusters Evolution Its inevitable An eternal verity Just when you think you ve got it knocked and you re resting on your laurels some body comes along and makes a dinosaur out of you Witness what happened to the Centronics printer when the Epson MX 80 came along in 1981 And now witness what s happening to the MX 80 as the ProWriter cometh to be the foremost printer of the deca
247. okenized text of the line in which for example GOTO is represented by the token byte AB 4 The end of line token 00 The text of the line may consist of several statements In this case each statement except the last is followed by the end of statement token 3A which is the byte used as the ASCII by Peter J G Meyer final statement in the line is followed not by an end of statement token but by the end of line token For example suppose the program line 10 IF A 0 THEN GOSUB 120 ON B GOTO 340 560 is the first in a program It will normally occur at 0801 and be represented in RAM as shown in figure 1 Good programming style is simply knowing what you want to do and stating clearly how to do it In this case what we want to do is as follows For each line in the Applesoft program 1 Inspect the line for GOTOs AB tokens THENs C4 tokens and representation of the colon The GOSUBs BO tokens m o Figure 1 801 1A 08 pointer to next line 803 0A 00 10 in hexadecimal 805 AD 41 DO 30 809 C4 BO 31 32 30 3A 80F B4 42 AB 33 34 30 2C 35 36 30 IF A T1 THEN GOSUB 120 ON B GOTO 340 560 819 00 end of line token Listing 1 2 fricinieieteteeieieieieieteiekedeieteieioieinieieieteieieteieteseieteietesiniek 3 3 4 GOTO GOSUB CHECKER 5 6 BY PETER MEYER 7 5 8 APRIL 1982 9 10 q reeeieedeieieieieieieioeieieieieeintieiei
248. ola has been promoting its advanced microprocessor chip as a vehicle for large complex systems exclusively Now the 68000 does work well as the heart of big complex Systems But their promotional literature implies that one can only buiid big complex systems with the 68000 and that is dead wrong in our opinion Nevertheless the public that s you perception of the 68000 follows Motorola s line Big systems Complex systems Our boards are not complex and not necessarily big starting at 4K Our newsletter is subtitled The Journal of Simple 68000 Systems But since the public has become condi tioned to the 68000 as a vehicle for FORTRAN UNIX LISP PASCAL and SMALLTALK people naturally expect all these with our 595 starting price simple attached processor Wrong We wrote our last ad to understate the software we have available because we wanted to get rid of all those guys who want to run muiti user multi tasking UNIX on their Apple H and two floppy disks Running UNIX using two 143K floppies is well absurd The utilities alone require more than 5 megabytes of hard disk HERE S THE TRUTH We do have some very useful 68000 utility programs One of these wil provide in conjunct on with a suitable BASIC com piler such as PETSPEED Pet CBM or TASC Apple II a five to twelve times speedup of your BASIC program If you have read a serious compiler review you will have learned that compilers cannot speed up floating
249. ome of the features are automatic line numbering program merging and moving program seg ments t comes with a plastic keyboard overlay that contains most of Extended Color BASIC s commands Price 34 95 operate general ledger with built in receivables and payables Reports include general ledger month s jour nal balance sheet income statement aged receivables and payables receivable and payable detail and more Price 495 00 Includes operator s manual programs and sample company data Author Dan Sargent Available Great Divide Software 8060 W Woodard Dr Lakewood CO 80227 mE Woodhaven NY 11421 Name S C Macro Cross Assemblers 6800 6809 and Z 80 System Apple II or Apple II Plus Memory 48K RAM card version included Language Machine Hardware Disk drive Description You can easily develop programs for 6800 6809 or Z 80 computers with powerful macros conditional assembly 20 directives and 29 commands including a power ful EDIT command with 15 subcommands It allows very fast cycles of modification re assembly and testing Price 110 00 each Registered owners of the S C Macro Assembler pay 32 50 each Includes diskette with regular and RAM card versions 100 page manual Available S C Software Corporation P O Box 280300 2331 Gus Thomasson Suite 125 Dallas TX 75228 214 324 2050 Name GL PLUS System Apple III Memory
250. omputer expertise is best imparted in a journal that doesn t limit itself to one system or one chip or one operating system After all the whole industry is moving toward compatibility and we think that is a step in the right direction In light of that fact and as a result of all we ve learned about you and your interests from the survey as of next month i e with the January 1983 issue we will change MICRO s subtitle to Advancing Computer Knowledge We are in no way abandoning the 6502 or the 6809 or any of the specific systems we ve been covering We are instead making a statement about your technical exper tise your maturity and the industry s and our desire to move toward ever in creasing compatibility and wider pro liferation of advanced information and knowledge You the sophisticated user need your own A we hope it s MICRO JL perl Mary Grace Smith 7 GEMINI FOR PRINTER VALUE THAT S OUT OF THIS WORLD Over thirty years of down to earth experi ence as a precision parts manufacturer has enabled Star to produce the Gemini series of dot matrix printers a stellar combina tion of printer quality flexibility and reliabil _ ity And for a list price of nearly 25 less than the best selling competitor The Gemini 10 has a 10 carriage and the Gemini 15 a 1512 carriage Plus the Gemini 15 has the added capability of a bot tom paper feed In both models Gemini quality
251. ona TP 1 59 C ITOH TEC Starwriter F10 40CPS Printmaster F10 55CPS Prowriter 80 Col P Prowriter 80 Col S Prowriter 2 132 Col 1599 00 1399 00 132 fully configured 80 fully configured Call for other configurations Letter Quality 1049 00 iin 800 233 8950 IN PA CALL 717 387 9575 477 E THIRD 8T WILLIAMSPORT PA 17701 In stock items shipped same day you call No risk no deposit on C O D orders Pre paid orders receive free shipping within the continental United States with nowaiting period forcertified checks or money orders Add 3 minimum 3 00 shipping and handling on all C O D and Credit Card orders NV and PA residents add sales tax All items subject to availability and price change NOTE We stock manufacturer s and third party software for most ail computers on the market Call today for our new catalogue N O Lu E U Se IDE gt 10 For PET and CBM owners only This is just 1 of 20 pages of the newest and biggest Skyles catalog hot off the press We know you ll want this page in its full 8 2 x 10 splendor and another 19 pages of peripherals software and books that will make your PET or CBM computer even nicer to live with So if we missed sending you your very own copy within the last few weeks call us at 800 227 9998 unless you live in California in which case call 415 965 1735 From Skyles Electric Works th
252. onal needs of executives who are interested in learning how to make effective use of desktop computers Called The Computer Forum this educational institution will offer integrated courses soft ware selection continuing help and customized seminars to interested individuals and businesses Course offerings will include How to Make Computers Work for You Using Your Apple Programming in BASIC Data Bases Using Business Graphics The Electronic Spreadsheet Ad vanced VisiCalc Techniques and Management and Analysis Using VisiCalc The Forum has several class rooms one for each system Currently only the Apple room is fully equipped but plans call for an IBM PC room and possibly a XEROX room Sign up for the first schedule of courses has been brisk We wish the Forum much suc cess and hope that additional centers can be opened around the country AICRO Statement of ownership management etc required by the act of Congress of October 23 1962 of MICRO published monthly at Chelmsford Massachusetts for November 1982 The name and address of the publisher is MICRO INK 34 Chelmsford Street Chelmsford Massachusetts The President Editor in Chief is Robert M Tripp of Chelmsford Massachusetts The owner is THE COMPUTERIST Chelmsford Massachusetts and the names and addresses of stockholders owning or holding one percent or more of the total amount of stock are Robert M Tripp and Donna M Tripp of Chelmsford Massachusetts
253. or line number printing Statements begin parsing in line 34 ASCII characters are restored for print ing but control characters are upper case between vertical bars Source code rubouts are included to fill out lines in certain programs Token parsing begins at line 39 with a test for unused tokens The added space to the gather string at line 40 prevents a crash during a binary code test a rare condition but it was found in two listings Three programs were found with a FOR loop starting on an IF true condi tion Line 42 solves indenting and restoration on this rare case Integer normally executes only one IF true condition but apparently a FOR loop will execute until completed Two or More Iterators The printout indent restoration of statements such as NEXT J K is solved by the search routine in lines 45 to 49 Of several comma tokens only decimal value 90 is the comma in a multiple variable NEXT statement This search and find will restore global indenting of FOR loops It can also be patched into the original LISZTER to solve an oversight Numbers Following You Some tokens allow following numeric constants Integer BASIC flags a numeric constant with a BO to B9 prefix ASCII numbers 0 to 9 The test in lines 51 and 52 check for token and prefix ignoring the prefix if it exists Line 53 builds the numeric constant string and gathers it in G Flow must return to line 34 afterwards The next byte can b
254. ored in high memory where they will chain correctly To do this we concatenate a null string to each literal string in the program as shown at the end of line 1880 If we didn t add the null string BASIC would save space by pointing variable PO at its original memory location in line 1880 After chaining this location would likely contain MAE SOFTWARE DEVELOPMENT SYSTEM FOR PET APPLE ATARI The Compatible Assembler Professional system for development of Machine Lan guage Programs 31 Characters per label Macro Assembler Text Editor for Disk based systems ncludes Word Processor for preparation of Manuals etc Standard Mnemonics Ex LDA LABEL Y Conditional Assembly Interactive Assembly Editor has string search search and replace auto line numbering move copy delete uc lc capability Relocating Loader to relocate object medules esigned with Human Factors Considerations 169 95 FLASH EHS Management has decided ta allow 50 00 credit to ASM TED owners who want to upgrade to MAE To get this credit return ASM TED manual with order for MAE ATARI AND PET EPROM PROGRAMMER Programs 2716 and 2532 EPROMs Includes hardware and software PET 75 00 ATARI includes sophisticated machine language monitor EMEZE 119 95 MICRO The 6502 6809 Journal something quite different and the string would be ruined Adding the null string forces it into high memory where it is s
255. ote that they are routines that any BASIC interpreter must have VIC 20 owners shouldn t feel left out either Even though the program is in machine language the VIC 20 can No 55 December 1982 still use it simply by employing a BASIC loader that POKEs the required data into memory I will present a pro gram to do this later in the article Even if you don t want or need a BASIC Line Delete you may want to look over the program description any way Several interesting routines are presented that could be put to other uses In addition you may want to see how the program implements error checking and apply it to your own work Format of the New Command To get a feel for how the program works let s examine how it should look to the user The lt sign in dicates the function although other keys could be used by making one small change in the program As men tioned before the format is identical to that used for the LIST command Let s summarize all proper uses of the BASIC Line Delete Proper Improper 100 200 lt 100 lt lt 200 lt 100 lt vid etc The first statement under proper syn tax will delete lines 100 through 200 inclusive The second one will delete all statements from 100 on The last one will delete all statements up to line 200 inclusive And just like the LIST command there doesn t have to be any line number 100 or 200 for this to work Suppose the first line number past 90
256. ournal For reasons that make sense only to Commodore Fat 40 s the 4016 and 4032 with 12 monitor are adjusted on the assembly line so that printing CHR 14 zooms the top and bottom lines off the screen The IF test in line 1090 prevents this However there is also a hardware fix On the underside of the video display board is a hole labeled height Your dealer can adjust your display in about 30 seconds to restore the lost top and bottom lines per manently If you do it yourself remem ber that metal screwdrivers are good conductors and the video board carries 10 000 volts One slip could do more than violate your warranty The CHR 14 is especially needed by 80 column models If you leave it out and the machine was previously in graphic mode lines will appear squished together The matching lines to enable the graphic character set are 1070 REM SET GRAPHIC MODE 1080 POKE 59468 12 1090 PRINT CHR 142 Leaving out the CHR 142 on 80 column models leaves them with a venetian blind effect separating lines of graphic characters No Fat 40 fix is needed this time Line 1080 should still be omitted on the VIC Always establish one character set or the other at the start of any program package CBM models start up in text mode but PET models start in graphic mode Initialization At this point the machine is ready The machine language portion is in and protected The file pointers have been set for successf
257. ow one to see how the Color Com puter actually works Tenny Ralph Extra Tricks with Color Scripsit pg 84 85 An accessory listing to aid in using Color Scripsit Aldrich F C Magic Square pg 87 89 A contest winning listing for the 6809 based Color Computer 87 68 Micro Journal 4 Issue 8 August 1982 Anderson Ronald W FLEX User Notes pg 11 14 Miscellaneous notes on FLEX for the 6809 based systems In cludes a multiply program in assembly language Nay Robert L COLOR User Notes pg 14 16 Discussion of some new items for the 6809 based Color Computer Abrams Clayton W F Mate pg 16 17 A utilities package for the TRS 80 Color Computer Distefano Tony Color Clinic pg 17 18 Discussion of hardware modifications for the TRS 80 Color Computer Commo Norm C User Notes pg 19 24 Discussion of major C compilers for 6809 systems Watson Ernest Steve Home Accounting Program Part I pg 25 28 A program for 6809 systems Hartman William Diskfix9 pg 29 36 A utility for 6809 based systems 88 The Rainbow 2 No 2 August 1982 Nolan Bill Let s Call JOYIN To Learn ROM Call Technique pg 8 A short program illustrating how to call one of the built in ROM routines in the TRS 80 Color Computer Lishnak Pat Sort Numeric Arrays Fast with Machine Language pg 9 A bubble sort technique for the Color Computer 108 MI
258. ower of structured logic at a fraction of the cost of PASCAL 35 Disk Appiesoft 148K ROM or Language Card OSA OS 1s a dis assembler for 6502 code Now you can easily dis assemble any machine language program for the Apple and use the dis assembled code directly as input to your assembler Dis asserrbles instructions and data Produces code com patible with the S C Assembler version 4 0 Apple s Toolkit assembler and others 25 Disk Applesoft 32K ROM or Language Card FORM DS is a complete system tor tne definition of input and output froms FORM DS supplies the automatic checking ot nurnenc inout ior acceptable range of values automatic formatting of numeric output and many more features 25 Disk Applesoft 32K ROM or Language Card UTIL DS is a set of routines for use with Applesatt to format numeric output selec tively clear variables Applesoft s CLEAR gets everything improve error handling and interface machine language with Applescft programs Incluces a special load routine for placing machine language routines underneath Applesoft programs 25 Disk Applesoft SPEED DS is a routine to modify the statement linkage in an Applesoft program to speed its execution Improvements of 5 209e are common As a bonus SPEED DS includes machine language routines to speed sting handling and reduce the need fo garbage clean up Author Lee Meador 15 Disk Applesoft 32K ROM or Language C rd Add 4 00 for Foreign Mail
259. p req d Apple II or Apple II Plus Price 29 95 Manufacturer Insoft 10175 Barbur Blvd Suite 202B Portland OR 97219 Author Paul Lutus Copy Protection Yes Language 6502 Assembly Description A software only music synthesis system for generating 2 part music on an Apple with no additional hardware required 100 MICRO The 6502 6809 Journal Pluses An external speaker can be used to improve fidelity via the cassette port The package includes a music editor for constructing tunes with several sample tunes A com bined display allows for the simultaneous entering and playing of music Entered scores can be transposed both in key and in tempo Each note played may have one of four voices Notes can be entered either into an editor or played directly from the keyboard Then the music can be incor porated directly into user programs The storage format of the music is described for the more advanced programmer who may wish to access the binary score directly Minuses The manual is brief 17 pages but complete Although the author has permitted the user to play music directly from the Apple keyboard using the upper row of keys for one note and the lower for the other I personally found this feature awkward to use The editor is much more complete for entering music from the keyboard As mentioned in the manual it is included only for familiari zation Deletion of a line using the music editor is not a single stroke comm
260. paper is not the 1l inch variety common in the U S change line 350 to adjust the lines printed per page to your needs To better explain its workings the program as printed here is heavily com mented and uses fewer multiple state ment lines than it could Feel free to omit remark statements and lines con taining only a colon none is referenced by other lines You may also be able to combine some lines For example the subroutine beginning in line 460 could be reduced to four lines Likewise the spaces that are not within quotation marks may safely be left out However you may find it better to leave the pro gram as listed here and compile it In the interest of speeding up the program often used constants are re placed by variables seldom used lines are moved to the end of the listing and disk status is left unchecked once the needed files are successfully opened If you notice that the program seems to have halted with the disk error light on hit the stop key and check the disk status in immediate mode ds Most likely the error will be fatal and you will have to start over again after correcting the problem The program uses only a few special characters In lines 670 730 740 780 and 790 notice the three equal signs in a row These represent three cursor left characters These charac ters place the flashing input cursor over a likely default answer They also pro tect the user from accidentally
261. pe replace the 08 with an 01 The number in the title is the SYS number Suppose you are using the program at the start of a session from a cold start First LOAD the program in the normal way just like a BASIC program There is no need to load it from the monitor the CBM 8032 knows where to put it Next type NEW and hit return This step is important since it resets some pointers previously disarrayed by the LOAD command Now type SYS32594 and hit return The BASIC Line Delete is now ac tivated The top of memory pointers are automatically lowered to protect it You are now free to call up the function whenever desired This program is very relocatable If you decide to put it somewhere else in memory only locations 7F57 and 7F5D need be changed These two bytes form the address of the CHRGET No 55 December 1982 Add on starting at 7F63 in this case Everything else remains the same This is due to extensive use of relative ad dressing there are no internal JSR or JMP commands to be altered Simply transfer the program change the two bytes mentioned and run it using the new SYS address VIC 20 owners need a different way to get the program into memory since the VIC has no resident machine language monitor Figure 3 shows a loader program that will enter an equivalent BASIC Line Delete into memory Note that this loader is com pletely automatic since it not only loads the program but also instan
262. point operations especially transcendentals Our board and the utility soft ware we provide does speed up those operations Add this line in front of an Applesoft program 5 PRINT CHR 4 BLOADUTIL4 A 8600 SY S38383 That s all it takes to link our board into Applesoft assuming you have Applesoft loaded into a 16K RAM card Now run your program as is for faster number crunch ng or compile it to add the benefit of faster interpretation Operation with the Pet CBM is similar 68000 SOURCE CODE For Apple I users only we provide a nearly full disk of un protected 68000 source code To use it you will have to have DOS toolkit 75 and ASSEM68K 95 both available from third parties Here s what you get 1 68000 source code for our Microsoft compatible floating point package including LOG EXP SQR SIN COS TAN ATN along with the basic four functions The code is set up to work either linked into BASIC or with our developmental HALGOL language 85 sectors Apple Applesoft and Apple Il are trademarks of Apple Computer Company Pet is a trademark of Commodore Business Machines MICRO The 6502 6809 Journal 2 68000 source code for the PROM monitor 35 sectors 3 68000 source code for a very high speed interactive 3 D graphics demo 115 sectors 4 68000 source code for the HALGOL threaded interpreter Works with the 68000 floating point package 56 sectors 5 6502 source code for the utilities to link i
263. r C P A and Individuals For just 24 75 per disk post paid in 3 3 DOS 16 Sector disks Programs are designed for easy use with check points to correct parts as needed Results on screen FEATURES Menu Driven 70 Tax Programs Basic Unlocked Listable Name SS No FS carried over for checking before printing Inputs can be checked Inputs can be changed L R S approved REVPROC format Prints entire Form Schedule Calculates Taxes etc In 3 3 DOS 16 Sector Fast calculations Use GREENBAR in triplicate don t change paper all season Our 4th Year in Tax Programs 14 We back up our Programs No 55 December 1982 GOOTH TAX PROGRAMS 931 So Bemiston e St Louis Mo 63105 In all there are more than 70 individual Tax Programs These include Form 1040 1040A 1040EZ 1120 11208 1041 and 1065 Also Schedules A B C D E F G R RP and SE And Forms 1116 2106 2119 2210 2440 3468 3903 4255 4562 4797 4835 4972 5695 6251 and 6252 And we have a disk we call THE TAX PREPARER S HELPER which has programs for INCOME STATE MENTS RENTAL STATEMENTS SUPPORTING STATE MENTS IRA ACRS 1040 ES ADD W 2 s and PRINT W 25 TRY ONE DISK AND SEE FOR YOURSELF ONLY 24 75 POSTPAID First disk is AP 1 and includes Form 1040 and Schedules A B C D and G 24 75 POSTPAID Write MICRO The 6502 6809 Journal en commodore EN ful
264. r limits and stores the result at INDEX INDEX will be used as the current position in the array of the binary search Now SEARCHLP takes the current value of the INDEX field and multiplies it by three JSR BY3 placing the result in LOWTR This is done because each string element in the array has a three byte entry in the array descriptor a No 55 December 1987 length byte followed by a two byte address To find the displacement of the individual element s entry from the base address of the array s descriptor it is necessary to multiply INDEX by three LOWTR is then added to the base address of the array s descriptor SAVARRAY the result is stored back in LOWTR The length of the searched element is then found and saved in ARRAYLN lines 88 through 89 The seven byte Y index value is needed because the individual string array en tries start seven bytes from the begin ning of the array descriptor in any one dimensional array The X register will be used as the number of bytes left in the array element and string variable to compare It is initialized to the lower of the VARLN and ARRAYLN internal parameters lines 90 through 94 Next the address of the array ele ment is found and placed in LOWTR lines 95 through 104 The compare loop COMPLP then compares the ar ray element to the string variable byte for byte up to the length of the shortest of the two elements using the X register as a counter If the s
265. rack operation Add it to your present drive for greater capacity and faster access Just plug it in and go to work And the Apple Mate has these High Performance advantages ON TRACK HEAD SEEK A precision lead screw positions the head onto the correct track Time consuming retries and disk to disk copying errors are virtually eliminated SIEMENS DISK DRIVE The apple beige unit is built around the highly reliable Special Introductory Price 335 00 B Apple is a registered trademark of Apple Computer Inc Siemens is a trademark of Siemens Corporation Apple Mate is a trademark of Quentin Research Inc which does not manufacture Apple computers Siemens system with over 10 000 lifetime hours Shielded connecting cable also attached LONG TERM DEPENDABILITY MTBF Mean Time Between Failures 8 500 power on hours and the unit has a one year warranty COUNT ON QUENTIN FOR QUALITY Quentin Research was building disk systems for the computer industry when Apple was a little bud on the big computer tree We re known for product reliabil ity and stand behind every system we sell you But the best news may be the price only 335 00 40 tracks A special introductory offer when you order Apple Mate directly from us So when you re ready to boost the juice on your Apple add on the Quentin Apple Mate To order Check money order Visa or Mastercard number Calif residents add 6 sales tax
266. re AND software handshake at 71K bytes sec We ll call those other boards handicapped learners Our board s definitely not for everyone But some people find it very very useful Which group do you fit into DIGITAL ACOUSTICS 1415 E McFadden Ste F Santa Ana CA 92705 714 835 4884 No 55 December 189 ot ttt tete S ST MINA AR WAREN re tater up Vif es 68000 Logic Instructions by Joe Hootman This is the third in a series of articles on programming the 68000 Professor Hootman is presenting the instruction set of the 68000 microprocessor and will then consider the addressing modes and how they apply to the various instructions This month s topic is the logical instructions The logic instructions implemented in the 68000 are given in table 1 These instructions are the AND the OR the NOT and the EOR The implementa tion of the logical operations is straightforward The logic operations affect the CCR depending on the results of the operation It should be noted that the logical operations do not operate on the address registers directly The logic operations on the status register are privileged Logical opera tions on the user condition code register are not privileged Joe Hootman can be contacted at the University of North Dakota Department of Electrical Engineering University Station Grand Forks North Dakota 58202 No 55 December 1982 Table 1 Logic Instruc
267. refully designed se quential preparation for frac tions and algebraic expres sions A tutorial and practice program precedes six moti vating and interactive enrich ment programs Price 90 00 Includes diskettes or tapes and a teacher s guide Author Joanne Benton Available Quality Educational Designs P O Box 12486 Portland OR 97212 Name Android Attack System Atari 400 800 Memory 16K cassette 32K disk Language Hybrid Hardware Cassette or disk system Description The nuclear re actor in our top secret under ground lab is in danger of melting down Only you can save it by manually releasing 104 the coolant water Unfor tunately there isn t time to disarm the security Androids guarding the installation so you ll have to fight your way down Once you ve released the water you ve got to get back out before you drown Android Attack has electric robots and walls bonus points and up to eight different levels to challenge you Price 18 95 plus 2 shipping Mail order price Author John Wilson Available Pretzelland Software 2005 D Whittaker Rd Ypsilanti MI 48197 313 483 7358 or local dealers Name The Last One System Apple II Plus Memory 48K Language BASIC Machine Hardware Two disk drives printer optional Description The Last One is a computer program code gener ator that designs a program and enters flowchart type state ments in an easy to use menu style The
268. rence since I m sure these routines have many more valuable uses The routine at B8F6 will get an in teger from the screen The CHRGET routine at 70 is called first and this causes locations 77 and 78 to point to the start of the integer which is in ASCII After a JSR B8F6 the ASCII representation is converted to a binary form and the result is deposited in loca tions 11 and 12 low byte and high byte respectively If 77 and 78 point to the sign as in the command 200 the subroutine will return finding routine is its ability to adapt to non existent line numbers For exam ple suppose you tell it to find line 100 but no such number exists in your pro gram However your program does contain a statement with line number 110 When you call the routine it will look for number 100 and won t find it But it will continue to look for the first line number beyond 100 in this case 110 and return with its address in The w P SENSE A CARDC Products For the Vic 209 VIC 20 is a registered trademark of Commodore CARDBOARD 6 Expand your Vic 20 to accept 6 game cartridges or an additional 35K of RAM memory Until De cember 15 1982 a SPECIAL CHRISTMAS PRICE 79 95 thereafter 99 95 CARDBOARD 3 An economy memory expanderto 35KAM or 3 game cartridges 29 95 CARDPRINT Printer interface Vic to Centronics type parallel input printer This unit uses the regular Vic pri
269. ried Adventure before and want to start out real easy DERELICT by Rodger Olsen amp Bob Anderson New winner in the toughest adventure from Aardvark sweepstakes This one takes place on an alien ship that has been deserted for a thousand years and is still dangerous Please specify system on all orders SINCLAIR TIMEX TUBE FRENZY by Dave Edson This is an almost indescribably fast action arcade game t has fast action an all new concept in play simple rules and 63 levels of difficulty All machine code requires Joysticks Another great game by Dave Edson TRS 80 COLOR ONLY 16k and Joysticks required 19 95 CATCH EM by Dave Edson One of our simplest fastest funnest ail machine code arcade games Raindrops and an incredibe variety of other things come falling down on your head Use the Joy sticks to Catch em It s a BALL and a flying saucer and a Flying Yl and so on TRS 80 COLOR 19 95 BASIC THAT ZOOOMMS AT LAST AN AFFORDABLE COMPILER The compiler allows you to write yout programs in easy BASIC and then auto matically generates a machine code equiv alent that runs 50 to 150 times faster It does have some limitations It takes a least 8k of RAM to run the compiler and i does only support a subset of BASIC about 20 commands including FOR NEXT END GOSUB GOTO IF THEN RETURN END PRINT STOP USR X PEEK POKE gt C 72 VARIABLE NAMES A Z SUBSCRIPTED
270. ription UniFLEX is a true multi tasking multi user operating system Each user communicates with the system through a terminal and may execute any of the available system programs This implies that one user may be running the text editor while another is running BASIC while still another is running the C compiler Not only may different users run different programs simultane ously but one user may be running several programs at a time Price 550 00 Includes UniFLEX Operating System documentation Author Technical Systems Consultants Inc Available Gimix Inc 1337 W 37th St Chicago IL 60609 312 927 5510 Price 99 95 Sinclair tape 129 95 Apple Atari disk 129 95 Atari tape Includes 34 pages of documentation Author Bob Nadler Available F 22 Press P O Box 141 Leonia NJ 07605 Name Lovers or Strangers System Apple II Memory 48K Language Applesoft Hardware One disk drive Description Lovers or Strangers is a computer game with a serious side It is a com patiblity evaluator that tells two people how likely they are to have a successful relation ship A couple s likes and dislikes philosophies and lifestyles in seven major areas of compatibility are explored No 55 December 1982 Price 29 95 Includes program disk and written instructions Author Stanley Crane Available Alpine Software Inc 2120 Academy Circle Suite E Colorado Springs CO 80909 303 591 9874
271. rmulas easi E respect to the Earth Measurement of a 35m J hardware to measure the ac uracy and repeatability of a focal plane shutte commonly polynomial equation th 20 OFF More MICRO for Less Money When You Subscribe Your money goes farther when you sub But on the newsstand if you can locate the scribe During the course of a year when you issue you want you pay 30 00 a year 2 50 subscribe you save 20 in the U S a copy Pay only 24 00 2 00 a copy for 12 monthly Special Offer Subscribe for 2 years 42 00 issues of MICRO sent directly to your home or and get 30 off the single issue price office inthe Uis Subscribe to MICRO today MICRO 34 Chelmsford Stree P O Box 6502 Chelmsford MA 01824 Please send me M LR 4 4 yea NOTE Airmail subscrip ong acce Check enclosed Osis my No Expiration date Name Address __ l I I I I l l I I l l i l l l l l I ERR City State MM A enm tun a dmm qub Cum um aU fem peo Soup uu ai s iuum m um 112 MICRO The 6502 6809 Journal No 55 December 1982 When you re tired upset bored in need of a chal lenge or just relief from the ordinary there s nothing to com pare with the fun and involvement of Solitaire or Cribbage Within seconds you ve forgotton the world and are absorbed in the play
272. rocomputer and a high resolution dot matrix printer becomes a versatile data acquisition system the universal instrument refer red to in the first article in this series MICRO 53 53 This combination can be used effectively and inexpensively to solve many laboratory measurement problems The two types of A D converters which have been widely used in the Rochester program both employ a pulse width technique for data conver sion even though one is used to measure voltage and the other resis tance Each device upon command from the computer a trigger pulse begins a timing cycle the length of which is proportional to the magnitude of the applied analog signal At the end of the cycle the converter signals the MICRO The 6502 6809 Journal computer that conversion is complete end of conversion EOC The computer is programmed to measure the length of the timing cycle by repeatedly incrementing the micro processor index registers until the EOC signal is received The microprocessor requires a fixed number of machine cycles to run through the program loop in which it tests for EOC and incre ments the index registers Since these cycles are accurately timed by the in ternal crystal oscillator the count ac cumulated in the index registers is pro portional to the elapsed time By suitable calibration this count can be converted to the desired data format and the measurement is complete Typical resolution can ran
273. s printers VIC PRODUCTS VIC 20 Computer 5K Vic Datasette Recorder Vic 1541 Disk Drive VIC MODEM for CBM 64 VIC 1525 Graphic Printer for CBM 64 8K Memory Expansion Cartridge IEEE Interface VIC Gorf great arcade game Omega Race Midnight Drive VIC 3 slot Expander VIC 6 slot Expander Cosmic Cruncher Arcade Joysticks Heavy duty with 2 ai buttons Great for the VIC or 64 SuperPET 5 languages 2 processors CBM 8032 Computer 80 column CBM Memory Expansion 64K PET 4032 40 Column CBM 8050 1 Mg Dual Drive CBM D9060 5 Mg Hard Disk CBM 09090 7 5 Mg Hard Disk CBM 4040 340K Oua Drive CBM 2031 170K Single Drive PRINTERS LETTER QUA CBM 8300 40cps A Diablo 620 25cps P Nec Spinwriter 7700 55cps m Nec Spinwriter 3500 356pS teaei r ee PRINTERS DOT MATRIX CBM 4022 80cps graphics CBM 8023 150 cps graphics Okidata 82A 120cpsiserial or par 2 0 00 0 00 Nec 8023A parailel PB SUE Hours M F 8106 Sat 10 to 2 214 343 1328 Prices are subject to change without notice AA MICRO The 6502 6809 Journal No 55 December 19 1 aliento INICRO Apple Slices By Tim Osborn One of the fastest techniques that lets you search for a specific occurrence of an item within a sorted set is the binary search This month s column presents a subroutine BINARY SEARCH that you may call from your BASIC pro grams to perform a binary search on a sorted
274. s a real time simula tion of aircraft navigation with hi res instrumentation and ground track map sound ef fects including station IDs dial in wind magnitude and direction four different simu lations dual independent VORs VHF Omnirange Radar with adjustable OBS just like the real thing ADF NDBs and more Price 40 00 Includes program diskette and full documentation Not for pilots only Author Ken Winograd Available Space Time Associates 20 39 Country Club Drive Manchester NH 03102 603 625 1094 No 55 December 1982 Name Spellmaster ProofReading Software CBM 8032 CBM 8096 SuperPET Commodore 64 Memory 32K minimum Language Assembly 6502 Description Spellmaster iden tifies and allows correction of misspellings from wordproces sing text It has a 40 000 word Capacity on the CBM 8050 Suspect words are displayed on screen and direct screen editing of mistakes is pro vided Available for WordPro Wordcraft Silicon Office It will proofread a large WordPro file in two minutes or less Legal and medical dictionaries are available for 75 Price 199 00 Author Dwight Huff and Joe Spatafora Available Spellmaster Systems Software 6219 13th Avenue South Gulfport FL 33707 813 347 6733 System Rail Runner TRS 80 Color Computer or TDP System 100 Memory 16K Language Assembly Hardware Cassette or disk Description Your railroad engineer must scurry over the track of
275. s for small temperature differences Unfortunately the response is highly non linear and the response characteristics tend to be non uniform even among thermistors of the same kind These properties make it difficult and expensive to reduce thermistor output to tempera ture with analog hardware Using a microcomputer with the 555 timer A D on the other hand you can easily handle these complex relationships with appropriate software modifications Light Intensity Measurement Another property commonly meas ured in laboratories is light intensity In chemical laboratories this measure ment is usually made with commer cially available instrumentation equip ped with photocells or photomultiplier MICRO The 6502 6809 Journal tubes e g colorimeters and spectro photometers It has proven to be easy to use either the QM 100 or the 555 converter to interface the micro computer to such optical instruments In fact inexpensive colorimeters based on a 555 timer photoresistor circuit can be built to almost any geometry re quired by an intended application For photomultiplier equipped spec trophotometers where the output sig nal is a current a simple circuit can be used to convert the transducer output to a voltages A typical example of a current to voltage converter circuit is shown in figure 4 Once a voltage is available the procedure for using the QM 100 is the same as described above A major use of this typ
276. s only 130 bytes of program space The corresponding RPL routine is TONE 0 59464 POKE 16 59467 POKE 170 59466 POKE 20 256 FOR LOOP FN 0 lt IF FN 59464 POKE 256 THEN LOOP GOTO END NEXT 0 59466 RETURN which requires 83 bytes of storage and executes in 3338 jiffies The resulting merit ratio of 1 62 to 1 represents a con siderable improvement You were right incidentally not to condense the leading POKEs of 59467 and 59466 into a single store the order of the POKEs into those 6522 VIA registers makes a big difference On to Mr Weisling s letter Pro grammers who are bothered by the necessity of suffixing their subroutine references with an ampersand in RPL are free to eliminate the space separating the two and thereby regard the composite SUBRNAME amp as just a one keystroke longer method of in voking the routine You doubt that this is memory efficient Please find out for certain by way of the following pro cedure take any nontrivial FORTH ap plication program to which you have access and count up the number of occurrences of A invocations of the thirty or forty real low level FORTH primitives such as DUP IF DO Q and things of that nature including but not including J BJ references to literal numeric quan tities whether CONSTANT S or not it does not matter which fall in the range from 0 to 63 C references to literal numeric quantities
277. s routine yields an execu tion jiffy count of 717 considerably in excess of the 591 given for FORTH in the article The reason Your use of the composite l operator in the innermost loop When the sequence 1 is substituted for this the ex ecution time falls to 584 jiffies Spaces as you note in your letter are important in FORTH one might even say alarm ingly so They make no difference in RPL Unfortunately the use of even the sped up form of your block move algo rithm does not change the standings FORTH requires 84 program bytes to do it in 584 jiffies whereas the follow ing RPL equivalent BLKM FOR PEEK FN POKE 1 NEXT RETURN requires only 52 bytes to do it in 508 a merit ratio of 1 85 to 1 Now there seems to be some con fusion in your letter regarding various aspects of the SHUFFLER benchmark To begin with there are no typos any where in the article The MOD routine is as stated internal to the RND routine I used This RND routine modeled after that available under MMSFORTH expects an integer passed to it on the stack and returns a random number in the range from 0 up to that integer minus 1 hence the MOD Moving on to your comments re garding the third benchmark you are right There was no need for me to in troduce unstructured code in this case No 55 December 1982 The new FORTH TONE routine you exhibit takes only 3465 jiffies and re quire
278. so but for example wherever my measured execution times varied slightly from one run to the next I uniformly presented FORTH s fastest time and RPL s slowest for another I specifically ex cluded from consideration any bench marks involving manipulation of character strings stack resident arrays finite state automata and other opera tions that RPL handles much more naturaly than FORTH Further evi dence of this concern will become ap paren below First I ll address Mr Beach and his comments on the use of single character operator tokens I do agree that RPL source must look like hieroglyphics to a person versed in FORTH but perhaps you remember what FORTH or any computer language looked like before you became fluent in it Ex perienced RPL users have as little dif ficulty reading RPL source as you do full featured file manager and report generator for home busi ness school or scientific applications user definable file structures powerful search and edit including global change and delete built in statistical analysis flexible tabular report and mailing label capabilities complete with search sort capabilities on any field OMNITREND powerful multiple regression trend analysis tool for business or technical data sophisticated least squares fitting algorithm faster and more accurate than usual techniques includes descriptive statistics and bivariate analysis built in data manage
279. special characters to the printer without loading Tandy s PTFX program I am interested in hearing from anyone who has modified a Color Com puter to 64K without converting to the E board I would also like to hear from FLEX and OS 9 users who suc cessfully run their programs on CoCo The added power and software com patability is a major step for Color Computer programmers Next month in addition to CoCo news I will discuss some books avail able for Color Computer users I will also take a look at medium and high resolution graphics modes available in TIRED OF TYPING MICRO has the solution Order a diskette of three recent utility programs for the Apple For only 10 00 plus 2 00 shipping and handling you will receive a DOS 3 3 diskette containing the assembled listings of Applesoft Variable Dump by Philippe Francois MICRO April 1982 Straightforward Garbage Collec tion for the Apple by Cornelis Bongers MICRO August 1982 COMPRESS by Barton Bauers cessible A few simple changes allow Extended BASIC you to restore the upper bank and deselect the ROMs that normally reside there The user can then load another DOS modify BASIC or change the en tire character of CoCo When Radio You may contact the author at 508 Fourth Shack changed the memory chips the Avenue NW Riverside ND 58078 company had to issue a new Color MICRO October 1982 Please send check money order or
280. ssion to be reliable To preserve aiming flexibility put the transducer on a lengthy flexible signal cable You can secure it to the command console grid if you wish A USR software driver routine for the interface appears in listing 1 This routine begins by calling the ROM BASIC subroutine at address AEO5 which deciphers the argument value within the parentheses following the USR call in BASIC text and puts that value in locations AE and AF in the form of a 15 bit integer with a sign bit Any argument value outside the range of 32768 to 32767 will cause a function call error if the AE05 routine is called The USR routine assumes that the argument is a number between 1 and 22 corresponding to a BSR unit or com mand number Lines 90 through 110 look up the appropriate five bit com mand code in a data table and replace the original argument value with the code Lines 120 through 160 produce five repetitions of code transmission a factor which was found reliable when used in a BASIC program that turned house lights on and off over a two hour period This means that each USR call takes about 640 ms The main subroutine WORD begins at line 200 with transmission of the single bit prefix a logic 1 Then the command code is loaded and trans mitted once reloaded inverted in line 240 and transmitted again The code word suffix is sent by the remainder of WORD Subroutine SEND analyzes each bit of the five bit command c
281. t s like reading a book except that you are the main character as you give the computer com mands like Look in the Coffin and Light the torch Adventures require 16k on TRS80 TRS80 color and Sinclair They require 8k on OSI and 13k on Vic 20 Derelict takes 12k on OSI 14 95 each OSI AARDVARK VIC 64 VIC 20 CATERPILLAR O K the Caterpillar does look a lot like a Centipede We have spiders falling fleas monsters traipsing across the screen poison mushrooms and a lot of other familiar stuff COLOR 80 requires 16k and Joy Sticks This is Edson s best game to date 19 95 for TRS 80 COLOR PROGRAMMERS SEE YOUR PROGRAM IN THIS SPACE Aardvark traditionally pays the highest com missions in the industry and gives programs the widest possible coverage Quality is the keyword If your program is good and you want it presented by the best send it to Aardvark ESCAPE FROM MARS by Rodger Olsen This ADVENTURE takes place on the RED PLANET You ll have to explore a Martian city and deal with possibly hostile aliens to survive this one A good first adventure PYRAMID by Rodger Olsen This is our most challenging ADVENTURE It is a treasure hunt in a pyramid full of Problems Exciting and tough HAUNTED HOUSE by Bob Anderson It s a real adventure with ghosts and ghouls and goblins and treasures and problems but it is for kids Designed for the 8 to 12 year old population and those who haven t t
282. t BASIC programs located lower in memory Since the DLOAD command was part of a running program BASIC at tempts to execute object code as soon as it is fully loaded However BASIC assumes its programs begin where another pointer TXTTAB points In this case we ve left it alone This means that BASIC will execute mail list 4040 again That is the main reason for checking to see whether object code has already been loaded Otherwise we would never get past line 1040 A ter the load the IF test in line 1040 fails and the program continues 37 Chaining Line 1060 is another line that must appear at the beginning of the first pro gram module For program chaining to work correctly we must either make the first program the largest one or else convince BASIC that this is so We could do this by adding dozens of long lines to the program as ballast How ever this would add to its loading time and take up more storage space on the disk I have only followed that idea to the extent of coding this module very loosely with mostly single state ment lines and lots of REMark state ments The added clarity is worth the slight waste I also started with line number 1000 to keep all line numbers the same length again for clarity In early versions of the mail list chaining worked by altering the file size pointer VARTAB at location 42 2A as each module began This worked because BASIC keeps track of the act
283. t used with custom charac ters since this way of interpreting the character data would make most stan dard characters nearly unrecognizable The VIC uses a similar scheme in its multicolor mode Extended background mode allows the background for each screen location to be any of four different colors The sacrifice is that only the first 64 characters in character memory can be used Bits 6 and 7 which would nor mally select the other 192 characters determine the background color instead The background color is read from background color register 0 1 2 or 3 Figure 1 Multicolor Character Mode a Bits in character memory are considered in pairs b Each bit combination indicates a diferent source for the color c The final character displayed with double width pixels a 00 01 01 00 01 00 10 01 00 00 10 10 01 11 11 01 01 11 11 01 10 1000 00 01 10 00 01 00 01 01 0 0 b 00 Backgroundo 01 Background 1 Hy 10 Background 2 amp 11 4 bit color EON location MICRO The 6502 6809 Journal No 55 December 1982 PET Vet continued Bit mapped Modes Standard bit map or high resolution mode allows control of each individual pixel on the screen with a resolution of 320 by 200 8K of RAM normally taken from the top of BASIC RAM is used for high resolution graphics The bytes are arranged in the same way the pixels of characters are coded That is the first byte in hi res memory codes
284. ta Ute b tus 8998 09 50HZ Versions Available 8 Drives Available Contact GIMIX for Prices and Information The Sun Never Sets On A GIMIX GIMIX users are found on every continent including Antarctica A representative group of GIMIX users includes Govemment Research and Scientific Organizations in Australia Canada U K and in the U S NASA Oak Ridge White Plains Fermilab Argonne Scripps Sloan Kettering Los Alamos National Labs AURA Universities Carleton Waterloo Royal Military College in Canada Trier in Germany and in the U S Stanford SUNY Harvard UCSD Mississippi Georgia Tech Industrial users in Hong Kong Malaysia South Africa Germany Sweden and in the U S GTE Becton Dickinson American Hoechst Monsanto Allied Honeywell Perkin Elmer Johnson Controls Associated Press Aydin Newkirk Electric Revere Sugar HI G AMS Controls Chevron Computer mainframe and peripheral manufacturers IBM OKI Computer Peripherals inc Qume Floating Point Systems Software houses Microware T S C Lucidata Norpak Talbot Stylo Systems AAA HHH Frank Hogg Labs Epstein Associates Softwest Dynasoft Research Resources U K Microworks Meta Lab Computerized Business Systems GIMIX Inc reserves the right to change pricing and product Inc speecifications at any time without further notice 1337 WEST 37th PLACE CHICAGO ILLINOIS 60609 GIMIX and GHOST are registered trademarks of GIMIX inc FLEX and UniFLEX
285. teger BASIC by Leonard Anderson is a follow up to a similar program he presented for Applesoft p 13 It produces an attractive formatted listing of your Integer BASIC pro gram complete with indentation paging and other fancy features Tim Osborn s Apple Slices p 65 presents a general purpose binary search routine that can be called using the amp vector ACRO MICRO The 6502 6809 Journal 3 E FOR YOUR APPLE Il Industry standard products at super saver discount prices PARALLEL PRINTERS NEC 8023 or C ITOH 8510 Virtually identical Specifications 100 CPS dot matrix printer 80 column print 136 characters per line Tractor friction feed 7 different print fonts included 2K printer buffer Proportional Spacing Bit image graphics and graphic symbols NEC 8023 or C ITOH 495 NEC 8023 or C ITOH 8510 with Parallel Interface and Cable 550 EPSON 100 with Parallel Interface andCable 74 Z 80 CARD FOR YOUR APPLE With CP M and MBASIC List 399 289 A ADVANCED LOGIC SYSTEM Z CARD With C PM Works with Microsoft s disks too List 269 Special at 195 E ve 4 ALS SYNERGIZER video board CP M interface and 16K memory expansion for Apple II Permits use of the full SuperCALC List 749 549 From Europe Software compatible with Softcard and MICROSOFT PREMIUM SYSTEM Includes Videx
286. ters in the string With a minor effort we can add print using to an application program or make it a permanent part of the FORTH we use each day Other than the string literal defining word there are no other string operators defined in the FORTH standards but these are not difficult to add to such an easily extensible language Some additional points The mod ulo primitive in the fig FORTH 6502 model takes 1 2 milliseconds to ex ecute No random number generator is defined by the Group so the poor speed of this word in Mr Stryker s unnamed FORTH version was not optimized for speed by whomever wrote it Language experimentation and comparison is certainly needed to fuel the evolutionary process of computer technology But it should best be done with the full understanding of each language involved Raymond Weisling Jalan Citropuran No 23 Solo Jawa Tengah Indonesia Dear MICRO Thanks very much for the chance to respond to Mr Beach and Mr Weisling in regard to their letters concerning my recent article First of all I take exception to the contention in both of these letters that I unjustly biased the benchmarks and the conclusions drawn therefrom in OMNIFILE favor of RPL In fact precisely because I knew that this objection might be raised I bent over backward to give the benefit of every doubt to FORTH This may not be immediately apparent in the article because I did not make a point of saying
287. the most intelligent interface around An Epson MX 80 needs Graftrax or H Graftrax Plus An MX 100 requires Graf trax Plus Warranty is 90 days i SUPER MX card with cable 175 00 H Orator and Letter Gothic Fonts 30 00 1 Script and Olde English 30 00 Cash cashiers check or money order Personal checks will require 2 weeks to H clear California residents add 67296 sales tax Sples Laboratories pronounced speez P O Box 336 Lawndale CA 90260 213 644 0056 Apple Il is a TM of Apple Computer Inc Graftrax is a TM of Epson America Inc 43 NE commodore ee Announcing THE GUIDE A Complete Guide to the Apple Computer If You Own the Original What s Where in the APPLE You Will Want THE GUIDE A Complete Guide to the Apple Computer only 9 95 The Guide provides full explanatory text to lead you through the most complete Apple memory map ever published The Guide explains and demonstrates how to use the atlas and gazeteer published in the original volume If you missed the first edition of What s Where in the Apple a new revised edition containing BOTH the original atlas and gazeteer AND the all new Guide is available in one 256 page Wire O Bound book for only 24 95 MICRO makes it easy to order Send check payable to MICRO to P 0 Box 6502 Chelmsford MA 01824 Call our toll free number 1 800 345 8112 In PA 1
288. this conversion automatically when you PRINT to the screen but if you use your own routines and put the characters directly on the screen with POKE or a similar method you need to convert to this screen code The operating system manual in cludes a table that shows you the cor respondence between ATASCII and the screen code which they call the Inter nal Code You can form a look up table if you want by using a 256 byte string Set it up so the value to POKE is the ASC value of the byte in the string found at AVAL 1 where AVAL is the ASCj value of the ATASCII character to be displayed An alternative approach which consumes less memory than the look up table is using dependent IF statements Using N as the ATASCII value to display FLAG INT N 128 N N FLAG 64 If N gt 95 THENNZN 96 IF N gt 64 THEN N N 32 After you execute that one line of code it must be in one program line 32 POKE the screen location with N FLAG FLAG will equal 128 for in verse video characters and will equal zero for normal video characters in mode 0 There are two bits in modes 1 and 2 that determine the color but the conversion routine in the above IF statements will interpret them both correctly The other code conversion would be for characters read from the keyboard Several people have asked me how to eliminate the keyboard click The only way to completely eliminate it would be to disconnect the keyboard spe
289. tice what happens when this number is acted on by subroutine B5A3 Suppose the actual last number in your BASIC program is 1000 and you enter the command 250 The default number FFFF is loaded into 11 and 12 and routine B5A3 is called The routine will start with 65535 and will whittle away at the numbers until it eventually hits your actual last number 1000 in this case Once again this is exactly what the BASIC Line Delete requires The routine at DB9E will query ARE YOU SURE and wait for a re ply If the answer is Y or YES the carry flag will be cleared Any other response will set the carry flag Note VIC 20 INTERFACING BLUE BOOK Did you know that your VIC can be used to ed control a 99 toy motor so effectively that it S runs like a precision machine Or that you can build an accurate digital thermometer using the VIC and four other parts costing less than E 5 These and other 18 interfacing projects selected for usefuiness ease of construction and iow cost are detailed in the VIC 20 Inter facing Blue Book a veritable gold mine of prac ticat information on how to build a variety of in terfaces for your computer Projects include Connecting VIC to your stereo Pickproof digital lock Capacitance meter Liquid level sensor Telephone dialer Voice output 8K 16K RAM ROM expansion 128K RAM expansion 8 bit precision D A 8 bit AID converter MX 80 printer interface and more Wratten by a col
290. tine off so that it does not even look at this vector This is accomplished by setting the critical flag a 1 into loca tion 66 You then make the changes to the vector at location 548 then restore the critical flag with a zero into loca tion 66 This needs to be done only once while you change the contents of the vector If you want to add to the beginning of the immediate vertical blank inter rupt first POKE 54286 NMIEN with a zero This disables the vertical blank interrupt Next make the appropriate changes to the vector at 546 and then POKE 54286 with a 64 to re enable the vertical blank interrupt Listing 1 shows the routine used to form shadow registers for the fine scrolling hardware registers You must POKE the first 13 bytes into memory then copy locations 548 and 549 into bytes 14 and 15 This causes the rou tine to jump to the location that the vertical blank interrupt routine nor mally jumps to on completion To get the normal interrupt routine to jump to your routine in the first place POKE a zero in location 548 and a 6 in location 549 This puts 1536 600 into the VVBLKD locations The machine language program takes the values in locations 610 and 611 decimal 1552 and 1553 and stores them into the horizontal and ver tical scroll hardware registers Then it jumps back into the vertical blank in terrupt routine where we first inter rupted it Locations 1552 and 1553 decimal now act as sh
291. tions Mnemonic Data Size CCR Name Comments nd destination are logically ANDed and the resul stored i in the destination gt Opword Format esult left i in the data register EA ANDed with the T Effective Address Mode Register Byte data 8 bits con tinued MICRO The 6502 6809 Journal 85 Table 1 continued Mnemonic Data Size CCR Comments EOR EORI EORI to CCR Ni OT 86 MICRO The 6502 6809 Journal MICRObits continued VisiCalc To Apple Plot Interface translates from VisiCalc to Apple Plot prevents erroneous graphs fits curves to data and supplements VisiCalc with rank ordering and alphabetizing Send SASE for details or 30 00 for the copyable program Bill Starbuck 2100 E Edgewood Shorewood WI 53211 414 963 9750 VisiCalc To Apple Writer Veecee Writer translated VisiCalc PF files for Apple Writer 1 Send 15 00 for the copyable program Bill Starbuck 2100 E Edgewood Shorewood WI 53211 414 963 9750 TRS 80 Color Computer Expand your 4K system to 16K for 29 95 Expand 4K or 16K to a 32K system for only 99 Obtain better color graphics Full instruction documentation provided in each kit Two to three week delivery time 3 postage handling charge Dick Williams Computer Shed Lane 2 1 Derry NH 03038 603 432 3634 Un
292. tions the output appears as a high impedance to the data bus If the data lines are pulled low they are released when the SYNC line goes low during the next clock cycle Software The task of the software is two fold First it must determine if the break was the result of an illegal op code or a BRK instruction Second if the Trapper forced the break it must retrieve the il legal op code and direct the CPU to the proper software routines The CPU handles the software BRK and an IRQ Interrupt ReQuest simi larly except for one small feature A BRK command sets the break bit bit four in the processor status register The CPU will then do an indirect jump through the IRQ vector at FFFE and FFFF The user must load the address of the break handling routine into the IRQ vector prior to the detection of an illegal op code to direct the CPU to the user routine Listing 1 shows the soft ware used to change the IRQ vector A starting address of 0300 was used for the break service routine but this is arbitrary The user s break handling routine must determine whether a BRK or an IRQ was encountered This is done by retrieving the processor status from the stack it was automatically pushed there when the break occurred and ex amining the break bit If it is determined that bit four is set and hence a break has occurred it retrieves the last op code This is easily done because the address of this instruction plus two was
293. tly ad justs to VIC 20s with any amount of add on memory In addition the pro gram automatically does a SYS to the right address All the user has to do is LOAD the program and RUN it Now you have a new command for your Commodore computer You don t really have to understand how it works to use it but I recommend you look over the assembly listing again As mentioned before the ROM routines called are quite powerful and probably have many other uses In addition the program itself could serve as an exam ple of how to incorporate worst case er ror checking into your own routines Acknowledgements I owe a big debt of gratitude to Dick Immers of the Central Illinois PET User s Group for explaining some of the quirks of the CBM 8032 machine language tape save routine Thanks also go to Dr Kenneth Good Mankato State University for putting early ver sions of this program to the acid test He found several conditions that could have caused users real troubles were they not flagged with SYNTAX ER ROR statements Thomas Henry is a professional writer in the areas of electronic music circuit design and Commodore computers He may be contacted at Transonic Laboratories 249 Norton Street Mankato MN 56001 MICRO 70 INCOME TAX PROGRAMS For Filing by April 15 1983 For APPLE II II DOS 3 3 16 Sector Helpful programs to calculate and print the many Tax Forms and Schedules Ideal for the Tax Prepare
294. to capture copies of the material being transmitted or received for later study or dumping to the printer Pluses A versatile and exceedingly well done package The 40 column display is great Minuses Although Terminal 40 supports the printer it does not handle the disk nor is there any way to use it to transmit or receive a program The program comes on an auto start tape and cannot be copied to disk or another tape Documentation The 20 page manual is clear and comprehensive No special skills required Reviewer David Malmberg Product Name Doubletime Printer Equip req d Apple II Plus Any of the popular printers Price 99 95 Manufacturer Southwestern Data Systems P O Box 582 Santee CA 92071 714 562 3221 Description Double Printer permits printing to take place as a background task You can continue to use your com puter while it is printing rather than being frozen out This should prove particularly valuable in word processing applications Pluses The product is extremely versatile Applesoft binary or text files are printed without conversion For matting commands are available and easy to use Minuses The product is not easy to get up and running It requires a ROM chip change a board installation and a diskette boot All this could be dealer performed for the more timid user It is worth the trouble Documentation The instructions are well written but quite technical
295. tor may be printed several times before a correct source line is found The number of prints will be dependent on binary content but a correct Integer source line will always follow embedded binary A possibility is a bit error in memory that can yield another possible binary print line An advantage is that a printout will show beginning and end ing addresses for closer examination An attached binary program will terminate at highest available memory The possible binary last print will in dicate this as 95FF with standard DOS Alternatives A purely Integer version of ILISZTER can be written by translation of the general structure Page zero loca tions 69 through 6D can be used for 16 continued 105 HOME INVERSE PRINT SET PAPER TO TOP OF FORM PRINT THEN PRINT TURN ON PRINTER i NORMAL PRINT 3 GET AS 106 REM SET SCREEN WIDTH TURN ON PROPER PORT 107 HOME POKE 33 30 PR 1 108 REM CONTROL CHARACTERS FOR MX 80 WITH GRAPPLER CARD CHRS 9 CTRL I CHR 27 ESC 109 PRINT CHRS 9 82N CHRS 27 O CHRS 9 I 110 REM 111 REM SET UP TO START FIRST PRINT PAGE 112 LC 6 PC 1 D 0 GOSUB 11 GOTO 25 113 REM POSSIBLE BINARY INSERT ADDITION ROUTINE 114 RF 1 GOSUB 18 L LA GOSUB 21 GOSUB 6 PRINT MS LBS gt gt gt Possib e Binary fram A to 115 IF P gt PE GOTO 121 116 IF B 127 THEN GOSUB 2 GOTO 115 REM BYTE COUNT TOO LARGE 117 PP P B 1 BT PEEK PT
296. tracalc CP M CBasic Software Smith Corona TP1 Letter Quality Printer Our Price 2995 00 Retail Value 4895 00 for price and availability on IBM PC hardware soft ware and peripherals NEC 3550 Printer for IBM 2099 00 Pee re oso 0s Televideo Terminals 579 00 699 00 749 00 749 00 950 00 9495 00 COMPUTERS eras 749 00 549 00 InfoPro Plus commodore 8032 oes 999 00 CBM64 ra EM Od CALL 4032 sO ca enter Sy us 749 00 8096 Upgrade Kit 369 00 Super Pet MED 1599 00 2031 3 369 00 8250 Double Sided Disk Drive 1699 00 D9060 5 Megabyte Hard Disk 2399 00 D9090 7 5 Megabyte Harci Disk 2699 00 8050 ues 1299 00 969 00 8300 Letter Quality 1549 00 8023 peas 599 00 4022 399 00 New Z Ram Adds CP M and 64K Ram 549 00 The Manager x 209 00 Magis SON NIS R CALL Word Pro 5 plus 319 00 Word Pro 4 plus 299 00 Word Pro 3 plus 199 00 The Administator 379 00 219 00 Power 79 00 VIC 20 Dust Cover CBM 8032 Dust Cover CBM 8050 4040 Dust Cover VIC 1530 Commodore Datassette BIC 1540 Disk Drive VIC 1541 64 Disk Drive VIC 1525 Graphic Printer VIC 1210 3K Memory Expander VIC 1110 8K Memory Expander 16K VIC Expansion VIC 1011 RS232C Terminal Interface VIC 1112 VIC IEEE 488 Interface VIC 1211 VIC 20 Super Expander VIC Mother Board PRINTERS Smith Cor
297. tring is lower in value than the array element a JMP to STRNGLO is performed line 110 If the string is higher in value then a JMP to STRNGHI is performed line 108 If the two items are equal line 109 the lengths are compared If the string is shorter it is considered to be lower in value and a JMP to STRNGLO is performed line 116 If the two items are of equal length then a branch to EXIT is performed which sets up an integer variable SS and loads it with the current value of IN DEX This value is the location of the search argument in the array The last thing EXIT does is JMP to DATA which is Applesoft s routine to advance the TXTPTR to the end of the current statement lines 119 through 129 STRNGHI first compares the lower limit of the search LOWLIM to the INDEX If they are equal then the upper limit and the lower limit have con verged which means the element could not be found Under this condi tion a JMP to the internal routine NOT FOUND is performed lines 130 136 NOTFOUND loads INDEX with a 1 ANNOUNCING A NEW JOURNAL Decision and JMPs to EXIT where INDEX is passed to the SS parameter as de scribed above If the upper and lower limits have not converged STRNGHI then resets the lower limit by moving INDEX lines 137 through 140 STRNGHI then returns to the main search loop SEARCHLP to continue the search STRNGLO works essentially like STRNGHI except it tests for con vergence by check
298. ual file size in pointer EAL at location 201 C9 during a load On VIC VARTAB is at 2D and EAL is at AE We simply had a line like the one below at the start of each module 10 POKE 42 PEEK 201 POKE 43 PEEK 202 CLR Unfortunately it won t work without the CLR and once CLR is used the old variables are gone This means that a separate disk file has to be established and loaded by each module to remem ber global variables or the variables have to be hidden from BASIC and PEEKed Either method is slow By POKEing VARTAB with a value at least as large as it would need to run the largest module we can use line 1060 instead of line 10 and need it only in the first module 1060 POKE 42 0 POKE 43 53 CLR To determine the correct values to use here load the longest module in your program and enter PEEK 43 Add two to the result and write it down Use that number in place of 53 in line 1060 Note that we could have also PEEKed at 42 but I prefer to overstate slightly the required memory This allows minor additions to that longest module without also re quiring a change here 38 Don t make program changes to any module after loading it via a chain BASIC no longer knows the module s true size Instead reload the module from disk in immediate mode and then make the changes This is especially important if you have used line 10 above EAL isn t changed by line editing If EAL points lower than the end of
299. ubject to noise These noisy registers can cause the pen s readings to jitter about the screen The October article presented a machine language routine that eliminated this jitter problem by taking seven separate readings of the pen s coordinates sorting them and returning the median readings thus ig noring the jittery readings that should be at one extreme or the other of the sorted list This routine also calcu lated the light pen s screen row and col umn for the special case of an Atari or Commodore light pen Having recently experimented with the use of the Atari VCS s game paddles with the VIC I discovered that the left 9008 and right 9009 game paddle registers also suffer from jitter prob lems This can be very frustrating when you are playing a paddle game like PONG or BREAKOUT and the paddles occasionally bounce around the screen as if they were possessed by evil com puter spirits The severity of the prob lem seems to be a function of the game paddle unit itself my neighbor s pad dles are much noisier than mine The BASIC subroutine given in listing 1 POKEs into the VIC s cassette buffer a machine language routine that provides a general solution to this jitter problem To use the routine in your paddle programs follow these steps 1 append the subroutine to your game paddle program 2 GOSUB 1000 at the start of the program to load the machine code into the cassette buffer 3 SYS 828 to read
300. uim In Stock items shipped within 24 hours of order Personal checks require four weeks clearance before shipping PA residents add sales tax All products subject to availability and price change Add A for Mastercard and Visa VIC 20 189 00 VIC1530 DATASSETTE VIC1540 DISK DRIVE VIC1515 PRINTER VIC1210 3K RAM VIC1110 8K RAM VIC1211A SUPER EXPANDER VIC 20 SOFTWARE VIC1212 PROGRAMMER AID VIC1213 VICMON VIC1906 SUPER ALIEN VIC1914 ADVENTURE LAND ADVENTURE VIC1915 PRIVATE COVE ADVENTURE VIC1916 MISSION IMPOSSIBLE VIC1917 THE COUNT ADVENTURE VIC1919 SARGON II CHESS THIRD PARTY SOFTWARE ALIEN BLITZ Omega Race Gort 16K RAM ROM AMOK SUPER HANGMAN SPIDERS OF MARS CALL TOLL FREE 800 233 8760 In PA 1 717 398 4079 or send order to Lyco Computer P O Box 5088 Jersey Shore PA 17740 1 About the Cover This month MICRO is taking a holiday from presenting a graphic with a computer theme on our cover Instead we want to offer our warmest greetings in five languages The colorful lights in the picture belong to the city of Frankfurt Germany and symbolize the festive glow of the holiday season Froliche Weinachten Cover photo by Phil Daley AAICRO is published monthly by MICRO INK Chelmsford MA 01824 Second Class postage paid at Chelmsford MA 01824 and additional mailing offices USPS Publication Number 483470 ISSN 0271 9002 Send subscriptions
301. ul chaining and the character set is correct Now the pro gram begins a long process of initial izing variables Because this takes about five seconds it is wise to give the user something to look at meanwhile The mail list starts with a copyright message and then a status line 1200 PRINT INITIALIZING This assures the user that the program hasn t died If the delay will be more than half a minute also give the user an estimate as to how long the task should take and an occasional progress report No 55 December 1982 Ps commodore Mix More on Soft Coding In the lines following 200 in this first module the global variables are defined Because they are not cleared by later modules the way the entire package works can be modified drastically by changing a single line in this module Naturally the other modules have to be carefully written to take advantage of this power We will see how this is done later in this series of articles The global variables used tend to fall into three categories those that define messages those that define special characters and those that act as flags to control the program The first category allows easy changes to such things as field names or default field contents These messages may also in clude cursor control characters to be sure they appear at the correct location on the screen To ease this task the mail list predefines a position string of cursor controls in line 1880
302. upplied otherwise with AIM65 2 credit Top quality power supply designed to Rockwell s specs for fully populated AIM65 includes overvoltage protection transient sup pression metal case and power cable PSSBC A 5V 2A Reg 24V 5A Avg 2 5A Peak Unreg 64 95 Same but an e tra AMP at 5 volts to drive your extra boards PSSBC 3 5V 3A Reg 24V 5A Avg 2 5A Peak Unreg 74 95 The professional s choice in microcomputers AIM65 1K RAM 429 95 BASIC 2 ROMS AIM65 4K RAM 3464 95 ASSEMBLER 1 ROM FORTH 2 ROMS 359 95 SAVE EVEN MORE ON COMBINATIONS AIM65 1K PSSBC A 479 95 AIM65 4K x PSSBC 3 524 95 We gladly quote on all AIM65 40 and RM65 items as well ORDERS 714 369 1084 P O Box 20054 e Riverside CA 92516 California residents add 6 sales tax tO e oe ke e e eoe eoe oe eoe oe eoe eoe oe ok kc oe e oe oe oe kkk kok eb eb eee eee eee eee eee ee eeeeeeenen en amp ts Ka KKK KKK KK KKK KKK KKK oe x xx x Peter Meyer is the author of Agenda Files from Special Delivery Software and Routine Machine recently released by Southwestern Data Systems He is currently designing applications software MICRO The 6502 6809 Journal in Europe You may contact him at 55 Sutter St Suite 608 San Francisco CA 94104 MICRO FORTH 79 Ver 2 For your APPLE II II The complete professional software system that meets ALL provisions of the FORTH 79 Standard adopted Oct 1
303. upt routine You can easily stop this routine from running by setting the critical flag a 1 into location 66 In addition to writing the shadowed infor mation to the hardware registers this second part also updates a few other timers maintains the keyboard auto repeat and debounce functions and reads and interprets the game con trollers into special memory locations By altering two vector locations you can replace or add to the existing inter rupt routines Each vector is a two byte address stored in low high order The vertical blank interrupt starts with a signal generated by ANTIC at the end of the display This signal can be masked by the hardware register NMIEN decimal location 54286 If th contents last written here were 64 10 DIM S 1024 20 A ADK S 30 B INT A S12 1 42 40 CBASE B42546 A 1 47 REM 48 REM SO S 1 CHRS G 60 5 1024 CHRS 0 70 SGS 2 S 1 77 REM 78 REM Ba FOR I O TO 511 10600 NEXT I 107 REM 108 REM MICRO The 6502 6809 Journal 49 REM Clear S string Listing 2 1 REM t Custom Character Set Xxx 2 REM tit Vertical Blank tik 3 REM Interrupt routine xti 4 REM S REM XXX Program by uxt REM tti Paul S Swanson 7 REM 8 REM 9 REM Calc position in mem 79 FEM Move standard set down 90 S CBASE I CBASE 1 CHRS PEEK 1 57344 continued No 55 December 1982 ere eee ne m seis EEG N
304. ut in version but with latching as we will see in a moment When SW3 is high the shift load clock from U42 pin 1 and the inverse shift register output are combined by sections of U4 and U3 to produce inverse video The section of US that immediately follows fixes the video defect we mentioned earlier In stead of the dots being cut off by the video chain clock it is now latched for the whole period of the system clock and therefore maintains full bright ness This part of the circuit operates regardless of whether any modified video options are selected We haven t forgotten SW1 and the other half of U5 They combine along MICRO The 6502 6809 Journal with your system s clock to produce the blank screen option mentioned earlier When SW1 is high your screen wil not show any display Video memory will still be updated however so that whenever SW1 is brought low the whole screen will be restored This could be handy to do screen set ups hide your game moves in a two player game etc Table 1 offers a recap on the opera tion of switches SW1 SW4 Table 1 SWITCH MODE 1234 BLANK SCREEN NORMAL SCREEN UPPER CASE ONLY INVERSE UPPER CASE DIM UPPER CASE DIM INVERSE UPPER CASE H High L Low X 2 Don t care To test the modification be sure all of the mode selection switches SW1 SW4 are in the low state this will en sure that you will have a normal screen to look at while you re setting up We
305. uter by Michael E Valdez A low cost procedure for sampling and reproducing voice with a computer including the required hardware and software Voice requires A computer with a 4 bit port available and a Motorola 3417 speechidigital converter Several methods are available today to add voice to a computer The method developed by Texas Instruments uses a model of the mouth and generates the necessary parameters by linear predic tive coding This method gives excel lent results producing isolated words with very high quality but is expen sive Another problem is that it is necessary to have a read only memory with the parameters of the words to be used this read only memory can be produced only by Texas Instruments It has several ready made read only memories with standard vocabularies at a very reasonable price Using this method requires minimal knowledge of acoustics and linguistics The user has to write some simple programs to con trol the unit the worst requirement be ing to prevent the words from running together The signal compression and delta modulation method developed by Na tional Semiconductors although very different technically is similar from the user s point of view to the one developed by Texas Instruments With this method it is also necessary to use a read only memory produced by the manufacturer and the cost is also in the same range around two hundred dollars But the results are
306. ve CBM Disk Techniques Part by Jim Strasma Contributing editor Jim Strasma begins a series that explains how to get the most from CBM s powerful disk operating system Examples are drawn from a well written mailing list package that is both inexpensive and widely available In Part 1 Jim covers global variables combining BASIC with machine language and chaining of program modules Editor s Note To implement all of these techniques you should have a DOS 2 0 or later disk drive BASIC 4 0 is also assumed However ways to emulate BASIC 4 0 disk commands from Upgrade BASIC and VIC BASIC are summarized One of the best features of Com modore s BASIC 4 0 and DOS 2 is its use of relative records for data files This is a very powerful technique not well matched by competing computers in Commodore s price range However relative records can be quite confusing and though they have been around for two years now are largely used in com mercial programs However there is one large program package freely available that uses relative records Chris Bennett s Mail List 4040 In one form or another it has been around for about two years For much of that time I have been modifying and documenting it With the help of the mail list this series of six articles will thoroughly explain the use of relative records It wil also cover some programming techniques for large packages and a machine language program th
307. versity of Rochester Rochester NY 14627 MICRO MICRO The 6502 6809 Journal PROFESSIONAL WORD PROCESSOR Double Columns Page by Paragraph Right Justification Line Centering Printer Graphics Shorthand Variable Line Space Margin Control Printer Control Code FOR APPLE PET CBM COPY WRITER by IDLE C only 185 00 Form Letters EXCHANGE DATA w IBM 3740 PEDISK 877 FLOPPY DISK Sys tems can now read and write records from IBM Basic Data Exchange amp diskettes FILEX software from LSERVE does all the work Con its EBCDIC ASCII EXC em B77 FILEX 1295 PEDISK 877 1 8 Floppy for PET 995 PEDISK 540 1 5 Floppy for PET 595 CONTROLLER BOARD w PDOS s 229 PEDISK II is a high performance floppy disk system designed for the Commodore PET CBM Rockwell AIM and Synertek SYM it features high performance simple reliable design and IBM for mat SOFTWARE FOR PEDISK II COPYWRITER Pro Word Processor 185 MAE Macro Assembler Editor by EHS 170 FLEXFILE I Data Base Manager 80 PAPERMATE Word Processor we DISK UTILITY PACK ET FASTFILE Data Base 100 FILEX IBM Access Routines 245 MENU LOAD 10 fullFORTH Commodore Communicates COMPACK 129 Intelligent Teminal Package including ACIA based interface DB25 cable STCP
308. vert a single beam spectrophoto meter into a pseudo dual beam device The simplicity of microcomputer based systems can best be illustrated by the measurement of optical density of fluids An extremely simple colori meter useful for many chemical con centration measurements can be con structed from a suitable light source such as a light emitting diode and a photoresistor placed on opposite sides of a translucent vessel containing the fluid to be studied The photoresistor is interfaced via the 555 A D converter Since the components light source and photoresistor can be very small e g three mm diameter and the units are so simple a variety of geometries can be accommodated Thus a chemical reaction involving a color change can be followed in situ in a small test tube There is no need to disturb the process by withdrawing samples for analysis Another example is the study of the dispersion of a dye in a liquid flowing in a long tube It is a simple matter to place these LED photoresistor color imeters in collars clamped around the tube at intervals and observe the dispersion effect without disturbing the flow Note that when a LED is used in 62 THE MONTHLY JOURNAL FOR COMMODORE COMPUTER USERS FU MAX MACHINE COMMANDER ull be dedicated to communicating the fun of as weil as the latest information about the COMMODORE COMPUTERS GET YOUR MONEY S WORTH You ve probably made a sizeable
309. with Graphtrax Plus They are also very like one subset of the CBM graphics charac ters the shifted zero is an example see table 1 When PRINTed most of the codes from 1 to 13 perform some sort of control function as shown in table 1 What about the high order bit that gives the codes 128 to 255 Either PRINTed or POKEd all the codes from 128 to 255 reproduce in reverse field their X minus 128 POKEd counter parts Although all these reverse field characters are available and Waterloo didn t usurp the RVS key for another function Waterloo ASCII apparently has no reverse control code such as in the CBM character set Therefore to print a reverse field string each character must be extracted from the string and transformed by adding 128 For example in microBASIC FOR 1 TO LEN CHARSTRING CHAR STRS CHARSTRINGS I 1 RVSCHAR CHR 128 ORD CHARS PRINT RVSCHARS NEXT Perhaps this encumbrance is the reason reverse field characters aren t men tioned in Waterloo s documentation VIC Jitter Fix David Malmberg 43064 Via Moraga Fremont CA 94539 In my October 1981 MICRO article 41 54 VIC Light Pen Manship I pointed out that the locations in the VIC chip that return the light pen s horizontal screen position 9006 and vertical screen position 9007 are Table 1 Epson CBM Graphics Graphtrax Code Mnemonic ASCII Name Print Action POKE Character Equivalent Equivalent 1 SO
310. with formatted screen viewing and inputting Features find update delete paging coding and screen quick and format dump 55 00 Label print option 25 00 Report Generator January 1983 manual only 10 00 Bunin amp Ward Computer Services P O Box 895 Church Street Sta New York NY 10008 212 434 5760 Low Cost Software Unique programs and hardware kits to adapt small computers to the real world Control machines make music build test equipment and security systems etc For information write to us describing your system and interests Include stamped self addressed envelope S W Associates 45 Furman Drive Wayne NJ 07470 OSI Super Defender Play this great arcade game at home All machine code includes scanner smart bombs laser fire moving mountains and more Save your humanoids from the alien landers Very smooth half character moves graphics 14 95 for Cl 2 4 tape or 5 disk DMP Systems 319 Hampton Blvd Rochester N Y 14612 Dynamite PET CBM Accessories Write protect switches indicators for 2040 4040 disk drives Real world software at low cost 2114 RAM adapter replaces obsolete 6550 s and 4K memory expansion for old 8K PETs Hundreds of satisfied customers Write for free catalog Optimized Data Systems Dept M Box 595 Placentia CA 92670 Programmable Character Generator for OSI Design your own character set and save the ch
311. with your check money order or Mastercard or Visa Account Number Orders will normally be shipped within 48 hours after receipt 100 00 minimum order FREE Sampler Cassettes with each Superboard I and C1P series order Taxi Game Electronic Equations Loan Finance Straight and Constant Depreciation Uneven Cash Flows Tiger Tank Flip Flop Logic Game Hectic Black Jack Master Mind 80 Super Sale 60 4096 Off On Ohio Scientific dipo boda ii A Compiete Computer System On A Board Includes full size 53 key keyboard video and audio cassette interfaces SWAP Modem sampler cassettes manual 8K BASIC in ROM with 8K RAM Requires 5 V 3 amp regulated DC power supply 30 day limited warranty Supply is limited ONLY 200 60 NOW 149 95 1333 S Chillicothe Road Aurora OH 44202 TO ORDER CALL 1 800 321 5805 TOLL FREE Ohio Residents Call 216 562 4136 149 95 Lj SUPERBOARD 1I 200 600 Send Detailed Catalog Order Form E Cleveland Consumer Computers amp Components Name Address City State Zip NE Payment by enclosed check or money order or charge to 1 MasterCard Account Total Amount Charged or Enclosed Requested Otherwise MICRO The 6502 6809 Journal a Expiration Date VISA Ohio Residents Add 5 5 Sales Tax All Orders Will Be Shipped Insured By UPS Unless No 55 December 198 Listing 7 s GOTAL000 i amp t 1
312. xplained in the in structions that come with the mail list package so I won t take space for them here However if you do get the pro gram notice that all the simple vari ables are defined before the arrays are defined Doing things in this order cuts the initialization delay by 2 5 seconds Further speed gains are possible by ar ranging the lines so the most used variables and arrays are defined before those used less often The ones most heavily used are usually inside nested loops and often used subroutines Using Program Intelligence The program selects either an ASCII or a PET printer as we saw in line 1310 However it doesn t simply assume the printer is on but goes to the trouble of checking in lines 1350 1380 1300 DV 4 REM PRINTER 1340 REM BE SURE PRINTER IS ON 1350 OPEN 4 DV 1360 PRINT 4 CHR amp 7 REM BELL 1370 IF ST THEN PZ 2 N PRINT PRINTER IS OFF 1380 CLOSE 4 Line 1360 tries to print a BELL character to the selected printer device If it succeeds the IF test of the status variable will fail in line 1370 Other wise a warning is printed and the printer control variable is set to show no printer is on line This allows users without a printer to safely use the package A similar technique is used in lines 1250 1290 continued SOFTWARE SELECT 8032 OR 4032 Quit Playing Games Disk Based Software to Make Your DISPLAY DISPLAY FROM THE KEYBOARD OR PROGRAM
313. y assemble the routine there a loader in BASIC is useful Listing 6 uses the familiar method of POKEing numbers from DATA statements to memory and is itself a product of listing 5 a BASIC program generator Listing 5 includes the very advan tageous features of placing two immediate mode commands at the end of listing 6 a POKE to terminate LOAD and RUN Since the DATA statements are so long in this case the NEW statement in line 40 of listing 6 erases listing 6 after its work is done leaving behind the driver routine and the data in locations 11 and 12 that tell BASIC where the USR routine begins Listing 7 is a BASIC light show con trol program which is loaded after listing 6 has finished The program pre sumes that X 10 lamp modules 1 2 and 3 control colored spotlights that appli ance modules 4 5 and 6 control colored strobe lights and that appliance module 7 controls the lamp of a slide projector Projector lamps usually exceed 300 watts You should keep the projector fan running even when the lamp is off to cool the lamp and avoid a blowout Would you like some automation in your life Perhaps you need a timer for your toaster Or a security system for your office copier Computer in telligence plus BSR X 10 versatility can do it for you The author may be contacted at 5108 N 23rd Rd Arlington VA 22207 MICRO ATARI Meets the BSR X 10 by David A Hayes A circuit is presented to int

Download Pdf Manuals

image

Related Search

Related Contents

DeviceNet Master Utility User Manual  Kensington Laptop Privacy Screen 14.1"/38.5Cm  Noctua NH-U9B Manual FR  Perfume SPA – Aromaterapia WELLMA DELIGHTS ORIENTAL  電子レンジ  Samsung YP-G1CW Felhasználói kézikönyv    Manuel du Produit - Silentwind  User Manual  Más información en pdf  

Copyright © All rights reserved.
Failed to retrieve file