                       -=*  VZEM version 2.2  *=-
                           By Guy Thomason
                              23/9/2001

Contents
========

Introduction
What's new
System Requirements
Basic Operation
Future Developments
Contacting Me
Credits
Disk Commands

Introduction
============

VZEM is a dos based emulator for the VZ200/300 computers, also known as the
Laser 200 & Texet TX8000 in some countries.


Version 2.2 emulates the following VZ hardware:

* 4 meg RAM, in switchable 16k pages 
* mode0 & mode1 graphics
* disk drive
* vz speaker
* keyboard

VZEM is written using the freeware DJGPP C compiler & Allegro library

What's New
==========

* Fixed keyboard bug
* Added 4 megs of paged memory! Yeeha!
* Added -t switch to enable alternate disk track size (0x9b0)

System requirements
===================

Pentium 233 or higher (Haven't tried it on anything less)
VGA card capable of 320x240 ModeX 
Soundblaster compatible sound card                     



Basic Operation
===============

To run VZEM type "VZEM" from a DOS command prompt. You will also
need the following files (included with the distribution) in the same
directory.

VZROM.V20     Basic rom
VZ200.FNT     mode0 character set
VZDOS.ROM     Disk rom

The disk rom is not strictly necessary, if it is not present in the current
directory VZEM will still run however disk emulation will be disabled. 

You can load a .VZ snapshot file from the command line using the 
-f switch, eg

vzem -f galaxon.vz

Will load and run galaxon. 

To map a disk image from the command line, use the -d switch eg

vzem -d vzdisk.dsk

If the file does not exist, VZEM will create it for you. If the file 
exists VZEM will open it for read/write access. Note that for newly created
files, you will still have to format the disk image using the INIT command.

The VZ DOS Rom supports 2 disk drives, but only drive 1 is currently
emulated in VZEM. I will add dual disk support in a later version. 

To run a snapshot and map to a disk image, simply use both switches eg

vzem -f database.vz -d vzdb.dsk

As of version 2.1 a new switch (-t) has been added to modify the track size.
I have made this selectable because I have had problems using the new size.
The default track size is 0x9a0, if you use the -t switch the track size is
changed to 0x9b0. If you use this switch, put it before the -d switch ie

vzem -f database.vz -t -d vzdb.dsk

To enable the 4 megs of banked memory, write the page number (0-255) to
port 0x70. This will swap the current 16k page starting at 0x8000 with the
selected page. To do this from basic, you would type

OUT 112, 1

which would select page 1. To return to the default page, type

OUT 112, 0

If you don't understand any of that then you probably have no need to worry
about paged memory. 

From within the emulator, you can enter a debug screen by pressing F10.
This allows for nicer loading of files, mapping to disk images, disassembling
Memory contents etc. 


Future Developments
===================

Add cassette, joystick & printer support. At least the hard parts are over
(Disk & Sound!)

I also need to fix up a couple utilities that convert WAV files to .VZ and
back again, the earlier versions had a bug in the wav header structure. The 
debug menu code is from an earlier version and needs a lot of tidying up. 

I've also started work on a windows version will I will complete once I'm
happy with dos VZEM.

Contacting Me
=============

You can contact me via email at intertek@powerup.com.au
I live in Brisbane, Australia. If any veezedders are in the area and can
drink their own bodyweight in beer then drop me a line and we'll get on it.


Credits
=======

* Marat Fayzullin * - Author of the Z80 emulation package that VZEM uses. I
got inspired to write a VZ emulator after looking at his MSX emulator code.
I actually wanted to write a VZ emulator for years, but it only became
possible once I studied his code.

* Juergen Buchmueller * - Author of the VZ200 driver for the mess emulator,
as well as drivers for zillions of other machines on mess and mame. 
The disk emulation in VZEM is totally based on his work. I don't actually
believe he exists, I think it is a team of programmers masquerading as one
man. No one person could be so goddamn smart.  

* Everyone on the VZ EMU List * - The technical information, articles,
scans, software, news etc coming from this group has ensured the VZ will
be forever preserved. A few years ago you could do a search on the VZ and
come up with a couple of links about a forgotten machine, now there's a
tonne of info and an active user group. If you don't already know about it,
check out the VZ page at vzalive.bangrocks.com 


Disk Commands
=============

BLOAD		Load a binary file			
BRUN		Load a binary file and execute
BSAVE		Save a binary file
CLOSE		Close an open data file
DIR		Directory of disk
INIT		Prepare a disk for use
ERA		Erase a file from disk
LOAD		Load a basic program
REN		Rename a disk file
OPEN		Open a data file
IN#		Read sequential data
RUN		Load and run a basic program
SAVE		Save a basic program
PR#		Write sequential data
DCOPY		Copy file from one disk to another
DRIVE		Select either drive 1 or drive 2
STATUS          Show the free space 
