MaxZ80 - Chapter 1 A printed booklet of this material is available from Lulu.com. All the files discussed in this tutorial are contained in the archive http://primepuzzle.com/mouse/maxz80.exe or, if you prefer, http://primepuzzle.com/mouse/maxz80.zip. Download this archive and extract its contents into c:\maxz80. This directory will be created for you if you use the self-extracting archive (ie. the .exe). The hints you get here are just that, only hints. Read these hints and then delve into the details by looking at the source code. Try stuff on your own! Before we begin ... About a month after "completing" this tutorial I discovered Peter Schorn's excellent SIMH Altair 8800 (Z80) simulator. You may learn about it by visiting http://www.schorn.ch/cpm/intro.html Versions that run under Linux and under Windows are available. One of the things I was reminded of while working with the Linux version was Joe Wright, Bridger Mitchell and Jay Sage's NZCOM and the associated utilities MKZCM and NZCOM and also Hal Bower and Cam Cotrill's ZSDOS and the utility SETUPZST. Using all this software I rebuilt the Z-System image we'll be discussing here "from scratch." These programs may be found in the named directory B4:LAST. In addition, a fellow from Germany who read my post on http://groups.google.com/group/comp.os.cpm/topics (which talked about this material) got back and asked if I had the full documentation on Simeon Cran's MYZ80 emulator. Since this emulator is so important to this package, I've added all the .txt files that he put on drive A user area 1 of the distribution floppy to drive A user area 1 of the "virtual A disk" used here. He was looking for something that could be used to configure things for his keyboard. The MYZ80 utility KEY.COM (as well as the documentation, key.txt) are now in this package. Upon reviewing the "ARUNZ aliases" (which you'll learn about as you get into the material), I realized that one in particular (namely ata2) would not work until I added something else, which strangely enough also has to do with "keying things in." Both the KEYIN.COM program and an associated load module called KEYINIOP.ZRL were added. "IOPs" or Input Output Packages are not discussed in this tutorial but the kind of thing they can do is illustrated by this alias. This alias also uses AT.COM, the Z-System command scheduler. This is an "RSX" or Resident System eXtension. RSXs are not discussed in this tutorial (other than here!) Finally, an appendix has been added. It contains : 1. a directory of all files in all user areas on all 4 drives (A thru D) 2. the contents of MENU.HLP which contains a large amount of material on the help system, MYZ80, Z-System internals and CP/M. The file is in HLPFILES.LBR (as MENU.HYP) and comes up if you type HELP at the command prompt. It also comes up if you are running the MENU shell and type H. 3. the contents of ALIAS.CMD and the contents of ALIAS.DEF (which documents the aliases in ALIAS.CMD) 4. listings of Z3ENV.Z80 and Z3TCAP.Z80 5. a screen capture of the output of the command Z3LOC19 Z when both the KEYINIOP and the AT RSX are loaded You might be wondering about all those .MSE files in A0:MOUSE ... The Mouse Language is documented elsewhere. See http://primepuzzle.com/mouse/mouse.html It is hoped that as you go thru the material you find one or more of these appendices useful. It is always a good idea to download the latest version of maxz80.exe or maxz80.zip (see above) as the printed Lulu booklet may not be current. Let us now begin! Bring up a DOS window, navigate to the c:\maxz80 directory and type MYZ80.EXE. You will see a screen similar to the following: ZSDOS Time Stamp Loader, Ver 1.1 Copyright (C) 1988 by H.F.Bower / C.W.Cotrill MYZ80 Clock 0.2 for NZ-COM User Space ...loaded at F880H Clock is : MYZ80 CLOCK 0.2 COPY Version 1.73 (for ZSDOS) 2 Jul 2001 Copying B8:????????.??? to D1: -> README .TXT..Ok (Dated) Verify..Ok (X) 0 Errors File system last changed on 9/1/2007 8:38 D1:RAMDISK>> You are now in what is called an emulated Z-System environment. Type A4:, hit Enter, and then type DIR. 8:38 D1:RAMDISK>>A4: 8:39 A4:BASIC>>DIR Drive A4 [BASIC] Files: 40/460k Free: 4704k - .104 0k : CMD .REL 4k : LEE11H .BAS 4k : RUNLEE .ZEX 4k ARK11 .ARK 16k : CONCEN .BAS 12k : LEE11H .COM 20k : RUNLEEP .SUB 4k BASCOM .HLP 16k : CONCEN .COM 24k : LIB80 .COM 8k : SLOWDISP.COM 4k BASCOM2 .HLP 32k : CREF80 .COM 4k : MBASIC .HLP 24k : UNARC .COM 8k BASLIB .REL 28k : GOLIAT .HTM 4k : OBSLIB .REL 48k : UNARC16 .ARK 40k BCLOAD . 4k : GOLIATH .HTM 4k : QUIET .COM 4k : UNLOAD23.COM 4k BRAILLE .BAS 4k : GOTCHA .MAC 4k : RANTEST .ASC 4k : UNLOAD23.LBR 12k BRUN .COM 16k : GOTCHA .REL 4k : RANTEST .BAS 4k : Z3BAS .LBR 52k CLIFF .HTM 4k : GOTCHA .Z80 4k : RANTEST .COM 4k : Z3HDR .MAC 4k CLIFFH .HTM 12k : LEE .SUB 4k : RUNLEE .SUB 4k : Z3HDR .REL 4k 8:40 A4:BASIC>> Notice the "drive / user areas" have names and the prompt has a time-stamp in it. Do you see the file named LEE11H.COM? A DOS version of this CP/M program is LEE11HD.EXE. "Letter Extractor / Enhancer" is written in BASIC. It takes text files and converts them into "handwritten" files. It uses many small graphic files for the letters, numbers and special characters. To exit the Z-System environment, type EXIT. Here's a sample run of LEE11HD.EXE. c:\maxz80>LEE11HD.EXE I=CLIFF.HTM O=CLIFFH.HTM P=HTTP://PRIMEPUZZLE.COM/MOUSE/ Usage : LEE [[I=input file] [O=output file] [P=prefix]] or LEE no command tail to be prompted LEE, (Letter Extractor / Enhancer), Version 1.1H LEE generates "handwritten" files from text files. Done. File CLIFFH.HTM created. c:\maxz80> Click CLIFF.HTM to see the "typewritten" input. Click CLIFFH.HTM to see the "handwritten" output. |