Home
Ipso Facto Issue 18
Contents
1. A3dos e d 4508 hes es 1 4x NOR MC6847 TID T p a ES ARN W d n e G MCI372 E 9 35eF C2 Ti 56pF af 50 pF 240R 56x 240R VDU 1802 PAGE 35 ANALOG OUTPUT BOARD Tom Crawford General Deseription This board was designed to meet my requirement for analog out puts suitable for experimenting with graphics on an oscilloscope The board provides 3 Digital to Analog D A converters Two of them are 8 bit converters the third is 4 bits The output voltage range can be setup as either unipolar or bipolar up to about 10V by adjusting gain and offset resistors The 4 bit D A has no provision for offset resistors As shown in the schematic all 3 D A s pro vide 0 to 5V output The board also provids blanking logic which can be used with the 4 bit D A for Z axis intensity blanking for the time between outputting to one of the 8 bit D A s and outputting the other As part of the same 24 line I O port used to output to the D A s there are 4 extra lines which can be programmed as either inputs or outputs In the future I plan to use these lines to pro vide handshaking with some vector generation hardware Currently I use them to read a joystick interface Finally this board provides an extra 24 line programmable par allel I O port which can be accessed via a 24 pin DIP header on the board Figure I provi
2. F83BA3 Set subroutine pointer to READ AH F8ABA5 Set main Pc for return D5 Return Address XXBD should be changed to 3216 The program will now branch to the new subroutine on input of a comma do a CR LF and return to address XXAB ready for more input This completes my present modifications to UT4 A future change will be the insertion of a counter into the Write to memory routine to automatically perform a CR LF after every 16 bytes of input and com pletely eliminate the COMMA routine Right now I am busy using UT4 to help in implementing a Serial I O interface for The Monitor pre sented by Steve Nies in a past IPSO FACTO Note to Steve by all means keep us advised of your changes to your monitor Finally I must express my feelings about Netronic s Full Basic and Quest s Super Basic Although I run Tiny Basic Full Basic and Super Basic I find that Super Basic in spite of its length offers so much more versatility that Tiny and Full are virtually unused The availability of the two dimension arrays in Super is a prime requisite for me Also perhaps it is ignorance on my part but I find the steps necessary to perform a very complex equation in RPN is a painful and time consuming task Although I leave the Math Board in my ELF II permanently I use the empty 16 pin socket locations for termination points for the interconnecting cables to my backplane it is very seldom used In fact if it did not offer 8K of Eprom soc
3. Ipso Facto The A C E Magazine cL Sys 1980 ISSUE 18 ACE 1980 1981 EXECUTIVE UNTITLED EDITORIAL COMMENTS ence hh htt P A CHEAP PRINTER Tn TDI 4 LETTERS TO THE EDITOR Seca we IS 6 ENHANCEMENTS TO UTM Vaio so MR Saw a e ee saa s e Vaud ANOTHER STEPPER CD Maid E Se wwe dic aQ 12 AN AUDIBLE CONTINUITY TESTER ere ee ee re eee S wis 13 GAMES 1802S PEL YI o oc y aaa ELEC ITEMS FOR SALE sr esa sak sate ees sia epo 18 HARDWARE BUG IN THE 1802 25 TO VIP AN esa rhet cas cane 27 SOME BASIC BUGS hh ttg 29 MINI RCABUG BAUDOT STYLE s 30 A C E COLOUR VIDEO BOARD c M ANALOG OUTPUT BOARD orm 35 ERRATA BUILDING A BETTER BASIC Terre ae T 35 THE DOUBTING THOMAS MEMORY 5 T 51 MEMBERSHIP RENEWAL CHANGE OF ADDRESS FORM akon p va s Sate De IPSO FACTO is published by the ASSOCIATION OF COMPUTER EXPERIMENTERS A C E a non profit educational organization Information contained in IPSO FACTO is believed to be accurate and reliable However no responsibility is assumed by IPSO FACTO or the ASSOCIATION OF COMPUTER EXPERIMENTERS for its use nor for any infringements of patents or other rights of third parties which may result from its use Send ALL A C E correspondence to Bernie Mu
4. LDI CRSTOR 1 PHI RD POINT RD AT CURSOR STORAGE LOCATIONS LDI CRSTOR O PLO RD LDI 80 GET X CO ORDINATE CALL READR STR RD AND SAVE IT INC RD LDI 40 GET Y CO ORDINATE CALL READR STR RD AND SAVE IT DEC RD RESTORE D LDI CRSHRS 1 PHI RC POINT RC TO DISPLAY IT LDI CRSHRS 0 PLO RC ae CALL DISPLY AND GO SHOW IT AT CURSOR POSITION BR CURS5 GO DO IT ALL AGAIN CRSHRS EQL 0200 LOCATION OF CROSSHAIRS DISPLAY LIST CRSTOR EQU O1FE LOCATION OF CURSOR STORAGE X THEN Y LISTING 6 Moveable Cursor Routine
5. generation nsi appears So there are always i generations visible There is chosen for a 15x15 matrix but theoretical there will be a continued growth on an infinite grid An advantage of e Ortho as caleidoscope are the many starting possibillities but the nicest results you will get with symmetrical patterns In the figure you see the development of one point for i 2 Nach generation could be represented by a color but if you have only black white IV The program is written in Assembler and will run on a ELFII RAM and 1861 V chip Some suggestions In M OOBO the value 403 is similar to i 1 404 to 2 Z with i etc In M OOA2 you could change the condition one neighbour User jeseriptions If you set reset RUN the Q Led goes on Put in the desired coordinates Y X from 0 8 423 is Y 2 and X 3 followed by the Input key and the cell will appear on the TV sereen If there was already a cell on that piace it will disappear so errors could be corrected The hexadecimal Led s will display your inputvalue You can go on until the value is greater than ZEE Then the game will start and the computed patterns will appear on the screen If you want a new game set reset RUN and 1 2 5 X X x XX AXX X X xXx 3X X x C n 2 X X XX XX MX X X fisures Jevelopment f ne naint Mr
6. interface The cabinet top lifts for easy maintenance access and all parts are fastened with twist lock screws for fast removal The printer mechanism is a 5x7 dot matrix mechanism which prints 80 characters per second in 32 columns on 3 5 inch wide adding machine paper A complete set of schematics and adjustment procedures is supplied with the printer The ASCII interface uses 7 Bit ASCII in parallel To use the printer the buffer must be loaded with 32 characters one at a time and then a print command is issued To load a character into the buffer the character is presented in parallel on the data lines and the print command line is brought high The computer must then wait until the printer busy line goes high and back to low before loading the next character After all 32 characters are loaded into the buffer an ASCII carriage return hex D is placed on the data lines and the print command line is brought high Loading for the next line may begin after the print busy line goes high and then low Since the print mechanism works right to left if fewer than 32 characters are loaded they will be right justified on the line The print character set includes 9 9 A Z upper case only blank and 19 special characters A 2516 ROM is used to generate the print characters I believe a 2708 EPROM could be used to change expand the character set though I haven t tried this yet pRINT SAMPLE 12345
7. 819C change to the output port instruction for port used 67 on Giant Board NOTE Do not use the highest two pages of RAM when relocating this program as the highest page will be written over when the system is called and the second highest page will be written over when the Chip 8 bumps the stack down one page PAGE 28 Following entry of the relocated system it can be accessed by entering a long branch CO xx OO where xx is the high address of the first page of the system using the ELF keyboard Then hold the key down on the VIP keyboard when flipping the RUN switch up After entering the system utilized the system instructions in the VIP users manual to key in or examine programs VIP Chip 8 Changes address OOOA change to second page address of the relocated system 010B change to second page adsress of the relocated system 019A change to the output port instrcution for the port used 67 on Giant Board After loading a program witten in Chip 8 in pages 0200 to wherever flip the RUN switch down and reload 9B Bi FF into the first 3 bytes of RAM When the RUN switch is flipped up again the VIP game should be running For some reason my ELF refused to run programs properly when I used the 91 BB FF in the users manual for the first 3 bytes If a Chip 8 program is loaded on tape and then reloaded to the computer at a later date the Operating System MUST be called up first to initialize the registers prior to running the
8. PLO RA INITIALIZE RA INPUT LDI 04 PLO RB AND RB TIMER TRIGGER READ5 LDN RA AND ENSURE TIMER IS OFF BNZ READS LDI AND FULLY RESET READ10 SMI 01 A BNZ READ10 PLO RC INITIALIZE COUNTER TO ZERO LDN RB AND START TIMER READ15 LDN RA AND TIME IT BZ READ20 DONE YET YES INC RC NO BR READ15 KEEP GOING READ20 GLO RC PUT RESULTS IN D RETURN AND RETURN C Sub Picture Display Subroutine m ee 9 a eee v m mm The Analog Output Board when used an X Y graphics display on a scope provides the capability of displaying more than 55 000 individual points To provide storage for the ON OFF state of each of these points would equire 8KB of memory plus software to do the mapping between bits in memory and points on the sereen This would also require a storage scope since it would take many seconds to output the contents of memory to the display just once For many graphics applications most of the bits in memory are OFF since most of the display screen points are not lit This would result in inefficient use of memory and of the time required to output all those OFF bits An alternative technique is to store only the X and Y values of the points which are to be ON Although it now takes 16 bits of memory to describe each point in the list substantial memory savings occur for displays with only a few per cent or less of the displ
9. 8 BIT D A ADDRESS DECODE SOURCE 1 MA 24 LINE PARALLEL 1 0 PORT 24 LINES OF ii PROGRAMMABLE 1 0 FIGURE 1 ANALOG BOARD BLOCK DIAGRAM FIGURE 2 D A CONVERTOR STAIRCASE WAVEFORM IL E i la 36 uS 1 789 MHz CLOCK A3 36 T DS m ER ed ale F n D gt 3 ANALOG OUTPUT BOARD SCHEMATIC PART 1 Q OOOOOO OO cont from pg 32 A full set of instructions will be included with each board Delivery is four to six weeks Send all orders to Bernie Murphy 102 MeCraney St Oakville Ont CANADA L6H 1H6 e Note to U S members In the event that conversion of your money to Canadian currency is a problem either in terms of convenience or cost please feel free to remit in the equivalent amount in U S funds 30 50 in the case of this board This applies to all club offers and to membership dues as well PAGE 38 tiy t R z V ze sega gt 2 5K t up pus gt Vie Gr ween UN im PE E Vars bir reap x MC 7 at H m Vapp ir E05 R Ris RiR i 80k TV ays Rel AMAT EPI VV gt il PAO 1 Pas PA HS 16 q PAY He 10 Pas h S om PAC D Hg ta a 8 5 23 Pas pas o ji 3 PB s 6 PCO Pee ANALOG OUTPUT BOARD SCHEMATIC PART 2 20 K3 O E 18 ech e 17 Vy V Pct PCS Pc 6 Pc d P
10. Chip 8 program EF3 i 2 3 4 5 6 7 8 9 A B C D E F JAAA didi ddd ddd n l9 8 17 16 5 4 8 17 2019 4 ji3 16 15 ELF II GIANT BOARD RIBBON CABLE N Since 5v GND from other loc and EF3 do not appear on A 15 they must be jumper e 15 ations on the Giant Board to unused Pins on A 1 PAGE 29 Tom Pollard SOME BASIC BUGS Groton St Dunstable Mass U S A 01827 I have found some bugs in the netronics full basic Let command Let variable expression Tr fa 5 Print A B END A the letter E not the variable E Now change line 30 to 30 A Ef INT command The problem is that when a negative Whole number is INT The negative sine is lost Try A 00009 INT A PRA INT A PRA END Now add line 35 If A O Let A A 0000001 Note only use up to 6 zeros FOR NEXT command When the NEXT is encountered the program must scan from the beginning to the next command Not from the NEXT command to the beginning i o Try FOR A 1 TO 3 PR LOOP 1 NEXT A FOR A 1 TO 3 FOR B 1 TO 3 t 2 60 NEXT B END The only way to stop this is to use a different variable for line and line 60 Maybe some one with a disassembled basic program could help the basic bugs PAGE 30 Now for the HARD WARE o In RADIO ELECTRONICS DEC 1978 a math board very close to netronics was shown The clock for the math chip ran at HOOKHZ With a sco
11. LDN MEM O08 25200 BA AaETMPC F3 XOR 32D9 RETMLC OOED 18 INC CNT OOEL 50D9 BR RETMPO OOFO PAGE 0100 eplotroutine 0100 5C TERUG SEX TVS 0101 3907 BNQ QUIT 0105 8A GLO RGT O104 T5 XOR 0105 300C BR RTNMPC 1 0107 O4 QUIT LDN MEM 0108 320D BZ RENMPC O10A 8A GLO RGT F4 ADD 010C 5C STR TVS O10D D4 TRNMPC SEP MPC F8F9 PLOT ILDI ZF9 0110 AC PLO TVS 0111 84 GLO MEM 0112 A9 MONG PLO TMP 0113 8C GLO TVS 0114 FCOB ADI 8 0116 AC PLO TVS 0117 89 GLO TW 0118 FIMO SMI 16 0114 3312 BPZ MOD16 011C 89 GLO TMP O110 9 PLO TMP O14u 4C INC TVS 0111 89 GLO TMP 0120 FROM SMI 4 0122 331 BPZ MOD4 0124 FSCO LDT ZCO 0126 SHIFT PLO RGT 0127 89 GLO TMP 0128 3200 4 TERUG 012A 29 Dac IMP BA GTO Ser 0120 T6576 SHR SHR 0128 5026 pR SUITT 0130 PAGE 0200 TVSCRN O 0201 PAGE 0300 MEMORY O 0501 END PAGE 25 PLOT gt i EIGHT FOLD MIRROR i SYMMETRY I t V x cycle time Kaleidoscope 256x256 display LI t y x u y uM Lc D P i PLOT y x y y i u x y 5 i x 5 u y i x 5 y 5 i u y u x i u y x 5 y 5 u x i y 5 x 5 A Hardware Bug in the 1802 G Pick Box 1023 Botwood Nfld If your system uses interrupts and you are also outputting data using R2 as your X register you may find the data at M R X destroyed under certain circumstances
12. O Connector i 14 Pin DIP Connector 1 PCH IC5 1 90 LINE 2 PC5 ICS 1 0 LINE 3 PC6 ICS I O LINE 4 PCT ICS 1 0 LINE 5 GROUND 6 5V 7 N C 8 N C 9 N C 10 12V 11 12V 12 Vx OUTPUT OF PORT A DAC 13 Vy OUTPUT OF PORT B DAC 14 Vz OUTPUT OF PORT C DAC ii 24 Pin DIP Connector 1 4 PB4 7 IC6 I O LINES 5 PC2 IC6 6 PCO IC6 T PC5 IC6 8 PCT IC6 9 12 PAY 7 IC6 13 16 PAO 3 IC6 17 PC6 IC6 e 18 PCH IC6 19 PC1 IC6 20 PC3 IC6 21 24 3 IC6 Software General Description The 8255 programmable I O port must be initialized to the de sired configuration before it can be used This is a very simple process which involves writing a byte to the control port of the 8255 AO A1 1 The 8255 has numerous I O options available the reader is referred to the Intel Data Catalog 1978 pages 12 76 to 12 94 for further details For our purposes it is necessary to setup the 8255 for Mode 9 I O with Port A B and C low set for outputs Port C high can be set for either outputs or inputs since it is spare Control byte 80 sets all the ports as outputs while control byte 88 sets C high as inputs and all the rest as outputs Assuming the board is mapped into the low end of the I O Page the following code will perform the intitialization of the 8255 used for the D As LDI PHI RE POINT TO I O PAGE LDI 03 PLO RE POINT TO 8255 CONTROL PORT LDI 88 STR RE INIT THE 8255 Testing Prior to tes
13. PLOT 0039 OOOB AF PLO PLT 0038 F81E A1 F8D7 F846 F8D8 F8DA AP D3 7270 2278 2252 C C4 C4 F802 BO F800 AO 80E2 E220 AO E220 AO E220 AO E220 E220 AO E220 gt LDI PLO LDI PLO LDI PLO LDI PLO LDT PLO SEP INTRPT INT STACK SPR MAIN MPC GNRTIE GNE COMPTE CPE MPC interrupt routine RETURN LDXA RET INTRPT REFRSH DEC DEC NOP NOP NOP LDI PHI LDI PLO GLO SEX PLO SuX PLO SEX PLO SEX PLO SEX PLO SEX SPR SAV SPR STR SPR A 1 TVSCRN DMA A OCIVSCRN DMA DMA SEX SPR DEC DMA SPR DEC DMA SPR DEC SPR DMA DMA DMA DMA DMA SPR DEC DMA 003E 0044 0042 0044 0046 0046 0048 OO4B OO4D OOAE 0050 BARD 7B 5F5D 2707 E2 6CA4 6422 FFEF 2576 E4 F801 T754 DF 305 T802 EFOR 5598 PLO SEX PLO BN1 pR Clear memory tvscreen MAIN SEX LDI PHI M LDI PHI GHI PLO GHT STR INC GLO BNZ LDI PHI LOOP DMA SPR DEC DMA DMA REPFROH RETURN SPR INF 1 1 M EMORY A 4 IVSCRN TVS SPR PLO MEM TVS SPR STR MEM TVS MEM MEM LOOP 1 MEMORY MEM PHI CEL input data SEQ BNA nA SEX INP OUT SMI RPZ SEX LDI INTUT x x SPR 4 PLO MEM 43DEC SPR AEF BEGIN MEM 01 SM STR SEP PLT BR INPUT Compute new generation BEGIN IDI 02 OTR Bit GHI GHI SEQ D SEP LDN BNZ R
14. SALES Fred Pluthero 1013 Upper Wellington St Hamilton Ont 19 3S4 416 389 4070 PUBLISHING COMMITEE Dennis Mildon 44 Wildewood Ave Hamilton Ont L8T 1X3 416 385 0798 John Hanson 955 Harvey Place Burlington Ont L7T 3E9 416 637 1076 ADDRESS XX00 0 PAGE 11 SUMMARY OF UT4 CHANGES NEW DATA F8XXB3B5 F808A5 D5 E5 7155 6101 FBFEA3 D3 F824BE 3034 F89CA3 D30D D30A F83BA3 5 D5 F89CA3 D30D D30A D33F F89CA3 D30D D30A F89CA3 D33E D320 FB52 FB13 32DB 305B 3216 3A2B 3A2B 3A2B 3B2B 3A2B 3A2B 3234 3234 XX High Order Address Relocate Start routine See Dave Taylor letter Ipso Facto 17 Page 42 Comma CR LF Subroutine Syntax Error Routine Initialize Routine Change of Command Symbols now R now W now D New Branches to Eliminate need of P and M Branch to Comma Subroutine New Syntax Error Branches New Restart Branches PAGE 12 A D Barksdale Garbee 1601 Clayton Avenue Lynchburg VA 24503 ANOTHER_STEPPER After reading the ertiele by Mr Airhart in issue 9 I decided to submit the enelosed circuit which I have been using fer quite seme time 101 a 555 timer chip is wired to run as an astable escillater Speed variation is accomplished with R2 which a tr mmeriin ePd r to save space My computer a Quest Super Elf already has prevision fer stepping threugh memery when the
15. decrements the stack pointer and stores T the interrupted program s X and PC values 23 in this case in the stack position occupied by the now deceased output data On the next trip around the loop the output will be 23 and the program is shot Once known about you can program around this bug but I have not yet seen any warnings or information on this from RCA who surely must know about it Additional material on the Subject of interrupt processing was presented in issue 4 p 28 and 5 p 44 Editor FEELING POWERLESS een at For sale one power Supply with the following specifications 600 v 8 1 4 amp military supply 150 v bias supply 5 and 6 v AC filament supply This supply uses oil filled transfor i mers and is loaded with all Sorts of impressive front panel Switche Asking 40 or best offer gt Contact L Dunlop Apt 1501 36 Torrance St Burlington Ont Canada LTR 2R9 PAGE 27 TO VIP AN ELF Dave Taylor 2114 Comm Sq Box 5718 APO San Francisco Calif USA 96519 I performed minor surgery on my ELF II in the summer of last year in order to adapt it to the VIP format Basically I readdressed the operating system so that it would fit into the first 4K of my RAM then interfaced a Hex keyboard to one of my free bus connectors This arrangement was recently modified to utili
16. i22 PAGE 21 SYMBOL TABLE DMA START OORF LOOP 0001 INT RETURN OOD7 STACK 0002 SPR OO1E INTHPT OOD8 GNRTIE 0003 MPC OO2B REFRSH 00 9 RETMPC 0004 MEM 0046 MAIN OODA COMPTE 0005 GNE 0050 LOOP 0100 TERUG 0006 VRX OO5D INPUT 0107 QUIT 0007 VRY 0072 BEGIN 010D RTNMPC 0008 CNT 0079 LOOP 010E PLOT 0009 TMP 008A OUT 0112 MOD16 OOOA RGT 0090 OUT2 011D MOD4 0000 TVS 0098 OUT 0126 SHIFT OOOD CEL OOAO OUT4 0200 TVSCRN CPE OOA7 BACK 0300 MEMORY OOOF PLT 5 CYCLUS OBJECT LIST 0000 e ORTHO 0000 OOOE 0000 OOOF 0000 o BELFELD 0011 0000 NETHERLANDS 0012 0000 ee 0014 0000 REGISTERS 0015 0000 0017 DMA O pointer 0018 INT 1 interrupt 0014 OOOO SPC 2 stack pointer 001B OOOO MPC 3 main prog counter 001C MEM 4 dataarea 0010 OOOO GNE 5 adres gen counter 001E OOOO VRX 6 counter X 0020 VRY 7 counter Y 0022 CNT 8 counter neighbours 0025 TMP 9 workregister 0024 0000 2GT 10 workregister 0025 0000 TVSz12 TV area 0027 CEL 13 examined cell 0028 CPE 14 sub compute 0024 PLT 15 sub plot 002B 0000 002D 0000 ORG OO2F 0000 e initialization 0030 90B1 START GHI DMA PHI INT 0032 0002 B2B3 PHI SPR PHI MPC 00233 5 PHI GNEYPHT CPE 0035 0006 r801 LDI A 1 PLOT 0036 0008 BE PHI PLT 0048 F80E LDI A O
17. its negative voltage limit whenever IC10 pin 1 Q output of FF2 is at 5V This occurs between outputting to Port A and outputting to Port B of IC5 Listing 3 D A Converter Staircase Test LDI FF PHI RA SETUP RA TO POINT TO MEMORY MAPPED LDI 03 I O PAGE PAGE 44 PLO RA AND ANALOG OUTPUT BOARD CDI 80 I O PORT CONTROL BYTES STR RA INIT I O PORT AS ALL OUTPUTS CDI 90 POINT TO PORT A PLO RA LO0P3 GLO RB GET REGISTER VALUE STR RA OUTPUT RB INCREMENT THE REGISTER BR LO0P3 AND KEEP DOING IT Simple Applications A Introduction As a demonstration of the capabilities of the Analog Output board I have put together a simple application This consists of a small cross hairs type of cursor which can be moved around on an oscilloscope screen using a surplus 2 axis joystick The oscillo scope s X and Y inputs are driven from the Vx and Vy outputs of the analog board The joystick is read using 2 of the spare Port C bits These are set up as inputs and connected to some simple interface circuitry The software presented here is modular It consists of a joystick position reading subroutine and a sub picture display sub routine Either of these can be used to interface the joystick or the scope display to other applications with virtually no changes B Joystick Interface The joystick interface is simply a pair of 555 timers wired up as one shots The variable resistance elements of the joystick are
18. on the program appeared in IPSO FACTO he was kind enough to send me a tape of his program Subsequently I purchased the RCA Manual MPM 224 and found both to be very valuable tools However after using the UT4 program for some time I found it contained some illogical impractical or just plain dumb commands and routines In order to fit it to my own personal quirks I have made some changes to the program which might be of use to others First although I did not experience any problems with the TIMALC routine I thought it was best to load the time constant into RE 1 after initilization similar to the manner suggested by Dave Taylor in IPSO FACTO 17 This will help overcome any future problems as equipment ages etc I also felt it was rather dumb to put my machine through the REGISTER SAVE routine when there was no valid reason for doing this Consequently I established a new initialization routine at the be ginning of UT4 again identical to Dave Taylor s routine on Page 42 IPSO FACTO 17 e The result of this is to free up addresses XX16 through XX38 for other changes or new routines XX is high order address of My next thought was to bring some sense and logic to the three command symbols After all M and P do not really represent their true functions of Writing to memory or Running program Only M comes close to its function of Dump memory My solution was to use W for Write to memory D for Dum
19. value isn t important it must be Stable however In of problems check D1 R20 R23 and Rel Also check that the same voltage appears at pin 14 of the sockets for IC9 and ICT Install IC9 the D A converter chip connected to Port A of IC5 Do not install any offset resistors yet R6 R7 Load the test pro gram in Listing 3 and execute it This will cause the D A to gen erate staircase waveform at IC1l2 pin 1 covering its entire out put range and including every step Check this wavefom carefully using a scope to ensure it s correctness It should look approxi mately as in Figure 2 If the staircase pattern is not as shown look for a pattern which might signify which of the 8 input bits could be bad Check the 8 input bits all look OK then check the op amp which is used to convert the output of IC9 from a current to a voltage Remember that IC12 pin 2 is a virtual ground and hence Should be at ground potential Once the first D A is working install ICT and IC11 and check out the Port B D A Remember to change the address from Port A in the test program in Listing 3 Finally check out the 4 bit converter connected to Port C low Note that the staircase produced will have only 16 steps instead of 256 and that the output ranges from OV to about 10V Blanking Logic Check If blanking of Vz is required between setting new values of Vx and Vy then install 8 and IC10 The blanking mechanism simply forces Vz into
20. 13 22 78 15 22 52 17 CH CU DMA transfer TV 1D F8 00 AO 22 2 20 25 2 20 28 2 20 we ow m 2D 30 11 2F E2 69 MAIN 31 F8 80 AF SUBF 34 OF M C3 COUNTER 3C F8 50 B6 TIME 36 C3 A4 M CH RND NUMBER DELAY 41 43 64 DISPLAY NUMBER LEDS HB F8 01 DF 51 Rn Rn 1 5 1 till input key 1 59 FF D6 gt 216 HIT SE 04 FC 01 54 COUNTER 1 62 F8 02 DF KhK 65 30 3C AGAIN 6T F8 03 DF bANG PAGE 16 78 52 Cu BO E2 20 20 20 1E 69 AF AE A3 A2 A1 Cu AO AO A8 58 B6 A8 A9 07 07 A8 A9 EO AO EO co A5 BULLET 4 AGAIN TIME SUBF mm 2 A8 8A 77 77 C8 OC 55 55 88 88 77 57 C8 8C 45 51 AE 8A 45 57 SUBF SUBE MAIN STACK CNTT DELAY CONVERSION TO TV DISPLAY LI i i PISTOL LI i DMA TRANSFER FOR TV 05 74 FD 6 08 FE D2 08 80 TF F6 97 A6 A9 DF 8C 8A 8A 00 00 04 AT A9 DF 8D DF DF 8B DF DF 8B DF 00 00 00 PAGE 17 1 T TIME DELAY I 5 COMPUTE 5 5 random seed value 1 byt2 random seed value 1 byte STACK Rn MOD 5 ad lt gt x 5 D lt gt y x LOOK AT GIVEN BIT BY R7 AND R9 IF BIT EQUALS ZERO MAKE 1 IF BIT EQUALS 1 MAKE ZERO
21. 6799ABCDEF 00 2 0123456789 ABCDEFGHIJKLHNO PORSTUUMXYZ Ne HEX 28 2F HEX 38 3F HEX 48 4F HEX 58 5F I used the following routine to test printer operation With some modifi cation it should be usable as a print subroutine Loc HEX LABEL 00 90 01 B3B4 03 F81EA3 START 96 E3 97 F820A4 QA 62 LOAD B 3605 WAITBSY D 3E D WAITIDL F 24 10 84 11 3AGA 13 F81DA3 16 62 17 3617 WALTPRT 19 3E19 WAITFRE 1B 3003 1D CR 1E DATA MNEMONIC GHI PHI PHI LDI PLO SEX LDI PLO OUT2 B3 WAITBSY BN3 WAITIDL DEC GLO BNZ LOAD LDI PLO OUT2 B3 WAITPRT BN3 WAITFRE B START REMARKS De R3 1 0 R4 1 0 R39DATA ADDRESS X73 R4 32 LOAD COUNTER LOAD DATA TO BUFFER LOOP UNTIL PRINTER BUSY LOOP UNTIL PRINTER IDLE DECREMENT COUNTER D LOAD COUNT CONTINUE LOAD IF NONZERO R4 C R ADDRESS PRINT THE LINE LOOP UNTIL PRINTER BUSY LOOP UNTIL PRINTER IDLE REPEAT CARRIAGE RETURN 32 BYTES OF PRINT DATA This routine is written to mate with the hardware interface used if a different N line is used for print command the OUT2 instructions must be changed if EF3 is not used for printer busy the B3 and BN3 instructions must be changed The instruction at 1B will have to be changed to a valid exit except for testing As written the 32 bytes located at 1E 3D will be printed over and over The hardware interface I used is shown below data lines as the printer uses TT
22. 71 SFE5 7025 67FF 2075 D5D4 2F25 2F 22 n5p i O33 98F4 68D4 2E 7 C9 9 FAQF D42E 7030 D42E 5AFF 06335 FFFC Fi k FB D F SF SAMI 5F32 2F22 BS 89 200029 FESB FP29 3017 FEA oF pa 2FF7 5288 ngn 7BF 32AF a F 24 P147 REEI 2565F 3045 99n4 n4oF 2ED4 DS5D4 49D4 SACI ASD4 IIE 3AF 1 DA2E 2FFS OF 2b 78 D4OF F499 BABES 2aF5 amp FFE C230 eCall e e BRKCHK eee X CRCRLF input Byte e Input Hex e Build Address eel x CRCRLF e GETHDR eeilneee eePrint BAUDOT messages Mini Executive Loop QUEST A747 B547 A147 47 2E9 OOFD ACLS B316 S E3 86A3 CO2F 6B4E 2F 20 89D4 2560 2 99 3398 FEFE 2F37 D42F 2F O C4cy S9FA FF3A 2F25 D42F EEFF A3B ZAFC 0015 8200 8733 2052 0546 D42E 0233 5298 0056 6F3F D42F FE3B A28C 12B9 FD39 4589 7433 7E33 A547 A 0F2 D3EA4 A3SF E212 C22F 2F 00 D42F FEFE 25D4 2 888 9F30 25D4 ESFF FF 26 2209 D42E 22 CF AB 4B 3789 A899 4595 SB F 8355 FBFF Gm mp we ane t 2F9 32 F amp 7A D42F B930 AESF D42F BOF QAC 2FAG FS SCFB 0032 99 nha OF BS 3099 8FD4 OFBQ 2FR9 FRFF AC3 A C4 CHAE F830 CAGE 2FCO FEFFE 7BN4 OF NF FF32 CF7A 32CF 7ED amp 2FD OFF 30 6 TANK OF OF n42F DFn5 CkBC 2FE FF 1 Cuca FD9C n520 0000 2FF 4
23. CUF 432F 3420 0020 4259 5445 533A 2000 5000 3721 2191 0101 0129 101 1101 2195 0101 3219 0101 0101 0101 2101 02101 0101 2101 2101 3020 0921 2308 2501 1735 30135 F17 0031 QF2F 3030 1B3P 3321 1523 2E39 1927 1D1F 3DI1D 1327 3640 21 1 271N 2521 2017 OB19 353D 139F 0007 3050 1636 1529 0339 1F33 2F2E 2301 2101 0109 3060 0101 201901 0101 0101 2101 2191 6137 0101 072 0121 2101 0101 0101 0101 5 1 2121 0101 3050 D42F 207 D4OF 2504 2F22 2ESA 7504 5092 2 7 22A5 FF64 CA2E 9930 CCO1 3040 0101 0101 21n4 2F7F 33CC D42F 25n4 2F68 30 0904 2F P42F 7074 2E54 2 3AC9 D42E 50 0 8733 CC59 5209 F53 CC19 3ZAA D42F 2B2F 6030 S401 0191 0101 2191 0101 0101 0101 S FO 0101 0191 2101 2191 2121 2121 219D 2F9D 3 0 2F7F 2FN7 2FP2 2F9n B294 742F C72E 8E3 A C E Colour Video Board W M lt A ome ee S The colour video board which was described in issue 13 as a Wire wrap project is now available as a printed circuit board This circuit uses the Motorola MC6847 chip and can be used as high density 256 192 graphics display 32 x 16 alphanumeric display with intermixed 8 colour semigraphic mode or any other graphic mode in between The board contains an on board colour video RF modulator which outputs to any TV There are 27 different modes of operation and any of them can be called under software control This means that you can
24. EQ GHI GLO BZ DEC SIZP GLO BZ DEC SEF GLO SMI BPZ LOOF1 OUT1 OUT2 GNE x SPR PLO SPR PLO CPE PLO CEL BACK SPR PLO CNT VRY OUT4 VRY CPE INC VRX QUT2 VRX CPE INC VRY 14 OUT VRY VRX 0095 0096 0098 0099 009B 009D 009E 0040 0041 O0A5 O0A5 17 DE27 86 FFOE 5240 00A7 16 O0A8 0049 OOAA OOAC OOAE OOAF OOBO OOB2 OOB4 OOB4 OOBS 5 OOB8 OOBA OOBC 7 CORD OOBF I 0001 00C2 00 4 0065 00C9 OOCB OOCC OOCD OOCkE OODO 00D2 0005 00 5 0005 00D OOD8 OOD9 OOD9 OODA OODB OODC OODZ OOEO OOE1 F4 PAGE 23 INC VRY SEP GLO SMI BPZ INC SEP GLO XRI BNZ LDN INC IDL GLO SMI BL INC GLO SMI BL OUT OUT4 BACK CPE DEC VRY VRX 14 OUT VRX CPE DEC VRX CNT 01 BACK GNE STR CEL VRX VRX 12 LOOP1 2 VRY VRY 15 LOOP next generation LDN CYCLUS ADI STR SMI BPZ GNE 01 GNE 04 CYCLUS eeplot generations RE GHI SPR PLO MEM LOOP2 ADI 02 PLO SEX LDN XOR BNZ GHI GHI SEP INC GLO BNZ LDI PHI BR ORG x42 STACK O GNRTIE O x 4 SPR STR MEM SPR STR TVS PLT MEM MEM LOOP2 A 1 MEMORY MEM BEGIN 3 Compute testroutine RETMPC SEP COMPTE SEX GLO SHL SHL STR GLO ADD MPC SPR VRY SHL SHIL SPR VRX PAGE 24 5 A PLO Mim 51 9 RITMIC CONG 85 SL GNE 00 7 O4
25. IC there were three segments of code which were incorrect Address OOE8 should be C1 Address 0202 should be DH e The seven bytes beginning at 14B4 should be 23 AO OD 21 AO EE CH call the subroutine twice in succession in order to get the X and Y positions of the joystick handle Since all the timers are triggered every time any one of them is to be read then it is possible that say the Y axis timer is still timing after the X axis timer has finished The next call to the joystick read routine to read the Y axis timer would return an incorrect value unless the routine checks to ensure that the Y axis timer is off before it is trig gered This is done in the read routine in Listing 4 It is also necessary to ensure that the timer has been off a minimum amount of time about 300 micro seconds in my case to allow the timing capacitor to be completely discharged by the timer s Reset line Otherwise an incorrect value will again result This is also done the read routine in Listing 5 LISTING 4 JOYSTICK READ ROUTINE 1 Pass mask in D with set bit indicating which timer to read 2 Result 0 255 passed back in D 3 Register RA 1 RB 1 must point to I O Page Registers RA O and RB O are destroyed Register RC O is destroyed used as timer counter 5 IC6 CS is assumed to be the timer s trigger 6 SCRT mechanism modified to save D register is used for CALL an RETURN READR STR R2 SAVE MASK LDI 02
26. L logic It was necessary to buffer the I had trouble with the interface until reading the RCA 1802 manual which clearly stated the requirement for AND ing Nl MRD and TPB to insure memory data is available when the print command line is brought high PAGE 6 gt i gt PWR CONN 10 LL Sici ud uiid hd ud AN ANAIA gt 2 a i E J N to CDPLB0z2 1S wa PRCMD Ww Ww Dear Bernie We ve had several articles on EPROM Programmers but nothing on erasers There is an EPROM Eraser kit available for 25 00 U S from R W Electronics Inc 3203 North Western Avenue Chicago Illinois 60618 lb G4T4 1 lamp socket switch and G E ballast 896489 Instructions included with the parts show how to build the eraser Additional parts required include a line cord bread pan and small parts which are easily fabricated A 2708 can be erased in 15 20 minutes with the assembled eraser The kit includes a G E Ultraviolet bu The best buy I ve seen on 2708 s is 6 95 for the 450 NSEC version from Active Electronic Sales Corp P O Box 1035 Framingham Mass 01701 My thanks to all on the Executive Staff who produce this outstanding newsletter Sincerely Dick Thornton 1403 Mormac Road Richmond Virginia 23229 PAGE 7 Frederick K Hannan 10 Filosi Road ENHANCEMENTS TO 074 East Lyme Connecticut 06333 Shortly after Mike Franklin s article
27. N MP C o 2 PIN DIP CONNECTOR DAGO Power Consumption mA ew lt lt ewe 4030 2 i 4011 7430 1 3 8255 io 1408L8 x2 27 4028 4027 1458 x2 TOTAL Address Assignments ADDRESS USE 0 IC5 PORT A Vx D A 1 IC5 PORT B Vy D A 2 IC5 PORT C CO 3 Vz D A 3 IC5 CONTROL PORT IC6 PORT i 5 IC6 PORT B Spare I O 6 IC6 PORT C Lines T IC6 CONTROL PORT Analog Output Board Parts List IC1 2 4030 QUAD XOR GATES IC3 7430 8 INPUT NAND GATE TTL ICH 4011 QUAD 2 INPUT NAND GATES IC5 6 8255 INTEL 24 LINE PROG PARALLEL I O PORT ICT 9 1408L8 8 BIT DAC CURRENT OUTPUT IC8 4028 BCD TO DECIMAL DECODER IC10 4027 DUAL JK M S FF WITH SET AND RESET IC11 12 1458 DUAL 741 TYPE OP AMPS PAGE 40 D1 C1 9 12 16 C10 11 R1 5 R6 7 18 19 R8 17 20 22 23 R9 10 15 16 R11 21 R12 R13 R14 R24 MISC IN752A 5 6V ZENER DIODE 400 mw 0 01 ufd CAPACITORS POWER SUPPLY BYPASS 27 pfd CAPACITORS 47 K ohms 1 4 w RESISTORS OFFSET RESISTORS OPTIONAL SEE TEXT 5 K ohms 1 4 w RESISTORS 2 K ohms 1 4 w RESISTORS 10 K ohms 1 4 w RESISTORS 20 K ohms 1 4 w RESISTORS 43 K ohms 1 4 w RESISTORS 82 K ohms 1 4 w RESISTORS 12 K ohms 1 4 w RESISTORS 24 PIN DIP CONNECTOR 14 PIN DIP CONNECTOR 5 POLE DIP SWITCH PC BOARD External I
28. OR AC COUPLED SCOPES STR RB SEX R2 RESTORE RX e RETURN AND RETURN LISTING 5 SUB PICTURE DISPLAY ROUTINE PAGE 50 ea ewe we we ewe A MOVEABLE CURSOR ROUTINE e 4 Listing 6 combines the joystick reading subroutine the sub picture display routine withe some initialization logic to actually produce the moveable cross hairs display on an oscillo scope Some possible improvements to this routine might include entering it via a 30 Hz or 60 Hz interrupt to provide a constant refresh rate and hence a constant intensity display addition of turtle logic to allow the cursor to leave a trail behind it as it is moved around the screen addition of a straight line calculator routine to allow the generation and display of a straight line between 2 points Selected using the cursor and an additional pushbutton wire into PC5 CURSOR Cursor Display Centred at Joystick Position 1 This routine reads the joystick displays the cursor and repeats 2 Cursor location from joystick is stored at O1FE X and O1FF Y pointed to by RD f 3 Cursor pattern sub picture is stored at 0200 RC points to t 4 RA and RB are used as I O Page pointers ORG 0100 ASSEMBLE AT 0100 CURSOR LDI FF INITIALIZE RA 1 AND RB 1 TO POINT PHI RA I O PAGE PHI RB LDI 03 POINT TO I O PORT CONTROL BYTE PLO RA LDI 88 AND INITIALIZE IT STR RA CURS5
29. RETURN PAGE 18 Flip ilop The object of this game is to change a row of eight X s XXXXXXXX to a row of eigth O s 00000000 By typing the desired rownumber plus Input key you can change an X to O or reverse but it will also change another position too Can you figure out a minimum strategy User remarks 1 Set reset UN and the Q led woes on Tip the Input key and the line of X s will appear on the bottom of the TVscreen 2 To reset the line to all X s same game type 00 To start a new game new set flip flops type a value greater than 08 plus twice the Input key i The hexadecimal Led s will display the number of guesses 4 When you ve got all O s the Q led goes on The program will now reset like typing 00 5 If there is no solution use twice the same number The second time you ll get another flip flop The secret of this program lies in the nasty property of pseudorandomgenerators that they always need a starting value Each starting value correspond to one set of flip flops So totally you ll have about 256 play variants For more change the randomgeneratorroutine Much XOXXOOXO Titerature David Ahl Pasic Computer Games 1978 page 65 ITEMS FOR SAIE 1802 Full Basic level III board and tape Netronics ASCII vidio board video monitor Mome made ASCII key board and power supply Are all one cabinet with matching table All for 250 Tom Pollard Groton St Dunstable Mass U
30. S A 01827 617 649 6641 R1 B2 B3 BR BE AF A5 A2 C4 AO AO AO 4 5 A6 AB 5B A8 BC mn subi main un intrpt RND Starter counter A8 load row of X s Peset 9 on reset same game reset new flip flops remain 54 77 T 09 7D 6E 6E DE A8 01 55 counter 1 E8 AB test for AC PAGE 19 compute other flip flop mod9 all O s if yes Q on Subroutine pseudorandom Rn Rn 1x5 1 AB subroutine X O O8 AC 08 AD 4C CF O gt X 14 5B D load X 08 B 5C 4C 5B 5D load C 74 5 PAGE 20 ORTHO The game was originally invented by the mathematician Stanislaw Ulam On may points there is correspondence with the Game of Life but while Life simulates the complex world of living organism imitates Ortho growth In nature we find frequently that this happens through symmetrical ground patterns like crystals The subject of this game is an orthogonal symmetry Definition You play on a grid of squares or Vedi m A cell has finite states of appearence bl wh colors In the beginning of the pame you can occupy cells or not Any further course is fully determined through a defined set of playing rules Ortho In the next veneration is always that cell occupied which has perpendicular only one neighbour All cells of generation n dies when
31. The following section of a telemetry program brought this problem to my attention 00 Bsel DB Call hex keybd inp sub 01 32 B2 exit exit this function 02 ul if input 00 03 FD SDI oy 02 02 Do not accept input over 02 05 3B BNF 06 00 Bsel 07 Alarm 63 Out 3 Output bank select data 08 22 09 22 Dec R2 Point R2 to clear area OA 6B Input 3 Input alarm data OB 64 Output alarm data to display oc 22 Dec R2 OD F8 00 LDI 00 OF 52 Str R2 output 00 to reset alarms 10 63 Out 3 11 37 B4 Br to input rtn if input on 12 00 Bsel 13 30 14 07 Br to Alarm Output bank select again PAGE 26 The X reglster for this program was R2 and while it was running an interrupt driven real time clock was also running at 60 interrupts second When the hex keyboard data was entered the correct output data would be displayed for a fraction of a second and then would change to 00 A scope showed that output port 63 data was changing from X1 or X2 to X3 for no apparent reason 63 is only a 4 bit output so X means not significant After some chip replacement and thought the reason was found and was not a failure or direct program error In the 1802 an interrupt can occur between any 2 instructions and output instructions are self incrementing Therefore if an interrupt occurs directly after an output instruction as at address 07 the stack pointer R2 now points 1 byte above the output data The interrupt then
32. a Re Gass wh Ore ee Ee E wx local origin of sub picture at 0 0 0 8 FIGURE 5 Sub Picture Relative to Local Origin PAGE 49 TABLE 1 Cross hair Sub Picture Display List CRSHRS BYTE HEB 1890 FRA 100 LEFT ARM BYTE HEC 00 EE 99 00 99 BYTE 30 E8 HEA LOWER ARM BYTE 09 00 FE 400 00 BYTE 98 00 06 09 RIGHT ARM BYTE Ou 490 02 09 400 00 BYTE 30 08 OO 96 UPPER ARM BYTE 90 04 HOO 92 HOO 09 BYTE 30 LIST TERMINATION NOTE Every second display dot used DISPLY SUB PICTURE DISPLAY ROUTINE ee eee ee ae eee ee ee ee ae ee ee eee 1 RA 1 and RB 1 must point to I O page RA O and RB O are destroyed 2 RC must point to start of display list List terminator is X 80 H 3 RD must point to the display origin of the sud picture in 8 bit absolute values e DISPLY LDI 99 INITIALIZE PLO RA RA TO POINT TO X OUTPUT LOL 91 PLO RB AND RB TO Y OUTPUT 3EX RD SET X TO RD LDXA STR RA MOVE CRT BEAM TO LOCAL ORIGIN LDX STR RB _ DEC RD RESTORE RD AND START DISPLAYING DISP5 LDN RC THE SUBPICTURE XRI 30 BZ DISP10 DONE YET X280 YES LDA RC NO ADD X VALUE TO ORIGIN ADD IRX STR RA AND OUTPUT IT LDA RC ADD Y VALUE TO ORIGIN ADD STR RB AND OUTPUT IT DEC RD BR DISPS GO BACK FOR NEXT POINT DISP10 LDI 90 MO 2 CRT BEAM BACK TO 0 0 STR RA F
33. ay points turned ON There is also an execution time saving since no mapping of stored information to display points needs to be done The data bytes in memory are out put directly to the Analog Output board as X and Y data values It is also possible to use and ordinary scope as a display device since outputting the list can be done repetitively fast enough to provide a visually continuous display When considering the movement of images in the display however another problem becomes apparent Whenever an image is to be moved it is necessary to stop the display calculate the new values of all the X and Y points in the display list then resume displaying with the image now in the new position This is a cumbersome time consuming process A simpler way to provide moveable images involves the concept of a local origin This is not the same as the display origin at X Y 0 0 In fact it is not directly related at all to the ana log output display Instead it is related to the image or sub picture which it provides an origin for Figures 4 and 5 illustrate the difference between the display origin and a local origin Several ways have been developed to describe a sub picture the form of a display list which is relative to a local origin After due consideration of the impact of these methods on the soft ware required for such future enhancements as sub picture rotationa and zoom I elected to use X Y pairs of 2 s com
34. computer is in LOAD ty repeatedly pushing the Input button Therefore I simply eennested the output ef this eireuit te the input switeh This and the variable resister fer speed are the main differences between my design and that ef Mr Airhart Te use the circuit en a Super Elf press Reset Lead Memery Pretect and the flip the toggle switeh When the desired leeatien approaches flip the teggle switoh again Then press the Input switch manuslly te reach the xa t le ati h Te alter memory step te the loeatien befere that which is to be changed press the Wait button and preceed te lead data normally Some Super Elfs may require a buffer on the outaut of the circuit I doubt if the devise eould berusad st all by anyone with a TEC unit but thess whe ewn the Super Elf will find it an indespensible device REFERENCES 1 Super Elf Users Nenual 2 Redie Sheek 555 data sheet PARTS LIST IC1 555 timer chip C1 2 mfd C2 l mfd R1 5K R2 500K trimmer S1 SPST toggle PAGE 13 Richard N Thornton 14 03 Mormac Road Richmond Va 23229 AUDIBLE CONTINUITY TESTER This device can be used to test continuity end provide some indication of the amount of resistance in a circuit In operation the probes are touched to the points to be tested If the circuit is open the speaker is silent If there is continuity even at high resistence 10 megohms or more a tone will be heard The tone decreases in frequency as resis
35. d their adjacent pins and PCB runs in different ways The problem is most likely an open or shorted connection on the PCB and can be quickly tracked down by observing the pattern of the errors produced Be sure also the test the I O lines right at the point where the IC pins go into the IC package as well as on the associated PCB con nections If IC6 is to be used install it now and repeat the above test Be sure to add 4 to the low byte of all I O addresses used in List ing 2 so as to address the correct IC Listing 1 Address Decoding and Read Check LDI FF SETUP RE TO POINT TO MEMORY MAPPED PHI RE I O PAGE LDI 09 AND ANALOG OUTPUT BOARD PLO RE LOOP 1 LDN RE READ THE BOARD REPEATEDLY BR LOOP 1 Listing 2 8255 I O Port Output Test LDI PHI RA SETUP RA TO POINT TO MEMORY MAPPED CDI 03 I O PAGE PLO RA AND ANALOG OUTPUT BOARD LDI 80 I O PORT CONTROL BYTE STR RA INIT I O PORT AS ALL OUTPUTS LOOP2 LDI 22 POINT TO PORT C PLO RA LDI FF STORE FF INTO STR RA PORT C DEC RA STR RA PORT B DEC RA STR RA AND PORT A LDI 02 POINT TO PORT C AGAIN PLO RA LDI 00 STORE 00 INTO STR RA PORT C PAGE 43 DEC RA STR RA PORT B DEC RA STR RA AND PORT A BR LOOP2 GO DO IT AGAIN SAM D A Converter Checks Install IC12 Using a DC voltmeter check pin 7 of IC12 It should read approximately 2V This is the reference voltage for the D A Converters Its absolute
36. des a block diagram of the Analog board The board can be mapped inbto any contiguous 8 bytes in the memory mapped 1 0 Page by appropriate settings of the 5 pole DIP switch Just about any oscilloscope can be used for display purposes A bandwidth of about 100KHz is adequate and the scope can be AC or DC coupled Two points are woth noting though First be sure the scope common is grounded to the same ground as your computer Some older Scopes such as my DTI scope have the chassis common capacitively coupled to BOTH Lines of the incoming 110V AC power and NOT ground ed This generates a substantial ground current when it is con nected to the computer ground The second point concerns AC coupl ing especially the AC coupling used for Intensity or Z axis inputs on most soopes This is simplly a capacitor with one end sitting at Several hundred volts and the other end hanging around waiting for you to hook it up to your computer When you do so the surge cur rent into the capacitor burns out the output op amp on the Analog Board It can also give you a healthy shock The solution is to hook a 100K resistor between the Scope s Z axis input ground BEFORE hooking up to your computer This same rule applies to the X and Y axis inputs of AC coupled scopes like mine 00 7 170 SEL A2 A7 00 7 A0 1 BLANKING PCO 3 Y 24 4 BIT D A 5 LINE ine PARALLEL pao 7 1 0 PORT 8 BIT D A 0 PC4 7 4 LINES OF
37. kets I would leave it out altogether With regard to the LOAD problem with Full Basic I have installed a switch on my Giant Board which allows me to jumper bypass the mods required by the Math Board Full Basic will run without the mods if no l MNO RR math function is requi CASSETTE LOAD or Full The switch is a s left corner of my Giant Board red For normal use of the Giant Board Basic LOAD I close the switch If I am RUNning Full Basic the switch is opened imple SPST slide switch Super Glued to the top I drilled a small hole in the plastic cover to accomodate a push pull wire bent paperclip The switch reconnects the cut foil trace to restore the Giant Board to its original configuration When the switch is opened the Math Board modifications take effect Postscript After writing thi the same manner as the adding the following t Address XXC3 F89CA3 D30D D30A F83BA3 F85BA5 D5 ch This change is not lis S I decided to change the SEMI COLON input in COMMA input This was easily accomplished by o the previous changes Type Routine Pointer Type CR Type LF Set Subroutine Pointer to READAH Set Main PC for Return Return NOP ted in the summary tenere tarn a anaes AITIrTs VT VO a n W CONTINUED FROM PAGE 2 HARDWARE COORDINATOR Anthony Tekatch RR 1 Caistor Centre Ont LOR 1E0 416 957 7556 HARDWARE PRODUCTION AND
38. kville Ontario Canada L6H 1H6 EXTRA See pg 32 for Colour Video Board offer PAGE 4 A CHEAP PRINTER R N Thornton e 1403 Mormac Road Richmond Va 23229 I recently decided to add a printer to my micro a home brew ELF based on the Popular Electronics articles Naturally I wanted manuscript quality quiet operation low power variable paper width up to 14 inches tractor and or pinch feed high reliability etc etc After writing to a number of suppliers I found that such a printer would cost roughly 20 times my total computer invest ment to date Even a used Selectric typewriter was 350 without interface Finally I saw an advertisement in ON LINE now the Computer Shopper for a 32 character per line printer for 95 This represented quite a compromise relative to my original desires but was affordable After further consideration I realized the printer would be a perfect companion for a 32 character per line video display I ordered the printer from Carl Poulson 1601 Roder Ct Streamwood Illinois 60103 sending my money order for 95 00 U S The printer arrived in about 3 weeks via U P S It was well packed and weighed about 45 pounds The printer is a used reconditioned model made by Bunker Ramo and contains a dot matrix print mechanism made by the Victor Comptometer Company The cabinet is about 18 x16 x65 and contains the power supply printer mechanism and electronics for the ASCII e
39. mix high density graphics with the alphanumeric mode to give you access to very sophisticated games The mode control is memory mapped at FFOO The video display starts at E000 which makes the display compatible with the Quest 12K BASIC If you have a BASIC interpreter 12K or 6K version then you can use all the readily available game programs which use memory mapped displays In addition to all the above mentioned features there is another The board can hold a total of 16K bytes of static RAM The RAM starts at C000 and ends at FFFF The memory uses 2114 RAMS The board is the same size as Tektron boards and uses the Tektron bus and also fits the new A C E backplane The price is 35 00 Canadian U S members see note below The parts can be bought for under 50 so for under 100 you can get a fully expandable video display board At this time only bare boards are available Full kits may be available to local members at a later date if there is enough demand cont on pg 37 x OUI 307 nos uu E 4508 ee ee r z lt gt 9 35pF VDU 1802 VERSION 2 EE 30Vd 31 PAGE 5 we 07 wen TPA A7 AO 9 57 H4 uns 06 05 A6 04 AS 4 LL LI 1 or A LIIS T 00 ARREMAN A0 Il Lt LI LIII n F Leno
40. nge routines are the same as RCABUG The printed Dump routine has been modified to get a UT 4 style listing like Loc Data xxxx 2222 1111 aaaa bbbb cece Also after each page an extra blank line is entered to seperate the pages from each other If you wish this can be changed 1 page 2ebc FF page 2EBC TF 4 page 2EBC The GETHDR subroutine has been changed to first ask for the location and then how many bytes This to keep up the tradition of UT 4 Rest me only to thank Tom Crawford and Brian Millier for their wonderful ideas Memory 2F60 2882 2raf 3000 30A5 30ED Mini Rceabug ecd nit Return PRTADR DR eePRINTED DUMP J Outbyt 1A oe Outbyt 1B eeASCII PRINT oe Messages Outees 6 DELAY Baudot e Look up Memory Change e Stack area 300C S 10 2E00 BYTES 0300 2F00 2F10 2E20 2F30 2FAg 2F50 2FEO 2 7 2 2 9 2 2EBO 2 2EDQ 2FF 60 2FF0 2F 26 2F12 2822 2812 2F 40 2F50 2F cg 2F70 2F R C499 B447 7AC 7124 F472 72 g3F C na2F 2B2F 7304 2F25 SABES SCF 6 2F25 73B D536 7304 87A9 322A A799 BEg87 gp FEFE CACA BSET A447 3080 EFS6 2430 F OBE 2237 220 Fena 2ED4 2 97232 3348 38r 1 F53F 2F13 N5F 6 COOF DaF B7D4 597 ASF 3B 7B 4 GAF F828 A3D3 E247 A247 2E46 2E2F 7386 7393 2En3 E5
41. p memory and R for Run program This is accomplished by the following changes Address XX4A from FB24 to FB 52 XX52 from FB1E to FB13 Further I felt it was superfluous to have to enter the character M or P when entering a command The changes to eliminate the M and P are Address XX4C from32D6 to 32DB XX 56 from D3 to 305B Now the three commands are W XXXX A Data Write to memory D XXXX of Bytes Dump memory R XXXX Run program The second change was to add a space after the prompt symbol and to change the prompt symbol from to my personal favorite The change of the prompt symbol is easily accomplished by substituting for the 2A at address XX I had a little difficulty in getting a space after the prompt however At first I merely moved the beginning of the START routine from location XX39 to XX37 and added D320 to the end of the prompt print string For some reason I have yet to figure out this would not work My final fix was to add another TYPE routine pointer after the first two D3XX SEP SUBS Thus my start is now Address XX34 F89CA3 routine pointer XX37 D30D TYPE CR XX39 D30A TYPE LF XX3B F89CA3 XX3E D33E TYPE XX40 D320 TYPE space The branch instruction at address XX14 must be changed to 3034 for the new START address Also the RESTART branch instructions at addresses XX99 and XXB9 should be changed to 3234 Lastly I felt it was rather st
42. pe I found out that my clock ran at 200KHZ So I ran this PRogram 10 For A 1 TO 1000 20 NEXT A 30 PR END 0 END It took 6min hisec So to get the oscilater up to 2 I changed Cl from 100pf to a 47pf Now the program ran in ljmin 22sec Now with out a data sheet I kept on going untill I got a math error When I did a math operation So I went back to 18pf cap With a clock of 833KHZ the time is now 3min 10sec To see if your clock is running slow try the program It should be about in 22sec If not get a hold of a scope and a junk box of caps MINI RCABUG Baudot Style Eric Chong Noord Cura Cabai 49I Box 151 San Nicolas ARUBA Neth Antilles After having read two fine articles on the UT 4 Mike Franklin and Dave Taylor serial monitor I worked them out and have ever since enjoyed the Tiny Pilot and Text Editor from Kilobaud Being a radio amateur and still in the proud possession of an old Model 15 Teletype Printer 60 wpm I would like to get my hands on a hex dump program in UT 4 style listing With an awful slow prin ter a listing as UT 4 is the only way to speed up the dump a little So by combining two excellent articles fI F 10 RCABUG by Tom Craw ford and I F 6 Baudot Teletype by Brian Millier and some small changes I brewed a mini monitor with memory change and hex dump possibilities I left the Cload and Cwrite subroutines out as the main purpose is machine dump listings The memory cha
43. plement 8 bit integers This is illustrated in Figure 5 where the end points of the cross hairs are labelled relative to the local origin Table 1 provides the display list for the cross hair Sub picture to be used in this demonstration Th2 display list is simply a list of X Y pairs of 8 bit integers which the co ordinates of the points to be displayed relative to the local origin The list is terminated by 80 hex 127 base 10 in the byte normally occupied by the next X co ordinate Therefore every display list should contain an odd num ber of bytes PAGE 48 The sub picture display list is related to the display origin at the time it is output to the display This provides for simple fast movements of sub pictures around the display an important requirement for dynamic displays The subroutine to output the sub picture at a selected point on the display is given in Listing 5 A feature of this routine is that it will always move the beam to the required display point before outputting the sub picture and will move the beam back to the display origin 0 0 afterwards This is required for AC coupled scopes like mine N Sub picture origin gt 4e am amn oa 5 ae UD 4 ae lt lt lt lt lt 0 8 CB OO
44. rphy 102 McCraney St Oakville Ontario Canada L6H 1H6 ASSOCIATION OF COMPUTER EXPERIMENTERS 1980 81 EXECUTIVE PRESIDENT PAST President SECRETARY Treasurer EDITOR ASSISTANT EDITOR CONSULTANT DRAUGHTSMAN MEMBERSHIP COORDINATOR PROGRAM COORDINATOR TRAINING COORDINATOR SOFTWARE COORDINATOR John Norris Ken Bevis Mike Franklin John VanLierde John Myszkowski Fred Feaver Bob Silcox John Myszkowski Bernie Murphy Don MacKenzie Jeff Davis Fred Feaver Ken Bevis Wayne Bowdish 3 Country Club Toronto Ont 416 239 8567 220 Cherry Post Rd Mississauga Ont L5A 1H9 416 277 2495 24 Duby Rd Acton Ont L7J 2 1 519 853 3421 40 Arlington Ave Toronto Ont M6G 3K8 416 656 3185 99 Augusta St Hamilton Ont 416 529 0250 105 Townsend Ave Burlington Ont 416 637 2513 L7T 1Y8 562 Forestwood Cr Burlington Ont 416 845 1630 L7L 4K3 102 McCraney St Oakville Ont 416 845 1630 L6H 1H6 3124 Bonaventure Dr Mississauga Ont L4T 202 416 676 9084 8 Hillview Dr Grimsby Ont L3M 4E5 A C E EXECUTIVE e continued on Page 10 149 East 33rd St Hamilton Ont L8V 3T5 416 388 7116 PAGE 3 EDITORIAL COMMENTS 0 gt Great news We are pleased to announce tha
45. t we are now in a position to take orders for not only De Facto as promised last time but also for three club designed boards M This book collects in one volume all of the best material in issues 1 18 with all known errata corrections incorporated into the articles many diagrams improved and a comprehensive table of contents It is therefore not just of interest to those who are missing back issues De Facto is unbound but is three hole punched to fit standard binders comes in a plastic shrink wrapping and has a three colour cover The price for De Facto is as follows to Canadian addresses 15 Canadian funds to U S A addresses 18 American funds to overseas addresses 20 American funds sent airmail De Facto is a truly great collection of 1802 related material and at the price the best bargain around BOARDS 1 8K EPROM Board as depicted in issue 17 and described in issue 16 2 Kluge Board also depicted in issue 17 3 Club Backplane also depicted in issue 17 The list of parts for the EPROM board was given with the article on it in issue 16 page 28 All boards are sold as bare boards schematics and parts lists enclosed The price for each board is to Canadian addresses 20 Canadian to U S and overseas 20 American All orders boards and De Facto should be sent to Bernie Murphy 102 MeCraney Street Oa
46. tance between the probe tips increasew A noticeable decrease in frequency can be noted at resistances as low as 1 000 ohms As drawn below the audible tone is about 5kHz with the probes shorted If a lower frequency is desired iweamyethe value of RL or play with the values of C and R2 To increase the volume reduce the value of RA or increase the value of C2 end reduce R3 I use a 9 V transistor radio battery but the circuit works well at 5 V With probes disconnected power supply drain is not measurgble with a 0 50 mA meter With probes shorted the current is about 20 mA The circuit is essentially that shown in National Semiconductor s CMDS DATA BOOK from AN 118 CMOS Oscilietors where the frequency is given as 1 f Ad 2C RURI B2 693 eae Observations The probes appear to be open no tone when connected across a diode or a capacitor of less than about OA uF Capacitors greater than O4 uF produce a tone similar to a short circuit With the probes connected to the input to my oscilloscope I see a differentiated square wave with out 20 35 V peak to peak When the scope input is DC the pulses are continuous When the scope input is switched to ac the pulse train dies out in about 15 seconds but repeats if the meter leads are reversed I don t understand these things just report them Perhaps someone more knowledgeable can supply some insight The high voltage pulses might damage sensitive devices b
47. ting the board it is assumed that it has been assembled as follows all three hole jumpers soldered in place and checked for contin and shorts as applicable this assumes the board is not plated through all resistors capacitors and diode D1 are soldered into place except offset resistors all IC sockets are soldered into place if used the 5 pole DIP switch is installed A Buss Interface Checks The first stage in testing the completed Analog Output Board is to check out the address decoding and control buffering logic This involves installiing only IC number 1 2 3 and 4 on the board then plugging it into the system buss Using variants of the program loop in Listing 1 exercise the board and test for proper board select IC3 pin 8 and chip select signals ICH pins 10 and 11 using a logic probe or preferrable an oscilloscope Try different settings of the address select switches on the board in combination with PAGE 42 different low byte values in RE Check that the control signals used on the board MRD MWR AO A1 all appear correctly Since there are no data buss buffers on this board no further checks of the buss interface are necessary B I O Port Checks Install IC5 on the board Using the program in Listing 2 exer cise the I O Port Check that all 24 lines mapped as outputs for this test appear as both a O and a 1 If a problem appears then modify the test routine to exercise only the bad lines an
48. upid to have to manually input a e LINE FEED after the use of a COMMA CR in the Write to memory mode After all our machines are pretty smart and can do this kind of simple task with ease In order to make any changes in the area of the program concerned with the COMMA input some room was needed to fit in a subroutine to automatically insert a CR LF after a comma was typed Initially I thought I could free enough space by moving the SYNTAX error routine from address XXCA through XXdl to the now free area at address XX2B through XX33 Although this did not give me enough room for my subroutine I proceeded with the relocation of the error routine as it gave me the opportunity to consolidate the present two routines XXCA to 1 and XYF8 to XYFE into one Also by placing the routine immediately ahead of the START routine the ERROR routine would naturally fall through to the START routine These changes are Address XX2B F89CA3 TYPE routine pointer XX2E D30D TYPE CR XX30 D30A TYPE LF XX32 D33F TYPE PAGE 9 Several branch instructions must also be changed as follows Address XX59 from 3ACA to 3A2B XX63 from 3ACA to 3A2B 5 from to 3A2B XXAF from 3BCA to 3B2B XXD9 from 3ACA to 3A2B XXEO from 3ACA to 3A2B Now to automatically insert the CR LF after a comma in the Write to memory routine I inserted a new subroutine at XX16 as follows Address XX16 F89CA3 TYPE routine pointer D30D TYPE CR D30A TYPE LF
49. used as the resistances in the timer RC network Therefore when the timers are triggered the durations of the resulting pulses are pro portinal to the position of the joystick The timers are calibrated So that the maximum pulse width corresponds to about 250 counts of a Software counting loop The timer circuitry I used is shown in Figure 3 A subroutine to read the position of a selected axis of the joystick is given in Listing 4 As noted in the Notes to Figure 3 I used the CS signal to IC6 to trigger the timers There are a few tricks involved in the coding of the joystick read subroutines The first one concerns the fact that the sub routine only reads one axis at a time It is therefore necessary to e FIGURE 3 JOYSTICK INTERFACE CIRCUIT R 5K VARIABLE RESISTOR 1 AXIS OF JOYSTICK 100 ohm TRIGGER IN TIMER OUT e Notes 1 250 pf on Trigger line is to filter transients which were causing false triggering 2 1 1 RC should be about 7 5 mS in order to provide a full scale output of about 250 with the recommended read routine at Clock 1 789 Mhz Build 2 identical circuits one for each joystick axi A suggested trigger for both circuits is CS for IC6 pin 5 on the Analog Board Connect the X axis timer output to PCT and the Y axis timer output to PC6 for use with this demonstration as written ew ww ERRATA em ca o In Building a Better BAS
50. ut don t seem to harm the 4001 IC in the circuit 5 9v BATTERY ON OFF Iili R4 ISOR 2N2222 OR EQUIV SMALL SPEAKER PROBES RX GAMES 1802s PLAY P Thyssen Julianastead 39 5951CH Belfeld Netherlands Limburg The following are several games I have just written The Orthogame is the first I have ever written in Assembler so be careful with iL Till yet I am just writing games for fun I ve also a lot of Tiny Basic programs but most of them have a Dutch text The nicest ones are a word guessing game 2K RAM like WORD in David Anl s 101 BASIC programs Coldik Escape from a war prisoner s camp This one I wrote after analyzing the Quest game The first is in Dutch but the second has the same text as in Byte July 1979 A problem is that I have them only on tape They require at least 4 5K RAM without Tiny Basic Maybe someone ean rewrite the Dutch games If someone sends me one or both items below I ll send him my games on cassette tape I 11 pay also for the copy eost by sending a post check 1 The RCA CHIP 8 language and copy of programs and user manual I ve tried to get it in Holland and wrote RCA USA but never heard anything 2 The PILOT 2K language also terminal and tape routines and copy of user manual for my ELF II and video display Netronies PAGE 15 RUSSIAN ROULETTE 00 90 B1 B2 B3 B8 05 B9 BF 07 F8 2F OA CT A2 OD F8 13 A1
51. ze the output port on Giant Board in order to open up the bus position The keyboard I constructed was designed along the same lines as the RCA keyboard shown in the VIP users manual I have enclosed a listing of the address changes I made and a drawing of the keyboard interface I have also utilized the Chip 8 program written by Paul Meows but I found it to be too slow when running programs which required a fast keyboard response such as Lunar Lander in the VP 710 manual The key assignments for game 11 VIP Card Match Game located at addresses 0375 through 0384 Hex at the end of the program listing Just by looking at RCA s listing compared to the shuffling I did to match my keyboard arrangement I can see no logical arrangement but I know that it s there somewhere My recommendation would be to start shoving in new values between 00 and OF in those address locations and see what popped up on the screen This method may seem unprofessional but it is quick and easy Concerning one other thing in the VIP users manual I found that the tape LED wired across the tape in the line to be one of the most useful additions I have made to my ELF II when loading tapes which may contain several programs VIP Operating system changes address 8001 change to new first page of relocated program 8056 change to address of second page of relocated system 800A change to the output port instruction for port used 67 on Giant Board
Download Pdf Manuals
Related Search
Related Contents
SPICER. AXLE Dossier de presse TUP Nokia 1280 1.36" 81.92g Blue 3A1-RD1/T11-FITC HP EliteDesk 705 G1 取扱説明書を見る Sanyo PLC-XP200L User's Manual Pruitt-Inahara® Carotid Shunt - LeMaitre Vascular eIFU Website Copyright © All rights reserved.
Failed to retrieve file