Home

TABLE OF CONTENTS

image

Contents

1. The 1979 meeting made minor changes to the Fig FORTH model publishing their resultant vocabulary in a document entitled FORTH 79 Therefore you will generally find three ver sions of FORTH on the market Fig FORTH Distributed by the FORTH Interest Group P O Box 1105 San Carlos CA 94070 There is no Z80 version only an 8080 one FIG only offers the source listings at 15 each along with an installation manual for another 15 You must enter the program by keyboard Be warned that the 8080 source listing has over 4000 lines of code FORTH 79 Most F 79 systems that you will see advertised are Fig FORTH that has been modified to match the standard FIG does not of fer F 79 FORTH at this time pico and polyFORTH FORTH Inc where Charles Moore the orig inator of FORTH lives has their own versions of FORTH on the mar ket PicoFORTH 500 is an entry level system designed to whet one s appetite for polyFORTH 2500 While embracing the FORTH 79 standard polyFORTH is greatly ex panded and offers multiuser and target compiling features Check with FORTH Inc at 2309 Pacific Coast Highway Hermosa Beach CA 90254 for more details on these two products How do I get started I suggest that you buy the book Starting FORTH and get used to the language A good supplier of all FORTH literature and some soft ware packages is Mountain View Press MVP P O Box 4656 Moun tain View CA 94040 They advertis
2. 3t 93 9 3t MH Lj Micro Cornucopia Number 3 December 1981 5 Reverse Video Cursor By Andrew Beck One of the most common means of highlighting characters on a video terminal is by inverting the char acter that is producing a black char acter on a white background Char acter highlighting can greatly improve the appearance of data on the screen by making certain charac ters stand out It just so happens that the most popular cursor employed is also of the reverse character type As supplied by Digital Research the Big Board does not incorporate either reverse character highlighting or a reverse character cursor Here I will show you how a few minor changes to the Big Board can pro duce both of these The cursor as implemented on the big board is either an underline char acter for blank spaces or a blinking character Lets look at the schematic and see how this blinking character is produced and what changes have to be made to convert it to a reverse video character How it works U21 generates a 4 Hertz square wave at pin 8 Pin 12 of U37 is connected to bit 7 of the video display RAM and is ANDed with the 4 Hz square wave by U37 pins 12 and 13 As the memory is scanned by U47 and 50 pin 11 of U37 will be high for each character that has it s bit 7 set during the time that pin 8 of U21 is also high This is the blink clock This clock is fed to U25 pin 2 where it is ORed with the outpu
3. DEFW 36 BYTES OF DEFW DEFW DEFB OFCH y WRITE INDEX MARK COMMAND DEFW 1 126 BYTES OF FF DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW gj TRACK DATA STARTS DEFW 36 BYTES OF DEFW DEFB OFEH WRITE ID ADDRESS MARK COMMAND DEFW FIRST BYTE OF WORD TRACK DEFW sFIRST BYTE OF WORD SECTOR DEFB OF7H 3 CRC COMMAND DEFB 1 311 BYTES OF FF DEFW 1 DEFW 1 DEFW 1 DEFW i DEFW 1 DEFW 6 BYTES OF DEFW DEFW DEFB OFBH WRITE DATA ADDRESS MARK DEFS 128 ACTUAL DATA AREA DEFB OF 7H sWRITE CRC COMMAND DEFB 1 27 BYTES OF FF DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW i DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 END OF ONE SECTOR ON EXECUTION THE PRECEDING SECTOR DATA WILL DUPLICATED 25 TIMES TO GIVE FULL 26 SECTORS OF DATA THE 256 BYTES FOLLOWING THE TRACK DATA WILL BE FILLED WITH FF s WHICH FILL THE AREA BETWEEN THE LAST SECTOR AND THE NEXT INDEX THE WD 1771 EXITS THE WRITE TRACK MODE RECEIPT OF THE INDEX SIGNAL END end Unica A Set of Tools Review by David Thompson When you think of software you usually think of compilers as semblers applications programs perhaps a disassembler You don t usually think of simple task doers that make life with a computer a lot easier That s what Unica is a work bench full of fast ea
4. Like FORMAT2 COM it has been made safe to use It also does a track by track verification displaying a V for each good track and an N for each bad track Minor Bug If you accidentally en ter a letter other than A B C or D for the drive select you might select a drive you didn t expect pretty remote chancethough This mod was done by Gary Mion OTHELLO COM was originally from the CPMug but since it is one of the few games that I occasionally have time or inclination to play I thought I would include it PR COM and P COM are little pieces of software I wrote to do two things First they modify the BIOS slightly to make sure that a character _sent to the display in the C register re turns in the A register The PFM moni tor doesn t bother to do this and some programs including adventure re quire it Second they put the Ist device on serial port B at 9600 baud and they stuff two nulls 00 every time they see an ASCII LF or CR These characters are inserted simply to flush the SIO MODEM7 COM MODEM7 ASM MODEM7 DOC This is a modem pro gram from the CPMug See Andrew Beck s modifications for MODEM7 in this issue 15 WANT ADS The following folks are reaching you for only 20 cents per word If you would like to reach the same audience send your words and 20 cents for each to Micro Cornucopia 11740 NW West Rd Portland OR 97229 Big Board
5. Turns a file into a series of one word lines The output of this routine can be piped through srt com and then to the printer or another file etc Note I have barely touched on the capabilities of each of these tools when used alone Unica s thorough and very well organized manual really covers the individual com mands However even it is only able to suggest a few of the multi tude of possibilities for simple com mand line combinations to do very powerful things Conclusion Unica by itself is the best bargain in software I ve seen The quality of the user interface the documenta tion and code is absolutely first class When combined with XM 80 this is a set of assembly language programming tools that is un touched anywhere In a future issue we ll look at XM 80 extended mac 80 the language in which Unica is written By itself Unica is available for 95 If you in clude XM 80 it s 195 from Andrew Klossner Knowlogy PO Box 283 Wilsonville OR 97070 Micro Cornucopia Number 3 December 1981 Users Disk Number 1 Because of incredible interest we are making user disk 1 available The price is 15 00 which includes disk and postage However if you send two disks one containing one or more articles and one blank we ll put user disk 1 on the blank disk and return it to you free The disk containing your contribution s will be filed in a folder with your name on it and your material will be
6. machine language routines time critical applications can be divided into fast acquisition definitions over seen by slower but higher level commands However all does not smell like roses in the FORTH garden It is a new language and has only recently undergone standardization Pro grammers now agree on about 150 basic definitions but these are usu ally only the core of most available versions of FORTH The added defi nitions are of course non standard Contrary to some statements made in print FORTH is not as fast as truly compiled languages such as the Microsoft BASIC and FORTRAN compilers There is considerable overhead in secondary definitions A FORTH function would take 2 3 times as long to run as a similar func tion in optimized compiled FOR TRAN Because the stack is used heavily for argument list passage it is easy to make errors In addition since stack parameters have no labels 8 Micro Cornucopia Number 3 December 1981 clarity of programming suffers Comments are often left out of defi nitions because of their compact ness FORTH is known as a lan guage that is easy to use but hard to read Some data types such as floating point are not normally supported The FORTH 79 standard does not include floating point however you are certainly not prevented from in cluding your own in software or with an arithmetic processor such as the AM9511 There is no typing of variables By t
7. ples are presented in FORTH form in word explanations and also in diagrams Chapter 3 covers a basic FORTH editor Commands are included to operate on lines and strings Having used several FORTH systems I can say that the names of the commands may differ from one FORTH system to another but the functions per formed are almost always the same There is no standard for editors at this time Brodie also presents words to list load copy and save FORTH block buffers and explains how to remove definitions from the dictionary Chapters 4 and 6 36 pages cover conditional branching structures such as IF ELSE THEN and also loop structures such as DO LOOP The branching conditions are shown as segments of railroad track with switching to control the program path Chapters 5 and 7 52 pages cover fixed point arithmetic and number formatting Brodie makes the point that most operations can be per formed in integer arithmetic with appropriate scaling Brodie primarily covers FORTH Inc methods of defining words count field with 3 unique charac ters In code and parameter areas he uses FORTH Inc methods Your system may be different Still the basic concepts are the same and you will find little diffi culty in tracing your FORTH Ex plaining the innards of FORTH can be very difficult and Brodie has done about as well as anyone that l ve seen Chapter 10 34 pages covers basic input output commands fr
8. 2 amp o 5 oc o dc cor 3 l q gt t q Lz T 5 z na Ou z gt Le xr 4 o m e 4 o a A 20 dq a qa d HE J 0 x Nos zi Ir J a q i 5 F q 2 2 rn gt EF z gt REE x ce Ll u on d a yo q z on m z sw T on sm ul z x O T H x O23 A ha 5 Jo 0 ul 5 o 2 ra e t z fed a E z Ee m bb L o ran z Oo J I de 2 Lr TI x 2 zzul 3 roO q J m i goo a x 0 mt LS o 0 x H z mq x ne t of q 5 ul m am x gt eram amy O 0 q p N oD x O a c uo 2 2 a3 d 2 e amp 2 e n He G Goaaoanono q GAAL G 2 om x 20 u Jc a c ww gt 2 2 m zi gt G 9 z r a3 m gt amp X 0 Fr 2 lt OG 2 p 39 5t ui 3 3 3 9 3 3 HM HM 3X 5 3 L 3 39 r4 3 3 9 f 9
9. BC 127 LDIR 3FILL DATA AREA COPY ONE SECTOR 25 TIMES LD HL SECT1 sSTART OF SECTOR 1 DATA LD DE SECT2 6DD ONTO END LD BC 186 23 3186 BYTES PER SECTOR LDIR THAT MEMORY NOW SET UP SECTOR NUMBERS IN PROPER SLOTS IN TRACK IMAGE LD HL SECTNO POINT TO SLOT IN FIRST IMAGE LD DE 186 OFFSET TO NEXT SECTOR LD BC 26 254 1 3B CTR CeSECTOR LD HL C STORE SECTOR INC C 1 INCREMENT SECTOR ADD HL DE POINT TO NEXT SECTOR DATA DJNZ SECTID DO ALL 26 PUT TRAILER OF FF S AFTER WHOLE TRACK LD HL SECT1 4836 IPOINT AFTER DATA LD A 1 LD DO 256 BYTES FOR INSURANCE LD HD INC HL DJNZ ENDMRK SET UP TO FORMAT DISK IN DRIVE B LD C 1 3B IS DRIVE 1 CALL SELECT OR A 5 FOR SELECT SUCESS NZ NOTSEL jUNSUCESSFUL DON T FORMAT DO SETUP FOR FORMATTING LD A 66H GET BYTE AT NMI VECTOR PUSH AF LD A OC9H INSTRUCTION LD 66H 3 STORE RETURN DO THE FORMAT DI sCANNOT INTERRUPT LD C 0 START WITH TRACK LD B 26 326 SECTORS PER TRACK PUSH BC sNEED THEM LATER SEEK NEXT TRACK IN SEQUENCE CALL SEEK POP BC 3 TRACK AND SECTOR CTR BACK PUSH BC yWILL NEED AGAIN PUT TRACK ID S IN PROPER PLACE IN TRACK IMAGE LD HL TRKNO yPOINT TO POINTER IN IMAGE LD DE 186 OFFSET FOR EACH SECTOR LD HL C STORE CURRENT TRACK NO ADD HL DE POINT TO NEXT SECTOR DJNZ TRAKID we ws we we m DEFW 1 DEFW 1 DEFW 1
10. FORTH editor amp decompiler disk 15 00 20 00 TINY BASICIN ROM 35 00 40 00 This two ROM set takes control of the system just like FORTH does handling its ownI O loading Basic programs and object code routines on and off the disk or out of the third ROM This little Basic is great for controller and utility applications MORE ROMS Fast monitor ROMs for speed freaks and our famous better than Texas character ROM for screen freaks Fast Monitor ROM 25 00 Version 2 2 Character ROM 25 00 Send Big Board number with monitor ROM orders Monitor amp char ROMs 5 00 each if you send a fast ROM and a stamped self addressed return envelope 30 00 30 00 BACK ISSUES each 3 00 5 00 Because of the demand from new subscribers bless their hearts we are keeping back issues in print ISSUE 3 ISSUE 1 ISSUE 2 Power Supply Parallel Print Four MHz Mods RAM Protection Drive Motor Cont Configuring Modem 7 Video Wiggle Shugart Jumpers Safer Formatter gt 1 2 PFM PRN 1 2 PFM PRN Reverse Video Cursor Plus More 16 pgs Plus More 16 pgs Plus More 16 pgs ISSUE 4 ISSUE 5 Keyboard Translation Word Processing at MicroC More 4 MHz Mods Two Great Spells Modems Lync amp SIOs Two Text Editors Undoing the CP M ERASE Scribble a Formatter Plus More 20 pgs Plus More 20 pgs C compiler and source for all for under 40 FREE Your c
11. Mar 1981 System dependent parameters X b cci c line 23 4define BANNER Small C Plus version AQ 1 11 May 1981 X System dependent parameters X genui ascci c line 687 int 69061 sqLl1qsymdzlocptr b cci c line 687 int sqEL6J X ptr sqt1qsymilslocptr line 701 zpop s 5 b cci c line 701 ptr readloop label ptrliginci zpop local queue X record local level x record local level clean up stack clean up stack 14 Micro Cornucopia Number 3 December 1981 sr com search files for a pattern The speed of XM 80 really shines through here not to mention the al gorithm This routine took 1 minute and 30 seconds to search for the string cie in30 files containing 80K of text It found with word suffi cient and displayed the filename and the line srt com sort lines in alphabetic order I ve used srt as a filter after wx so that I get an alphabetic list of all the words I ve used along with a count of the times I ve used each one It also works great with lines of source code tee com pipe the input to two outputs wc com word counter This rou tine calculates a character word and line totals for all the files in its argument list For the input wc the routine would display the totals for each file on the disk wx com extract words
12. about it they said that was the only way it was available So now he is also using the Crowe assembler to do his BIOS mods His attitude to ward the SD Sales assembler is a bit jaded right now Jade Computer Products 4901 W Rosecrans Hawthorne CA 90250 Dear Editor I was delighted when I received your first issue In fact I meant to write and say Nice Job but some how didn t get around to it Now that issue 2 is out it s time to sharpen my pencil and tell you what I think of your publication Here goes My main impression is that it s very professional I especially like its somewhat folksy informal flavor Layout is attractive and easy to read Since your main focus is the Big Board I d suggest a standard box maybe on page two that says whata Big Board is and where to get it Without it the new reader might be very confused Your article on supporting a lan guage is most interesting My opin ion is that FORTH should definitely not be the selection FORTH is not really a modern high level language by any stretch of the imagination Both Pascal and C meet the criteria you mentioned in the article One strong argument for C is UNIX I firmly believe that UNIX will be THE operating system on the soon to ar rive flood of high performance per sonal computers In the near future most serious users will own a per sonal computer with a million bytes of RAM and a 16 or 32 bit processor
13. cata logued for use in the magazine and or on user disk 2 Any article or piece of software you ve written for the system qualifies you for the free copy However it s best to check with us about the subject so we don t get three or four of the same thing Contents of User Disk Number 1 COPYALL COM quickly copies a disk track for track including tracks 0 and 1 onto the object disk you specify If thereis anything on the object disk it just gets written over The routine is very fast and also verifies what it has written by reading the object disk and comparing what it reads against mem ory After reporting an error to the screen the program continues the transfer These copy programs are from the CPMug COPYFAST COM does the same thing except it does not include tracks 0 and 1 CPLUS MAN is the manual for Small C I was going to put Small C on this user disk since it is public do main But the folks at Alpha Omega who did the extensions to Small C said they would sell Small C for 25 in stead of 50 if they could support the language through Micro Cornucopia So it s now available from Alpha Omega Computer Systems Inc PO Box U Corvallis Oregon 97330 The price is 25 00 post paid for an 8 CP M disk containing the compiler the source for the compiler in Small C the documentation and some dem onstration software The compiler gen erates 8080 assembly code which must be assembled with M8
14. interactive language available As most of you have built your own computer you are more interested in the insides of a com puter than someone who purchased an Apple or TRS 80 and are more likely to enjoy using FORTH It will be my goal to convince you of this What is FORTH FORTH is a programming lan guage that is ideally suited to the mi crocomputer environment It is an interpreter allowing you to write routines debug them and throw them away without ever having to leave FORTH It is a compiler be cause each new definition that you enter is changed into a list of the ad dresses of each FORTH word that you called upon in your routine When the definition is subsequently executed FORTH calls each address like a subroutine It is an assembler so that you can write routines di rectly in machine language and link them to other routines written in higher level FORTH In other words FORTH combines aspects of an operating system an assembler and a high levellanguage into one FORTH starts with about 40 primitives or basic definitions that are written in machine language later operations are defined in terms of these basic words A standard version of FORTH will have around 100 secondary definitions in addi tion to the 40 primitives mentioned above These secondary words con sist of a list of addresses of pre viously defined words When a sec ondary is executed FORTH will call each of the routines whose a
15. like the 68000 With that sort of processing power a system with the limitations of CP M simply won t survive Sure 64K Z80 systems will be around for a long long time but when a full blown 68000 system with a megaby te of RAM is available for 2 000 we ll all start using UNIX or one of its imitators As you know C is the language that UNIX and all its related appli cations software was written in This all seems like a compelling argument for adopting C as your most favored language But since we are the developers of the CW C compiler I guess this whole line of reasoning is predictable Again good luck with your ven ture I don t own a Big Board but I still very much enjoy your maga zine Ron Jeffries The Code Works Box 550 Goleta CA 93116 Editor s note Thanks for the kind comments Ron Regarding information about the Big Board we ve had an amazing number of questions about the system from folks who see the magazine but who aren t fa miliar with the system So Jim Tanner will be running his famous Everything he could cram into a single page ad ad beginning in issue 4 As for UNIX I know what you mean Iam using a UNIX like set of tools on my system now called UNICA and now that I have them I wonder how I got along without them On the other hand C stands very well on its own merits For applications ranging from simple ma chine control to business and scienti
16. ny a uj d bitte TA m LU PUn JUR PP PP Sn ba Siih December 1981 TABLE OF CONTENTS Using Modem ne PLAT C 4 M re ARR a bn heen N mee OOS Ls DS Moving ORENSE 5 Reverse Video 6 PORTH WOrds iO pie EV RR EPA Ra edendi ve ve dus 8 Safer Formatter ope zd poit ten LEES dens 12 Tp Senta 14 REGULAR FEATURES 1 2 Notes From Garland 5 Designer s Corner 9 Book Reviews 10 Users Disk 1 15 Want Ads PEE 16 NOT eo WN AT Td Source Code i SN eT NES The Q C compiler includes the full source code for a major e LA 2 2 extension to Ron Cain s Small C For switch case do while goto Assignment operators Improved code generation V Command line arguments argv and argc WA 1 O44 4 Conditional and comma operators iy KOR I O redirection 1 O library written C pA Generates code for M80 or ASM or MAC Q C does not include float double long unsigned or short static externals initializers sizeof typedef casts structures and unions multidimensional arrays ifdef tif undef line For
17. only 95 including shipping in the US and Canada you get the full source code and a running compiler with sample programs on disk along with a Wellauritten user manual Requires 48K CP M system We also sell CW C a C compiler which runs on a 56K CP M system It supports structures unions multidimensional arrays ifdef and will selectively search source library files for functions used by your program The 1 library for CW C is written almost entirely in assembler CW C costs 75 and does not include source code for the compiler CW C and Q C both grew out of Small C but were developed independently Jim Colvin of Quality Computer Systems implemented Q C We are offering Q C for the many Small C fans that want the source code to an extended compiler We still distribute the original Small C source code on disk for only 17 CP M is a trademark of Digital Research Inc CA residents add 696 tax Visa and MasterCard welcome TheCodeWorks 550 Goleta CA 93116 805 683 1585 MICROTIME 80 8 MASKABLE INTERRUPTS 1 10 SECOND TO EVERY MONTH FULL TIME AND DATE FUNCTIONS TO 1 1000 SECOND A PLUG IN REPLACEMENT FOR THE Z 80 CPU CHIP PROGRAMMABLE INTERRUPT REGISTER PROGRAMMABLE ALARM REGISTER NICAD BATTERY BACKUP COMPLETE KIT _ ASSEMBLED amp TESTED Add 2 00 Postage amp Handling N J Residents Add 596 Sales Tax Send Check or Money Order to AB COMPUTER PRODUCTS BOX 571 JACKSO
18. receive a refund for the balance of the subscription Issue 1 was published in August 1981 SUBSCRIPTION FORM It s OK to brag INTEREST Fanatic 5 None 0 O00000 What are your hardware software needs now In the near future What kind of exciting adventure misadventure are you working on If you get the idea that this document is as interested in enlisting your aid and ideas as it is in getting a sub scription you re right Lots of people are willing to subscribe lots of people have ideas and we d like to encourage lots of people especially you to take an hour or two and put ideas and needs and accomplish ments down on paper or disk Then we can pass them along to others and that s what this journal is all about L r mmy 4 US CAN MEX Other Foreign USER SDISK 1 15 00 20 00 Over 200K of software especially for the Big Board duding 1 Two fast disk copiers 2 The manual for Small C 3 A Z80 assembler 4 Two disk formatters 5 Othello 6 A serial print routine 7 Modem software 8 Documentation for all the above See issue 3 page 15 for more information about the disk Also see Using Modem7 in the same issue for information about configuring the modem software USER S DISK 2 15 00 20 00 Especially for folks with single drive systems and those who want to try their hand at extending an assembl
19. retrace and the horizontal retrace with the output of U66 pin 8 This is the NOR of the CPU access and bit 7 of the character RAM U94 then inverts this signal and feeds it to pin 11 of U74 If bit 7 of a character is set a high will be clocked into U74 when the character is addressed if the CPU is not accessing display RAM and the vertical and horizontal retrace signals are not low Now that we have a signal which will go high only when the ad dressed character s bit 7 is set it should be a simple matter to make it invert the character Part of U94 is used to determine the logic level of Circuit modifications for reverse video cursor U12 9 SC3 U73 18 U37 12 Micro Cornucopia Number 3 December 1981 the video signal fed to your monitor By connecting pin 10 of U74 to pin 9 of U94 we will produce an inverted character whenever bit 7 is set If you would normally connect JB1 10 and 11 together then omit the connections to U94 pins 11 and 12 and connect U10 pin 8 directly to pin 11 of U74 If you want your cursor to be a re verse blinking box then connect pin 11 of U10 to pin 11 of U37 instead of 12 We now have the hardware to generate reverse video but PFM will still use an underline character for a cursor at blank spaces Below is a listing of the area of PFM that must be changed to produce a reverse video cursor all the time I am writing a new CRT driver for PFM and will submit it
20. start the port drivers take it easy I don t know the Zilog mnemonics yet Please use the comment area to explain what the instruction is doing No it s not obvious Be especially careful about loops What condition controls the branching What bit in what register does this and how did it get changed If someone out there is doing a lit tle custom programming and EPROM burning please let me know Tom Mason Professional Engineer 2402 Audubon Rd Akron OH 44320 Editor s note Using CP M sells for 8 95 The CP M Handbook sells for 8 95 5 borne CP M User Guide sells for 12 95 By the way when Sig Peterson got his copy of the first issue he mentioned that the RAM deus familiar It should have he designed it Thanks Sig The PNP power transistor for the RAM protection circuit came out of a Ra dio Shack PNP power transistor pack You know one of those 20 for 1 99 bub ble packs None of them were marked _ Like I mentioned in the article it is prob _ circuit looked alittle ably the ultimate in non critical applica tions if it is PNP if it works and if it looks even vaguely like the illustration then it will do fine If the salesman really insists on a device number you can tell him you want an MJE2901 It hasa DC gain of 25 60 V breakdown and is rated for 10 amps and 60 watts It is incredible overkill but it should be available for a couple of bucks just
21. the system is run ning 4 MHz locations F115H and F119H should be changed to 125 base 10 to maintain a 1 second in terrupt Schematic of MHz generator The 74160 replaces U96 941 504 Notes from Garland Texas By David Thompson talked to Ditigal Research about the problems people were having getting the board to run 4 MHz and they suggested If you have trouble making your system run after making the latest 4 MHz modification verify that the following parts are A 4MHz parts Z80 A PIO A SIO A and Plus you probably need to change the PFM monitor ROM to a 2716 1 The 1771 and the 300 ns RAM should work but you could check them as a last resort They are working on a modifica tion to a minifloppy interface AB Computers so that one system can interface with both 5 and 8 inch drives This way you could easily transfer files between 5 and 8 inch disks He also mentioned that the 5 inch interface depends on the 1771 s clock separator rather than the more dependable external separator used for the larger disks He is trying to make the external circuitry work for BEN 5 inch also 3 3 9 39 3 x S 3 N 2 ci x i Lac 2 g n z rd r x m m a dc 1 q z z P 5 36 er m ra D E a gt 2 ar
22. 0 and linked with L80 Since this is public domain software we can write utilities add features etc and pass them around the group along with small itself This way it can become a group project for those in terested in hands on compiler experi ence the compiler is written in Small C and compiles itself Also software written in Small is compatible with the full blown versions of C CROWEASM COM This program is designed to assemble the Z80 in struction set using standard mne monics defined in the Zilog Z80 As sembly Language Programming Manual If you don t have this book you probably should pick it up Rules for writing the source code are as defined in the manual except that only upper case characters are recog nized for labels operators and operands All defined pseudo opera tions are implemented except MACRO ENDM COND and ENDC i e no macro instructions or condi tional assembly All assembly time functions are implemented plus two borrowed from Intel HIGH and LOW The object code output is in ab solute format only FORMAT2 COM This is an update by John Jones of his original FORMAT Z80 It will not format drive A if it can t format a disk in drive B It prompts you to insert a disk in B and if for somereason it can t format that disk it simply repeats the prompt C gets you back to CP M E FORMAT3 COM amp FORMATS 780 This is another update of the FORMAT Z80 program
23. AT program this means that the disk in drive A will be formatted This is a new version of the diskette formater which not only corrects this bug but also loops back to a prompt message The program will now allow additional disks to be formatted and gives you the chance to change your mind and abort the format before it starts This formatter is called FORMAT2 COM on user disk 1 TITLE 6860 DISKETTE FORMATTER THIS PROGRAM 15 DESIGNED TO FORMAT SINGLE DENSITY SINGLE SIDED SOFT SECTORED 8 DISKETTE INTO STAN DARD 128 BYTE SECTORS DESIGNED TO RUN ON THE FERGUSON BIG BOARD Z 80 COMPUTER IT TAKES AD VANTAGE OF THE WD 1771 FLOPPY DISK CONTROLLER S CAPABILITIES FOR SEMI AUTOMATIC FORMATTING WRITTEN J P PROMPT MESSAGES ADDED JONES 4 20 81 J P J 8 15 81 MODIFIED J P J 5 14 81 ORG 100H 15STD CP M COM PROGRAM 3 BOOT EQU CP M BOOT MONITR EQU OFOOOH WILL USE SOME OF PFM BO WDSTAT EQU 10H 31771 STATUS ADDR WDCTL EQU WDSTAT CONTROL STATUS WRITE WDATA EQU 13H 31771 DATA 1 0 HOME EQU MONITR 1EH DISK HOME ROUTINE SEEK EQU MONITR 21H SEEK TRACK ROUTINE SELECT EQU MONITR 1BH SELECT DRIVE ROUTINE ENTRY EQU 5 3CP M ENTRY POINT GETCHR EQU 1 1GET CONSOLE CHARACTER FUNCTION PRTSTG EQU 9 PRINT STRING ON CONSOLE CTLC 3 CR EQU 13 i LF EQU 10 CRLF EQU LF amp 2564CR WHY USE TWO DEFB S PROMPT WITH INSTRUCTIONS AND ALLOW EXIT START LD DE PROMPT IPOINT TO MESSAGE LD C PRTSTG CP M F
24. HL WITH CURSOR POINTER AND monies LITTLE INSURANCE THAT HL CAN T OR CRTBAS EVER POINT OUTSIDE THE CRT MEMORY RES ACHES REMOVE CURSOR BY DISABLING INVERT PROCESS CHARACTER PASSED IN C CALL DUTCH NOW STORE A NEW CURSOR CHARACTER AT THE CURSOR LOCATION as SET 74 HL THEN TURN 7 TO ENABLE INVERT LD CURSOR SAVE HL AS CURSOR POINTER LD SP SPSAVE IN A BITDAT RES sSWITCH BACK THE LOWER 16K OF RAM QUT BITDAT A EI 3 INTERRUPTS ARE SAFE AGAIN POP POP DE POP HL AREA CHANGED RET i S an r 3 3 DUTCH LD DE LEADIN T LD DE GET LEAD IN SEQUENCE STATE OR A JP NZ MULTI 3JUMP IF IN A LEAD IN SEQUENCE LD ELSE PROCESS CHARACTER IN C 2 FORTHwords Column by Arne A Henden My first taste of FORTH came as an astronomy graduate student at Indi ana University We had purchased an IMSAI 8080 microcomputer in 1976 to automate the position read out of the 36 inch reflecting tele scope of Goethe Link Observatory We spent 8 months of effort the first 5 months using paper tape I O be fore being able to buy a floppy disk drive creating a 5000 line 8K byte assembly language program that calculated sidereal star time and the direction that the telescope was pointed There just had to be a better way This early
25. N N J 08527 201 370 9889 MICRO CORNUCOPIA 11740 N W West Road Portland Oregon 97229 503 645 3253 Editor amp Publisher David J Thompson Technical Editor Ruth Fredine Burt Graphic Design Sandra Thompson Typography Patti Morris amp Martin White Irish Setter Cover Illustration Gerald Torrey MICRO CORNUCOPIA is pub lished six times a year by Micro Cor nucopia of Oregon 11740 N W West Road Portland Oregon 97229 SUBSCRIPTION RATES e 1 yr 6 issues EM 12 00 1 yr Canada No 15 00 1yr other foreign Sy 20 00 subscription orders payable in United States funds only please ADVERTISING RATES Available on request CHANGE OF ADDRESS Please send old label and new address SOFTWARE HARDWARE AND BOOK VENDORS Micro Cornu copia is establishing a group of re viewers We would very much like toreview your Big Board compatible products for Micro C Please send material to Review Editor Micro Cornucopia WRITER S GUIDELINES All items should be typed double spaced on white paper or better yet on disk Your disk will be returned promptly Payment is in contribu tor s copies LETTERS TO THE EDITOR Please sound off is a trademark of Digital Research Inc Copyright 1981 by Micro Cornucopia All rights reserved MICRO CORNUCOPIA Dec 1981 Bah Humbug Journal of the Big Board Users No 3 Now We re Rolling Su
26. UNCTION 4 PRINT STRING CALL ENTRY 9 LD C GETCHR KEYBOARD ENTRY CALL ENTRY 3 CTLC 3ABORT JP Z BOOT jgIF C YES i FIRST SET UP ONE TRACK S DATA IMAGE j NXTBYT we PROMPT NOTSEL 3 NOBMSG EADER DO THE TRACK WRITE LD HL LEADER POINT TO DATA LD D 20 120 amp 256 36 TOTAL BYTES LD B 36 LD C WDATA 3C POINTS TO 1771 DATA PORT LD A OF4H WRITE TRACK COMMAND OUT WDCTL A 3SEND COMMAND HALT WHEN 1771 READY WILL NMI OUTI SEND BYTE NZ DEC s OUTER BYTE COUNTER JP NZ NXTBYT DO SETUP FOR NEXT TRACK POP BC TRACK COUNTER BACK INC C UPDATE IT LD A C CP 77 77 DONE NZ NXTTRK POP AF GET BYTE BACK FOR NMIVEC LD 66H EI REENABLE NORMAL OPERATION JP START FIND IF NEED TO FORMAT ANOTHER DEFW CRLF DEFM Place diskette to be formatted DEFM into drive B DEFW CRLF DEFM Press space bar to start DEFM gt U to quit DEFW CRLF DEFB t LD DE NOBMSG LD C PRTSTG CALL ENTRY JP START DEFW CRLF DEFM Error in selecting drive B DEFW CRLF DEFB TRACK DATA FOLLOWS DEFW 1 140 BYTES OF DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 DEFW 1 1861 Jequiadag g Jaquiny eidoonui10 LD HL DATA POINT TO DATA AREA OF DISK IMAGE LD DE DATA 1 LD HL OESH BLANK LD
27. about anywhere As for basic in ROM we will have something more interesting as soon as Rob gets through putting FORTH in three 2716s for the Big Board Dear Editor Thank you very much for helping me debug my system After building the Big Board testing memory booting up CP M everything seemed to work beautifully But then things started going wrong Adventure would just stop I d tell it to GO and it would ask WHERE One by one my utili ties gave BDOS or CRC errors which makes them unusable How would I ever find the trouble Then near the end of August MICRO CORNUCO PIA arrived Your article Power to the Big Board said If the 24V supply is flaky the drive val gener ate CRC errors The first thing I spotted was loose bolts on top of the 12 000 uF capaci tor Also the supply had no large cap following the regulator to pro vide instant current So I added 9 000 uF there I don t believe I d buy another power supply made Sunny International It looks like it was built in somebody s garage Anyway the CRC errors are gone Hooray and thanks for the tip Ican return th favor some day Joseph C Kish 758 Yucca RidgeLn San Marcos CA 92069 is Editor s note Sig Peterson a long time friend and first rate Z80 designer first turned me on to the strange problems caused by an inadequate 24V supply And since he is a Big Board owner and subscriber he
28. aping Knowledge for Evolving Worlds P O Box 283 Wilsonville Oregon 97070 Visa Mastercard customers call 503 635 5701 after hours for next day shipment CP M is a trademark of Digital Research Unica is a trademark of Knowlogy Unix is a trademark of Bell Telephone Labs XM 80 is a trademark of Scientific Enterprises Z80 is a trademark of Zilog Inc MICRO CORNUCOPIA Journal of the Big Board Users Group 11740 NW WEST ROAD PORTLAND OREGON 97229 OI own a big board Hooray Software Systems Software Applications Languages 1 2 3 Hardware Are you willing to be a resource in the areas where your expertise is 4 or 5 love to O probably O maybe O no How are you using the Big Board Home System O Business System O Software Development O OEM O Education 0 Other 0 What kinds of information do you need right now U S Canada amp Mexico Other Foreign 0 16 00 C1 20 00 U S funds 0 26 00 U S funds 0 20 00 1st class mail Back issues Specify 5 O Back issues Specify 5 Back issues Specify 5 3 00 each U S funds 3 00 each U S funds 3 00 each PHONE 2 ADDRESS CITY STATE ZIP Renewal MICRO CORNUCOPIA 11740 N W West Rd Portland Oregon 97229 OI don t own a Big Board but am very interested There s hope EXPERTISE Guru 5 Novice 0 Send me six issues 1 yr of MICRO CORNUCOPIA I understand that I can cancel at any time and
29. ary oriented language Brodie has tried to make FORTH come to life There are many illustrations most of which are in a form not often seen in textbooks cartoon characters For example a Frenchman inter preter a masked executioner and a numbers runner are used for the text interpreter the EXECUTE word and NUMBER respectively While some readers may object to the third grade level of this kind of illustration they get the point across without being so dry There are footnotes liberally in cluded for both beginners and ex perts Each word defined is listed in the section where it is introduced and also in a summary at the end of every chapter There is a review of terms and a set of exercises at the end of each chapter The problems are all well thought out and are fun to solve For example problem 7 at the end of chapter 2 states You re the inventory program mer at Maria s Egg Ranch Define a word called EGG CARTONS which expects the number on top of the stack to be the total number of eggs laid by the chickens today and prints out the number of cartons that can be filled with a dozen each as well as the number of left over eggs Chapters 1 and 2 55 pages cover elementary FORTH what the stacks are how to define simple words and basic arithmetic and stack oper ators Brodie spends four pages ex plaining how the text interpreter works and an equal space on the power of a stack Almost all exam
30. ble from the CP M users group and on our user disk 1 The following patches for the program will allow it to run on the Big Board Fort and bit mask setups ADDR DATA 0103 00 0104 0105 0106 FF 0107 00 010A 07 010D 05 0110 04 0113 04 0116 05 0119 01 O11C 01 Not PMMI modem No front panel Use FF if you re running 4 MHz Use OO to delete same name files Use FF to come up in expert mode Fort B status 4 06 Port B data A 04 Xmit ready bit Xmit ready mask Port B data A 06 Rec ready bit Rec ready mask Initialize the SIO port B for 8 bits character Set baud rate gen See pg 8 in Theory of Op to select value of XX ADDR DATA 14E4 SE Reset SIO errors 14 5 FO 14E6 DS 14E7 07 14E8 SE Select SIO reg 3 14E9 14EA DS 14ER 07 14EC 3E 8 bits char 14ED Ci 14EE 05 14EF 07 14 SE SIO register 5 14F1 o5 14F2 D3 14F3 07 14F4 SE Xmit 8 bits char 14F5 14F6 D3 14F7 07 14F8 SE 14F9 XX 14FA DS 14FB oc 14FC Return from initialization Editorial con tinued Raising subscription rates Sandy figured out what it is cost ing us to print and mail the maga zine and the annual total per sub scriber is so close to 12 00 it s scary We re doing everything we can to save money everything that is but scrimp on the printing Take a look at the difference in print quality between issues 1 and 2 and you ll see why we re so de
31. d dresses are in the list This linked list structure creates an extremely com pact language Written in FORTH an assembler editor disk and ter minalI O willallfitin 16K bytes with plenty of leftover room for user ap plications This makes FORTH ideal as a standalone operating system supporting a single user There are no argument lists in FORTH Instead parameters are passed on a data stack common to 7415 Leahy Road New Carrollton MD 20784 all words Of course named varia bles constants and arrays are also available so that conventional high level programming can be used However all of these named storage regions are FORTH words in them selves and you can easily create new data types such as matrices or multiple precision floating point variables FORTH is a structured language supporting conditional branching and loop structures but GOTO statements are not allowed Each de fined word is usually short no more than 3 or 4 lines of source code This creates a highly modular program structure that is exceptionally easy to debug I find the incremental compilation especially useful in writing machine language routines I can compile debug and correct routines several times before I can do one assembly using ASM or MAC There is no faster interactive lan guage For non floating point opera tions high level FORTH runs 10 20 times faster than interpreted BASIC Yet because of the easy inclusion of
32. e in BYTE every month Also the BYTE issue of August 1980 was devoted to FORTH This back issue can be purchased from MVP or from FIG If you are still in terested in FORTH then you have three options 1 Buy Threaded Interpretive Lan guages and design your own FORTH I only recommend this to die hard programming types 2 Buy a copy of Fig FORTH for Micro Cornucopia Number 3 December 1981 the 8080 The source listing can be obtained from FIG and entered if you are willing to sit at a keyboard for two weeks An alternative is to buy Fig FORTH already on disk from MVP for 65 It sure beats typ ing if you value your time at all 3 Buy a commercial FORTH There are several on the market with prices ranging from 50 to 2500 I will be reviewing several of these in the next issue and suggest that you hold off any purchases until then We may havea little surprise at that time Future columns If you read the book reviews in this issue and buy the book that meets your needs then you will be just about ready to read the lan guage reviews next time In addition future projects on back burners include a plotting package for the Epson and Paper Ti ger printers dark room applica tions FORTH in ROMs Startrek Sargon and EPROM programming This column is for you So if you have any thoughts about or answers for projects find some aspect of FORTH confusing have questions to be answered or just wan
33. end of each chapter are very dull and were not written with much thought Again the lack of descenders makes the text difficult to read for any length of time and the numer ous errors really hurt especially when they occur in examples I rec ommend that you pass over this book and buy something else 10 Micro Cornucopia Number 3 December 1981 CURIE FER tt Higiene AGNI s MI am ERU CONES sm zu VAL CNN eR MEER C ES EM Starting FORTH Leo Brodie Prentice Hall 1981 348 pages appendices 16 softcover 20 hardcover _ have read just about everything on FORTH that I can get my hands on This includes so called beginner s manuals system manuals and even the three manuals that I ve written Believe me Starting FORTH stands head and shoulders above them all Brodie has created a real master piece a book in a simple conversa tional style that will keep beginners interested and yet with enough meat that the experts will find some thing to learn While the book covers FORTH 79 standard definitions Brodie is em ployed by FORTH Inc and you will find many added definitions that are only available in their product line Brodie was very careful to indicate which words were not FORTH 79 and in many cases why they dis agree with the standard Brodie s style is conversational very much as if you had a personal tutor Since FORTH is a vocabul
34. er Also a new CBIOS with parallel printer interface Returns to default drive on reboot stifles head banging supports CP M 2 2 and 1 4 Step by step instructions for the simple incorporation into your CP M using only DDT and SYSGEN CBIOS source also included Including 1 Two single disk copy programs both with source 2 The source of the Crowe Assembler 3 New Crowe com file with larger symbol table 4 New CBIOS for CP M 1 4 and 2 2 amp boot 5 Disk mapper with source 6 Documentation for all the above 39 00 Screen Editor in Small 44 00 A simple but full function screen text editor plus a text format ter all written in Small C by Edward Ream This package in cludes the editor and formatter COM files setup for the Big Board Small C itself and source code for all With the docu mentation this is over 400K on a flippy disk Edward is selling this package for 50 you can buy it from us for 39 and Ed gets a royalty Where else can you get an editor a formatter a US CAN MEX Other Foreign FORTH IN ROM 65 00 70 00 in fast ROM 80 00 85 00 Now what you ve all been waiting for FORTH in ROM This is standard FIG FORTH in three 2716 s FIG FORTH is standalone FORTH so you don t use CP M at all If you have disks FIG FORTH handles the disk I O If not you can still enjoy a most fascinating language simple FORTH line edi tor and a decompiler are available on disk
35. er Jim Ferguson verified that the Big Board and the Xerox 820 are essentially identical except that the 1771 floppy interface on the 820 can talk to either 5 inch or 8 inch disks Goofs Due to mismanagement on the part of the manage ment we ran out of space in Issue 2 before we ran out of things we intended to run So we didn t get to run Andrew Beck s article on the reverse video cursor but we managed to give him credit for the direct input routine that was actually written by John Jones We also failed to run the listing that went with Don Re tzlaff s super article on moving software hither and yon We re running that listing in this issue continued on page 4 Letters and Letters Dear Editor Iam a Big Board owner just trying to figure out what s going on as I practice my soldering What are the list prices on the books reviewed A great volume at 24 95 isn t as interesting to me as a good one for 5 95 The RAM protection circuit is great How do I buy a 5 watt PNP Would you consider a 5 00 kit I want to use my Big Board as soon as the solder cools even before I in vest 1500 in discs and CP M Is somebody selling Tiny Basic on a 2716 How about a minimal word processor or a dumb terminal in ROM On the subject of disk drives how about running a score board so folks could vote on the types of drives they like and don t like Ed And types of disks they like and don t like When you
36. er Sf l 4 Ys Micro Cornucopia Number 3 December 1981 ANNOUNCING DOUBLE DENSITY DISK INTERFACE FOR THE BIG BOARD New floppy interface package for the Big Board lets you read and write single and double density disks with 128 256 512 and 1024 Bytes sector The package includes 1 Fully assembled and tested board cable and connector to replace the 1771 Board contains 5 ICs including a Western Digital 1795 An extended monitor in two 2716s A disk containing Disk formatting program 128 256 512 1024 bytes sector Disk copying program n overlay for MOVCPM COM double density SYSGEN 4 Documentation Dependable 4MHz mod Jumpers to add to the Big Board Sector size is determined by how the disk was formatted and is totally transparent to the user Disk capacity ranges from 241K for SS SD 128 bytes sector to 668K for SS DD 1024 bytes sector Requires minor modification to Big Board and requires that Big Board run 4 MHz 7 Available December 15 1981 Price 200 Otto Hiller Co Scientific Equipment P O Box 1294 Madison WI 53701 608 271 4747 3 5 pm Bring the flavor of Unix To your Z80 based CP M system with Unica Unicum a thing unique in its kind especially an example of writing Unica the plural of unicum The Unica a unique collection of programs supporting many features of the Unix operating system never before avai
37. f R38 amp R 40 9 of U 77 to U 96 pin 5 and run jumper from U 96 pin 4 to U 97 pin 9 continued next page Micro Cornucopia Number 3 December 1981 3 And More Letters During a phone conversation Mr Tanner noted that several of his customers need to use 5 inch flop pies So we are designing a new board which will handle double sided drives and 5 inch floppies It will be ready by December 15th However it will be a while after that before we have software support for the 5 inch and double sided drives Otto Hiller P O Box 1294 Madison WI 53701 608 271 4747 3 5pm Dear Editor I am using a Heathkit H 19 with my Big Board and have designed a smaller monitor since the H 19 is do ing most of the display work I have also modified the disk for matting program so that you can for mat disks even though you only have one drive Gary Mion 408 241 1766 home 408 987 5079 work Editor s note Gary is doing some very interesting things with the H 19 and the Big Board Considering the number of folks who have contacted me about using the H 19 with the system this should be welcome information Gary s formatting program is on user disk 1 FORMATS3 COM Anyone interested in what Gary is do ing is welcome to call him at the above numbers Using Modem7 By Andrew Beck AB Computer Products PO Box 571 Jackson NJ 08527 isa general purpose public domain modem program availa
38. f keyword FORTH routine use are presented and the 2 block editor is the only FORTH block oriented listing given The book dis cusses the Z80 only and requires a Z80 mnemonic assembler The text is for someone who is considering writing his own FORTH or having purchased and used a commercial FORTH is interested in how it ticks Chapters 1 through 3 38 pages describe what a TIL is and gives basic flowcharts of how to write one Chapter 4 35 pages lists those Keywords that Loeliger feels are nec essary in the implementation of a TIL For example arithmetic opera tors DO LOOPs and conditional branching constructs such as IF ELSE THEN are discussed Chapters 5 and 6 106 pages are the heart of the TIL implementation The construction of the outer inter preter is shown along with all primitive routines such as the num ber converter and cold warm restart routine Chapter 6 is very useful in that Loeliger lists each keyword in alphabetical order its function in put output I O requirements how used and then shows sample Z80 assembly source for the keyword Chapter 7 54 pages describes three extensions to the basic TIL a Z80 assembler disk I O and an edi tor The assembler is particularly well presented and is one of the best that I have seen The disk I O and editor are described in general terms with important keywords mentioned but not described in full detail A line by line edit
39. fic programs C is hard to beat Plus it has had a standard pretty much from the be ginning which has gone a long way to ward making the source code transport able I ve also noticed that a surprising number of the heavy FORTHers I ve met are either into C as their second lan guage or are very interested in it The reverse hasn t necessarily been true Al though they are implemented quite dif ferently both languages provide the pro grammer easy access to the hardware Dear Editor The conversion to double density requires several modifications both to the hardware and to the software 1 The system must be running reli ably at 4 MHz 2 The Western Digital 1771 chip must be replaced by either the West ern Digital 1791 or better the 1795 chip set 3 The monitor has to be changed we are using two EPROMs 4 The bios has to be able to deblock the larger sectors to CP M s 128 byte sectors 5 The floppies have to be formatted for D Density 6 A new type Sysgen is required 4 MHz modification If you are having trouble making other 4 MHz modifications work try the following Change the crystal from 20 Mhz to 16 MHz Remove and discard U 97 Change U 77 from 741 504 to 7404 Cut trace from U 96 pin 4 and cut trace from U 76 pin 4 and 5 then con nect U 76 pin 3 to trace from pin 4 and connect U 76 pin 4 to trace from pin 5 Run jumper from U 96 pin 5 to U 97 pin 8 run jumper from junction o
40. for publica tion in this magazine when it s done Not only will it provide the reverse video cursor but it will also allow your programs to produce reverse video characters Board Modifications Cut the following runs All are on the bottom of the board U25 pin 4 to U25 pin 3 U25 pin 2 to U37 pin 11 Jumper the following U25 U25 U25 U66 U10 U60 U10 094 U94 U74 U25 U37 U66 U10 U37 U10 094 094 UT 094 to to to to to to to 13 to 11 to 10 to pin pin pin pin pin pin pin pin pin pin pin pin pin pin pin 9 Use pin 12 instead for a non blinking cursor Changes to CRT driver in monitor This listing represents the area of the CRT driver module that must be changed Micro Cornucopia Number 3 December 1981 KEKE KKK E RA 3 MEMORY MAPPED CRT OUTPUT DRIVER x jx Russell Smith 18 August 1980 5 x x XO ORO RARER AREER A K Gc ooo CRTBAS EQU CRTTOP EQU CRTMEM SHR 8 STARTING PAGE OF SK CRT SPACE CRTMEM 3072 SHR 8 ENDING OF CRT SPACE 3 CRTOUT PUSH HL PUSH DE PUSH BC RES 7 4 LD DI KEEP THE WOLVES AWAY FOR A WHILE LD SPSAVE SP LD SP TMPSTK 32 POINT SP TO TOP OF LOCAL STACK IN A BITDAT SET 7 A SELECT ROM CRT MEMORY BANK OUT BITDAT A FIRST REMOVE THE OLD CUKSOR CHARACTER FROM THE SCREEN we as LD HL CURSOR 3LOAD
41. his I mean that once the number is on the stack the system doesn t know whether it is to be a byte inte ger double precision integer or whatever Each operation such as multiply is defined for a specific type of variable such as 16 bit inte gers The programmer must keep track of what values are on the stack and use the appropriate operator FORTH is a really excellent lan guage for instrument control You can access all memory locations di rectly input and output bytes from ports set interrupt vectors and all other internal functions with ease It is easily made into a multi user sys tem requiring about 2K bytes addi tional programming We used a standalone FORTH at GSFC on a PDP 11 40 with 64K bytes of mem ory that handled three users simul taneously 2 performing mundane operations such as tape copying and spectral analysis and one using the image processing system FORTH is not suited for number crunching A compiled language such as FORTRAN PASCAL or C would be a better choice Versions of FORTH FORTH is a new language It wa designed around 1970 and has re cently undergone standardization at meetings in 1977 1978 and 1979 The 1978 meeting produced a version of FORTH implemented by the FORTH Interest Group called Fig FORTH It was to be a test case for the new standard and met with in stant acceptance the fact that it was distributed by a non profit organiza tion at little cost helped
42. hoice of either user s disk or the deluxe character ROM free if you send an article or software and a ROM or extra disk QUANTITY DESCRIPTION z PRICE EACH Prices include media package amp 1st class postage air mail for Other Foreign TOTAL ENCLOSED NAME ADDRESS CITY U S funds only please Make checks payable to STATE ZIP MICRO CORNUCOPIA MICRO CORNUCOPIA 11740 N W West Rd Portland Oregon 97229 lc
43. in the game though we found only interpreted BASIC sup ported on CP M and it was just too slow for our needs However at a meeting in 1977 we heard that the University of Rochester had adapted FORTH to the 8080 calling their ver sion URTH As FORTH was well known in the astronomical commu nity as a great instrument control language and because we got it gra tis we implemented URTH on our system as a stand alone operating system Soon we were controlling the tele scope in FORTH taking one month to code in FORTH what took us eight months in assembly language On a 16K byte system we had enough room left over to start thinking about letting the IMSAI control data ac quisition and to perhaps automate the entire telescope movement We achieved these goals this past year in 32K bytes of memory In 1979 I moved to Washington D C to work for the Goddard Space Flight Center and am currently maintaining on a PDP 11 44 mini computer a version of Cal Tech FORTH that I heavily modified We use FORTH for image processing of astronomical imagery to analyze other astronomical data In the near future we ll use it as the operating system on an LSI 11 23 to control a PDS 1010A microdensitometer used to digitize photographic plates From my experience FORTH is the only language to use for instru ment control for systems with mini mal memory and for experimenters making new hardware interfaces It is the fastest
44. lable under CP M The Unica are more than software tools they are finely crafted in struments of surgical quality Some of the Unica are binary file compare catenate files copy one or more files disk map and statistics horizontal file catenation create file links aliases directory lister move rename files even across users remove files source file compare with resynchronization in memory file sorter search multiple files for a pattern spelling error detector with 20 000 word dictionary Unicum understands several flags options or switches which control program alternatives No special shell is needed Unica commands are typed to the standard CP M command inter preter The Unica package supports several Unix like facilities like filename user numbers sc data bas 2 data bas 3 compares files belonging to user 2 and user 3 Wildcard patterns rm tmp v types each filename containing the letters TMP and asks whether to delete the file I O redirection _ s a Plist writes a directory listing of all files to file list Pipes cat chap sp srt Pst concatenates each file whose name starts with chap makes a list of mispelled words sorts the list and prints it on the listing device The Unica are written in XM 80 a low level language which combines rigorously checked procedure definition and invocation with the vers atility of 780 assembly language XM 80 includes a lanquage t
45. lighted to have a real craftsman printing Micro C His name by the way is Dave Cramer Two weeks after we figured out our costs the post office changed them by raising postal rates So in response to reality we are announc ing new rates for the new year See page 16 for details Sigh Disks If you send us material on disk and you don t mind if we keep the disk in your file our original 100 disks are almost used up then print FILE followed by your name and address phone number on the la bel Otherwise print RETURN and name etc Christmas Here it is October and I m having to write about Christmas Well I hope your Christmas and New Year are as positive and as exciting as you ve made this past yearforus e David Thompson Editor and Publisher 4 Micro Cornucopia Number 3 December 1981 More 4 MHz This issue continues the saga of the speeding Big Board You MUST have a fast monitor ROM The standard 2716 which is a 450 ns part just won t make it You need a 2716 1 350 ns If you don t have access to a ROM burner or the fast parts drop us a note here at Micro C and we ll see if we re set up to help you yet Another Mod By Philip Atkinson The following modification re places U96 72LS293 with a 74160 and a spare gate on a 74LS04 This results in a 4596 duty cycle The 13 ns propogation delay of the inverter steals from state 5 and adds to state 9 After
46. nd make all their extensions into NEW sc com source file text com parator This routine provides a real ly first class display Where the two files differ it displays the lines that differ in two blocks one from each file Each of the two blocks ends in the same line If the two files are the same it generates no output sfa com set file attributes This lets you set all COM files for in stance to read only or remove read only status _ _ sp com spelling error check Compared with most of the spelling routines on the market this routine alone is worth the price of admis sion I got 17K worth of text off the local community bulletin board service CBBS and I ran the spell program from Unica and the spell program from The Word Unica came up with 155 suspect words The Word found 55 For perspective The Word is the best spelling program on the mar ket period I ll be reviewing The Word in issue 4 There were actually 5 misspelled words the rest were names or strange abbreviations On piece of straight text a larger percentage of the suspect words found by both programs would be real misspell ings Unica s most significant prob _lem here is it doesn t yet let the user create a custom dictionary At least not yet Example SC COM output Cosparing two versions of Small C C sc ascc i c bsceci c ae a ccl c line 23 define BANNER Small C Plus version AD 1 10
47. om both disk and terminal Chapter 11 27 pages is another system level chap ter covering how you create new defining words and compiling words to extend the flexibility of FORTH Brodie shows how to create a word that will define arrays and presents a simple flowcharting method for FORTH The last chapter 32 pages covers three examples of FORTH program ming a word game a basic file sys tem and mathematically calculating the weight of a pile of material These examples are well document ed and are excellent to tie the text together Four appendices cover an swers to all exercises polyFORTH enhancements FORTH 79 differ ences and a summary of all FORTH words defined in the text I only have two negative com ments about Starting FORTH There is no overall index making it diffi cult to locate a given subject or where the text discusses the use of a basic definition Also polyFORTH is mentioned too often primarily be cause this is a text designed for FORTH Inc products In all highly recommend Starting FORTH It is by far the best manual available Micro Cornucopia Number 3 December 1981 11 cL 1861 19qui228q Jaquiny eidoonui10 Safer Formatter By John Jones 5826 Southwest Ave St Louis MO 63139 When PFM 80 attempts to selecta drive it first checks for drive ready If the requested drive is NOT ready the previously selected drive remains active With the original FORM
48. or That s right I didn t make this one up Andy really wrote a hor izontal concatenator It pastes the lines from one file onto the ends of the corresponding lines from anoth er file or another two files It even does some useful things like breaking up lines inside a file into chunks short enough for even the most finicky editor It also does some other very useful things but I ll let you discover them for yourself In com link a new name to a file This is a good routine for multiuser environments or where you are writing software for novice and ex perienced users For example you could have a SUBMIT COM file that also had the name S COM The SUB file could have a descriptive name and single letter name Thus the novice could be instructed to simply type S C CR Is com list directory This is a large program 14K for simply list ing a directory but you can get a lot of information there are 12 flags for this routine For instance this rou tine will tell you how many bytes in each file on a disk to the byte and it does the count and output in about the same time it takes DIR to just dis play the filenames mv com move rename a file At first you d wonder why anyone would bother with another rename utility after all we have CP M s RE NAME the other hand I use this one a lot EXAMPLE mv n v1 v2 new Make all the filenames which begin with v1 begin with v2 a
49. or is given in a listing A short chapter 10 pages on TIL usage completes the text followed by a bibliography and brief index Aside from the 3 or 4 typographic errors that I found there are no ob vious errors in Threaded Interpretive Languages However Loeliger could have added an index for all of the keywords discussed and could have included a master listing for his implementation on ZIP There are no worked problems at the end of each chapter because this is a man ual on how to construct a TIL not how to use one The text was pre pared ina very professional manner with good illustrations and liberal use of italics and enhanced type to emphasize pertinent points I highly recommend this book for the ad vanced assembly language pro grammer Even if you own a com mercial FORTH Loeliger presents new definitions that may not be present in your version such as an assembler This text plus a user s manual would make a very complete reference library for FORTH Invitation to FORTH Harry Jr Petrocelli Books Inc 1981 222 pages index 18 50 hardcover the best of my knowledge this was the first hardcover book that purported to cover FORTH Katzan has tried to produce a text similar to most high level language tutorials such as for FORTRAN that is as processor independent as possible His primary audience are persons relatively unfamiliar with computers or other languages The text is
50. owners Enhance your system with a profes sional lightweight pain ted structural enclosure Adequate in size to enclose the Big Board power supply fan and keyboard of your choice Plus strong enough to support a 17 monitor on top Custom AC power I 0 rear panel simplifies ins tallation and wiring for your application or ours Further information write Microvisions P O Box 2371 Woburn MA 01801 Wanted I need the fol lowing issues of Interface Age magazine Dec 75 Jan 76 Feb 76 Mar 76 Sept 76 Dec 76 Mar 77 amp Apr 77 Will pay top dollar any condition Call Andy collect at 201 370 9889 days or 201 370 9568 evenings Looking for other Big Board owners in your area Run a WANT AD in Micro C New Subscription Rates Starting January 1 1982 the annual subscription rate will be Tyr 6 issues U S 16 00 1 yr Canada Mexico 20 00 1 yr Other Foreign 26 00 Back issues each U S Canada Mexico 3 00 Other foreign 5 00 Folks in the U S can get their issues sent first class by paying the Cana dian rate we are offering something of modest value in return d Hear Yea Hear Yea A Modest Proposal Asis the ancient custom and spirit of the season we at Micro Cornu copia are asking our patrons to send money And taking a page from other great beggers of our time Wards Sears Hickory Farms Super Deluxe Package Can t think of anything for those
51. photo offset from dot matrix printer output While the quality of reproduction is good the printer does not have lower case descenders Because of this printer limitation special characters and underlines have to be hand drawn and as a result there are many er rors Most of these errors are very obvi ous and should have been caught by the author It gives the impression that Katzan rushed this book to press Invitation to FORTH is a limited in troduction to the language It covers only a subset of Fig FORTH and FORTH 79 words leaving out sys tem related words such as BUILDS or WORD There is no coverage of any assembler or editor vocabula ries Chapter 0 11 pages contains a brief introduction to FORTH Fol lowing this there are three chapters of background material 63 pages that for the most part could have been left out Chapters 4 9 132 pages cover all of the high level FORTH definitions Katzan has broken the words into straightforward categories and pre sents numerous examples of how each word is used Some of the sub jects such as the difference between constants and variables are nicely presented Chapter 9 ends abruptly and there is no final chapter that draws everything together The text is fol lowed by references answers to ex ercises and an index The only good point of Invitation to FORTH is the use of many examples interspersed with the text By con trast the exercises at the
52. pporting two languages FORTH and C Great news folks we re not going to choose be tween Forth and C we re going to support both Forth should be available in ROM by the time you read this So if you can t wait until the fourth issue for the partic ulars send an SASE or call and we ll fill you in Arne Henden is now our FORTH columnist and Hampton Miller has offered to give Arne a hand with the project Both are professional FORTHers and both have FORTH on a PDP 11 In fact Arne is using FORTH to control the telescopes at the Goethe Link Observatory Now we need a volunteer or two to do a column on C Formatting programs We have now received X formatting programs where X is amazingly large and growing daily I m not complaining because I know that formatting pro grams are not trivial It s exciting to see the number of folks really getting into the system I ve tried all the ones I ve received One reformatted itself when I tried it so I m unable to pass it along Perhaps there s jus tice in there somewhere We ll print several of the best see John Jones new safe version in this issue Diagnostics Article I didn t get what I wanted from Garland this month I had hoped that the folks at DRC would have a diagnostics article ready for this issue to help those of you bringing up stubborn boards However I suspect that the response to the Byte article has them alittle overwhelmed The 820 Big Board design
53. ranslator which turns XM 80 programs into source code for MACRO 80 the industry standard assembler from Microsoft It also includes a MACRO 80 object library with over forty software com ponents subroutine packages which are called to perform services such as piping wildcard matching output formatting and device independent I O with buffers of any size from 1 to 64k bytes The source code for each Unicum main program but not for the soft ware component library is provided With the Unica and XM 80 you can customize each utility to your installation and write your own applications quickly and efficiently Programs which you write using XM 80 components are not subject to any licensing fee Extensive documentation includes tutorials reference manuals in dividual spec sheets for each component and thorough descriptions of each Unicum Update policy each Unica owner is informed when new Unica or com ponents become available At any time and as often as you like you can return the distribution disk with a 10 handling fee and get the current versions of the Unica and XM 80 with documentation for all new or changed software The Unica and XM 80 which requires MACRO 80 are priced at 195 or 25 for the documentation The Unica alone are supplied as COM executable files and are priced at 95 for the set or 15 for the documentation Software is distributed on 8 floppy disks for Z80 CP M version 2 systems Knowlogy Sh
54. reby pass along your thanks to him Dear Editor It appears that I am about to con clude an agreement with a major software distributor They will be come the exclusive distributors for Timin FORTH products for CP M af ter Jan 1 So the best I can do is offer until Jan 1 Timin FORTH for the Big Board for 75 00 If will be identical with Timin FORTH release 3 except it will not include the CP M utility package This package is only need ed for special applications The vis ual editor will be setup for the Big Board and included on the disk Terms for ordering a Money order or check with the order b Purchaser pays the postage usually 2 00 c Californians add 4 50 sales tax d I will take no action until I re ceive 10 orders If I don t receive 10 orders by Jan 1 all the money will be refunded I will keep the technical hotline open as usual for these purchasers I warrant the product to be bug free and will supply free bug fixes if nec essary Mitchell E Timin 9575 Genesee Ave Suite E2 San Diego CA 921231 Note from the FORTH editor We are publishing Dr Timin s letter now to ensure that Big Board owners have time to take advantage of this excel lent offer Timin gives you fast IIO a thoroughly debugged system and a hotline However you also have several other options _ Laboratory microsystems produces Fig Forth running under CP M for 50 but with relatively slo
55. sy to use Unix like utilities Now that I ve had them on my system disk for a while I m really dependent on them The files bc com binary file compare Reads two files as binary data and displays their differences in 16 byte blocks cat com concatenate files This routine reads each declared file in sequence and then outputs to the screen or other file etc EXAMPLE cat txt doc gt lst Print Ist all the txt files followed by the doc files EXAMPLE cat v a txt b doc gt gt articles doc Concatenate all the txt files on drive A followed by all the doc files on drive B Verify v with the operator each file before it s included Ap pend gt gt the result to articles doc on the default drive cp com copy files Thisis a fancy copy routine that for instance cop ies a memory full of data at a time when moving large blocks of data It can also do things like change ownership of a file or refuse to copy a file if one of the same name already exists on the destination drive dm com disk mapper Depend ing on selected options this routine generates a map of the disk and or a detailed summary of the disk use fid com file identification by a 16 bit CRC fid com computes a 16 bit cyclic redundancy character for each file in its argument list If the CRCs of two files are the same chances are about 65K to 1 that the files are the same hc com horizontal concatena t
56. t of U12 The result is then ORed with SC3 This causes pin 6 of U25 to go high if either SC3 pin 9 of U12 or pin 11 of U37 goes high Since pin 6 of U25 is connected to the chip select pin of the character generator PROM this causes the outputs of the PROM to tristate and produce a blank charac ter field Therefore setting bit 7 of a charac ter will cause it to blink at a 4 hertz rate You may be wondering what the purpose of the SC3 signal and the output of U12 are Well these two signals cause the character gen erator to blank out between charac terlines and while the CPU is access ing video memory Changes to the Big Board Now that we know how to produce a blinking character we can look at the mods necessary to produce an in verted character Inverted video is generated by inverting the video signal that is AB Computers PO Box 571 Jackson NJ 08527 making it a NOT of itself If we make this happen selectively on characters with bit 7 set we can generate a re verse video cursor as well as reverse video highlighting Let s trace the partial schematic shown and see how the modification works First we cut the connection be tween U25 pin 3 and 4 and connect pin 4 to U25 pin 1 This prevents bit 7 of the character RAM from affecting the character PROM while still al lowing the CRTE and SC3 signals to cause the PROM to blank the charac ter U10 pins 9 10 and 11 AND the vertical
57. t to sound off drop me a line I will be happy to help Designer s Corner Keyboard bit 7 There is an un grounded rumor going around that keyboard bit 7 must be tied low Not so The first character sent from the keyboard must have bit 7 low so the PFM moni tor can tell there is a keyboard out there but that s it The rest of the time bit 7 is treated just like any normal bit getting passed on to the data bus just like all the rest This should be interesting to anyone with special function keys You can distinguish these special keys by setting bit 7 and then if neces sary have the Z80 reprocess them Reviews of FORTH Books By Arne Henden Threaded Interpretive Languages by R G Loeliger Byte Books 1981 243 pages index 18 95 hardcover When first saw the advertisement for Threaded Interpretive Languages TIL in BYTE I thought that it would be a book about standard FORTH While the particular TIL that Loeliger discusses called ZIP is very similar to FORTH it is not FIG FORTH or FORTH 79 standard Loeliger tries to be very general and to discuss TILs as a group of pro gramming languages He indicates where the infrequent differences be tween ZIP and FORTH occur and continually offers alternatives to standard definitions so that the reader can customize his implemen tation to meet his personal needs _ This text is not for the casual FORTH user For example no exam ples o
58. very special people in your life who ve been bugging you for something really different Then get them complete Big Board kits and subscriptions to Micro Cornuco pia It ll keep them busy for months It kept you busy for that long didn t it Sorta Deluxe Package If the Super Deluxe Package seems a little spendy how about getting a bare board and Micro Cornucopia Let the ingrates scrounge u their own parts Basic No Frills Package So you called Digital Research Computers and they told you it would be six weeks before they could ship even a bare board your number one person seems to be trying for number two your cat died and the court won t let you claim bankruptcy two Christmas inarow What do you do Order a gift subscription to Micro Cornu copia and let that special person buy a Big Board for him or herself What else could you give for 12 00 that would either get them on the stick or remind them of what they are missing for a full year We ll rush issue 3 out first class or for an additional 6 00 we ll include issues 1 and 2 with a nicely hand lettered note that says Merry Christmas from you That way they ll know that you re really not an ill mannered thoughtless slob after all Plus you beat the January 1 price hike So fill out a subscription form for each person on your list Fill it out just as they would but at the very top write Gift From followed by your name Thanks and Happy Holidays J
59. w Forth in ROMs will be available in a few months for about 60 and stand alone Fig FORTH optimized for the Big Board with full floating point including tran scendental functions will be available in the spring for around 75 00 The choice is yours If you have ques tions call me Arne Henden 301 552 1295 2 Micro Cornucopia Number 3 December 1981 and Letters to the Editor Dear Editor Some comments about the Crowe Assembler It compiles CBIOS if you delete all it handles relative jumps without the suffix ed and replace all multi byte and multi word DEFS with single byte and single word definitions Perhaps is would be a good idea to distribute a version of the CBIOS that would be compatible with this assembler If you get an overflow in a RES pseudo op Croweasm gives you a warning but compiles fine You will get this warning when you compile BIAS EQU RES MSIZE 20 1024 200H Note that the 200H is HEX the H was left out in issue 2 I think that exchanging programs written in C is an excellent idea Jan Henrik Johansson 11124 Saffold Way Reston VA 22090 Editor s note For those of you who are interested the original monitor and BIOS were as sembled with the SD Sales assembler One local Big Board owner purchased the SD Sales assembler from Jade Com puter Products It came on a double den sity disk which he can t read and when he asked them

Download Pdf Manuals

image

Related Search

Related Contents

    ici - Hth    MERCEDES A - W176 EZS GECKO FILTER INSTALLATION  Quixote User's Manual  Válvulas retención API  télécharger la fiche téchnique  

Copyright © All rights reserved.
Failed to retrieve file