/home/mwc/XYBASIC/log.txt 05/12-13/14 Build and run CP/M XYBASIC under emulation on steve's macair using Udo Munk's z80pack under OSX. --- Overview: Download/unpack/build/run emulator z80pack Download/unpack/install toolkit cpmtools Extract XYBASIC source files, concatenate to single source Copy XYBASIC source to CP/M drive Assemble, load, run --- Download z80pack source tarball: http://www.autometer.de/unix4fun/z80pack/ Read: "Quickstart to run the Digital Research OS's" Downloads | Unix host programs | Z80 CPU simulation ... >> Download >> z80pack-1.21.tgz Unpack: $ tar xvzf $DOWNLOADS/z80pack-1.21.tgz Build: $ cd z80-pack-1.21/cpmsim/srcsim $ make -f Makefile.osx $ make -f Makefile.osx clean $ cd ../srctools $ make $ make clean Backup disk images: $ cd ../disks/library $ cp -p * ../backups/ Run CP/M: $ cd cpmsim $ ./cpm2 a>dir [show directory] a>bye [to quit] Download cpmtools: Downloads | Unix host programs | Unix tools to access CP/M images... >> Link >> Gnu zipped tape archive Unpack: $ tar xvzf $DOWNLOADS/cpmtools-2.19.tar.gz $ cd cpmtools-2.19/ $ ./configure $ make Install: $ sudo mkdir -p /usr/local/bin /usr/local/share $ sudo chmod 777 /usr/local/bin /usr/local/share $ make install Extract XYBASIC source files: XYBASIC source filenames have no file extensions, so cpmcp with source * extracts them from the diskette image files XYBAS_[ABC].IMG. Use -f flag to specify text files, as text files are -padded under CP/M. $ cd src/XYBASIC $ cpmcp -f XYBAS_A.IMG 0:* ./ $ cpmcp -f XYBAS_B.IMG 0:* ./ $ cpmcp -f XYBAS_C.IMG 0:* ./ Edit source file version to create CP/M version of XYBASIC: $ cp -p version version_cpm $ emacs version_cpm [Set to true: cpm editc sdisk] [Set to false: nonst romsq c3908 c3885 fp9511 camac] [Source file fp9511 is truncated, don't use it!] Create CP/M XYBASIC source xybcpm.asm: [CP/M won't be happy if you use '_' in the target filename!] $ cat version_cpm [... other sources ...] initial >xybcpm.asm Create a CPM hard drive i: image: $ cd z80-pack-1.21/cpmsim/ $ ./format i Write xybcpm.asm to i: drive image as text: [Need -f option to designate 4MB drive, -t option for text file] $ cpmcp -t -f z80pack-hd drives/drivei.cpm xybcpm.asm 0: Run CP/M, check source, assemble, run. $ ./cpm2 A>type i:xybcpm.asm [dump .asm source] A>mac i:xybcpm.asm [assemble] A>load i:xybcpm.hex [load] A>i:xybcpm [run] XYBASIC CP/M ... [prints banner] [hit to accept defaults] OK [interactive XYBASIC prompt] [exit from XYBASIC] A>bye [exit from cpm2] $ Debug: extract PRN file and eyeball it. $ cpmcp -t -f z80pack-hd drives/drivei.cpm xybcpm.prn ./