# MESS System Information Data File
# Maintained by Hobie Troxell &  Chris Henry
# Send corrections/submissions to: 
#   Hobie Troxell <ht1848@yahoo.com> 
#   Chris Henry <battlepriest@hotmail.com>

# This file contains the basic documentation for most of the drivers presented in the MESS
# distribution. Please read the readme.txt, mess.txt and messnew.txt prior to reading this
# supplementary documentation. This file should be placed in the same directory as the MESS
# executable when using the DOS version of MESS. This file must be renamed HISTORY.DAT to
# be used with MESS32.

# Driver entries are usually divided into sections such as: Usage, Features, Links, Known Issues,
# History and Trivia, and MESS Emulation State.

# Usage - This section lists any helpful commands for the computer or console in question, 
# such as disk operating system and file loading BASIC commands. This information is not 
# intended to replace a proper owner's manual for the system in question, and only contains 
# the most simple commands that can also be found on any of dozens of websites devoted to 
# the system.

# Known Issues - This section lists any known problematic spots for the driver. These will be
# fixed as time and knowledge permit. Please be patient. If you have information that may
# help the MESS team resolve these issues, contact them at the addresses listed in MESS.TXT

# History and Trivia - This section contains various background pieces for a system. If you
# have anything you'd like to contribute contact me at the address above. Much of the 
# information in these sections was kindly provided by Thierry Schembri and Olivier Boisseau of the 
# "Old-computers.com Museum". Visit the excellent site at:  www.old-computers.com.

#---------------------------------------------------------------------------------------------#

$info=a2600
$bio
Atari 2600 Video Computer System


History and Trivia:

The Atari Video Computer System (VCS) was released in 1977 at a suggested retail price of 
$299, which dropped quickly as sales soared; about 340,000 systems were sold the first year 
alone.  Joe Decuir, Steve Mayer and Ron Milner designed the VCS.  The Atari VCS was 
developed under the project codename "Stella".  The VCS later became known, both commonly
and officially as the Atari 2600 (from the model number CX2600).  It is rumored that the number 
2600 was chosen because 2600 cycles was a prominent long distance access tone, and that
one of the developers had created devices that would trick pay phones into granting long
distance access as a hobby.


Features:

Resolution: 160 x 260 (horz.) at 60.00 Hz
CPU: 6507
Cpu Clock: 1.19 MHz
Graphics Clock: 1.19 MHz
Bits: 8 
ROM: 4k max
RAM: 128 bytes, in VLSI
Video Display Processor: Stella
Sprites: 32 
Colors: 256 (static)
Sound Processor: Two Channel Square or Noise (TIA)
Cartridge ROM: 2k up to 64k


Links:

Atari Age - www.atariage.com
Atari Historical Society - www.atari-history.com/a2600.html


MESS Emulation State:

This driver is highly preliminary. It will load most 2k, 4k, and 8k Game Program images, but will 
only display graphics for some of them. The games themselves are not currently playable. Work 
is continuing on the driver however. 

$end

#---------------------------------------------------------------------------------------------#

$info=a400
$bio
Atari 400 Home Computer


Usage/Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default. Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.


Most disk and cartridge images should work, though some graphic issues may exist. Note that
the Atari 400 has less memory than the Atari 800, and some disk images may not work as a
consequence; this is not a bug in the emulation.



History and Trivia:

The Atari 400 and 800 were the first home computers to use custom coprocessors and the first 
to use "sprites" and special video interruptions like display lists, features that will be 
implemented several years after on the Commodore Amiga. It offered high graphic resolution, 
lots of colors and great sound capabilities, more than other computers could do then! The 
two models had same characteristics, the 400 is the low-cost version, it has only 16 KB 
(instead of 48 KB), one cartridge port (two for the 800) and a membrane keyboard (a 
typewriter style keyboard one for the 800). 


$end

#---------------------------------------------------------------------------------------------#

$info=a5200
$bio
Atari 5200 SuperSystem


Usage/Known Issues:

Keyboard input is a little difficult, using a joystick or mouse is recommended.

Most games are playable. See a5200.crc for a fairly exhaustive compatibility list.


History and Trivia:

The Atari 5200 was introduced in 1982, and was actually designed to be a competitor to the 
Intellivision, before ColecoVision entered the market. Developed under the name of "Pam" 
(Atari, at the time, typically named projects after well-endowed female employees), Atari 
considered releasing it with that moniker; PAM in this case an acronym for "Personal Arcade 
Machine".


The 5200 shared much of the architecture of the Atari 400/800 computers, but featured a 
different cartridge connector and completely different controllers. Non-centering analogue 
joysticks which offered a full 360 degrees of mobility, were both innovative and unreliable. 
Other controller features included a keypad, and a ahead-of-it's-time pause button.


The Atari 5200 suffered from it's initial incompatibility with the VCS/2600 (an adapter was 
later released) and fierce competition from Coleco. When Warner Communications sold Atari 
Corp. to the Tramiels in 1984, they quickly removed it from the market.


$end

#---------------------------------------------------------------------------------------------#

$info=a7800
$bio
Atari 7800 ProSystem


Known Issues:

The Reset key "R" and Select key "S" are hard-mapped to the same location as the default 
Player 2 up and fire two, respectively. You will need to remap these manually to avoid
control conflicts in some games.

Most games work fine, but a few have graphic and playability issues. See a7800.crc for a 
full compatibility list.


History and Trivia:

Originally developed in 1984 as the Atari 3600, the Atari 7800 Prosystem was released to the 
US market in 1986, in an attempt to compete in a revitalized home videogame market. The 7800 
was actually designed by Gencomp as part of a lawsuit settlement (Gencomp had been sued for 
releasing a speedup chipset for Atari coinop Missile Command).


The 7800 was compatible with pre-existing Atari 2600 game program cartridges, without the need 
for expansion modules or turning switches, but was also designed to use enhanced 7800-only 
cartridges such as the pack-in "Pole Position 2". (n.b., only the 7800-specific cartridges are 
currently supported in MESS.) Many peripherals, including a computer/keyboard and high score 
saving cartridge were planned but never released.


Unfortunately for Atari, the system did poorly in the late 1980's market dominated by Nintendo.


www.atari-history.com has this interesting anecdote: "In the summer of 1984 the first 5,000 
Atari 7800's had just been built in the new El Paso assembly plant. The production line 
manager, Brad Saville was eager to meet with Jack Tramiel to show him the new flagship Atari 
video game console. The meeting ended abruptly as Jack Tramiel was quoted "Get your pollution 
out of here! We make computers now and we don't want your garbage." The line manager was fired 
2 days later. About 8-9 months later the line manager received a phone call from Atari asking 
him as to the whereabouts of the die molds for the Atari 7800. The ex-line manager responded 
that he did in fact know where they were and for $50/hour for about 200 to 300 hours of his 
time he would remember where they were and find them. The Atari Corp. representative who 
called was infuriated and informed the former production line manager that Atari's lawyers 
would be in contact with him. He never heard from Atari again."


$end

#---------------------------------------------------------------------------------------------#

$info=a800
$bio
Atari 800 Home Computer


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default. Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.


The Atari800 driver now has two ROM slots. It really had two slots, so the code was modified 
to optionally read the second part of a 16K ROM from the second cartridge filename provided 
(right slot). The previous version had a800_cartridge_32k flag which was wrong. Cartridges 
are either 8K or 16K, so that was renamed to ..._16k too ;)


Most disk and cartridge images should work, though some graphic issues may exist.


The Atari 800XL driver (a800xl) is not currently working.


History and Trivia:

The Atari 400 and 800 were the first home computers to use custom coprocessors and the first 
to use "sprites" and special video interruptions like display lists, features that will be 
implemented several years after on the Commodore Amiga. It offered high graphic resolution, 
lots of colors and great sound capabilities, more than other computers could do then! The 
two models had same characteristics, the 400 is the low-cost version, it has only 16 KB 
(instead of 48 KB), one cartridge port (two for the 800) and a membrane keyboard (a 
typewriter style keyboard one for the 800). 


$end

#---------------------------------------------------------------------------------------------#

$info=advision
$bio
Entex Adventurevision


Known Issues:

Sound is not currently supported.

All four games are playable. 


History and Trivia:

The Adventure Vision was a cartridge based, electronic handheld video game that was 
manufactured by Entex Industries in 1982. It measured about 13 1/4" X 10" X 9" and used 
one vertical strip of 40 red LEDs and a spinning mirror to produce a screen with a 150X40 
resolution drawn at 15 frames/sec. There were only four cartridges produced for it: Defender, 
Turtles, Super Cobra, and an Asteroids clone, Space Force.


Visit http://www.adventurevision.com for more information.


$end

#---------------------------------------------------------------------------------------------#

$info=aim65
$bio
Rockwell AIM-65


Very early computer 


Features:
* Integrated 20 digit (16segment) display 
* Full size keyboard
* Integrated printer
* Connector for tty input/output
* Tape interface


Known Issues:

* Display and keyboard working
* Usable picture of the display with its white frame as artwork would be nice.
* Would suffer from support for intelligent terminals as tty equipment.
* Stopped. For me it is much to cryptic to operate, and therefore not interesting for me anymore.


Contributors:

Richard A. Cini: provided help and pictures

$end

#---------------------------------------------------------------------------------------------#

$info=amiga
$bio
Commodore Amiga


Known Issues:

Sound is not currently supported.

The driver is now working fairly well, though some games may need more memory than currently
emulated.


History and Trivia:

The conceptor of the Amiga 1000 was Jay Miner, who created the Atari 800 many years before. 
He wanted to make the most powerful computer ever, then he joined a little California 
company called Amiga. He used the principle of the three coprocessors (again) to help the 
main processor. At the beginning, the Amiga had only 64 kilobytes of RAM!, Atari wanted to 
buy the Amiga but finally, Commodore succeeded to buy it (then there was a lawsuit, which 
Commodore won). It was meant to be a competitor to the Atari 520 ST. The operating system 
was done by Metacomco, a British company who specialized in the 68000 processor (they also 
made languages for the Sinclair QL). It is a fully multitasking system which looks like 
UNIX with a graphical user interface. It was the very first personal computer with great 
graphics and sound capabilities with a GUI environment. The Amiga BASIC was written by 
Microsoft (like most other versions of BASIC). The Amiga 1000 began to lose popularity one 
year later with the creation of its two main successors: the Amiga 500 and the Amiga 2000.
There were two versions of the Amiga 1000. The first one, just called "Amiga", was sold 
only in USA, had a NTSC display, and didn't have the video modes EHB and HAM, later 
versions would have this built in. The second one, called "Amiga 1000" (to avoid confusion 
with its successor, the Amiga 2000) had a PAL display, the enhanced video modes 
(HAM & EHB) and was built in Germany.




$end

#---------------------------------------------------------------------------------------------#

$info=apexc
$bio
APEXC (All Purpose Electronic X-Ray Computer)


Usage Notes:

You should specify a cylinder image with code to run in it. Arguably, APEXC does not require such
an image, since you may enter code in the control panel, but this would be a pain in the ass.


If the program you run use punched tape I/O, you may specify tape image files. The first unit is
read-only, the second unit is write-only.


On a CLI MESS port, the resulting MESS command line may look like this:
	mess apexc -cyln ram_image.apc -ptap input.tap output.tap


Note that, when you quit MESS or the APEXC driver, the contents of the cylinder are saved
to the image you specified. This simulates the behavior of the APEXC, where the cylinder image
IS the working memory. If you don't like this behavior, you may either write-protect
the cylinder image file, or keep a backup copy elsewhere on your hard disk (highly recommended).


Note that the APEXC CPU is stopped on start-up, so that you may check the machine state and enter
the start-up program address.


On start-up, the instruction at address 0 is loaded into the Control Register, then the machine
is stopped. To run the program starting at address 0, just press the Run/stop switch
(the Run/stop switch is mapped to the Return key on the main keyboard).


To start a program at another address, you need to load the first instruction into the Control
register with the control panel. To do so, use keys 1 through 0 on the main keyboard to enter
the 10-bit address into the 10 most significant bits of the Control Panel display, and set
other bits to 0 with the three rows of keys under 1 through 0 (each key toggles a bit in the
control panel display; don't be intimidated if it sounds complicated, it should eventually
appear straight-forward when you try, provided you know what binary scale is). You have thus
generated a Stop instruction pointing to the first instruction of the program. Write this
instruction into the Control Register, by holding Left Shift pressed and pressing 1 on
the numeric keypad. You should now press the Run/stop switch twice (mapped to the Return key
on the main keyboard). First press executes the stop order, but fetches the first
instruction of the program into the control register. Second press starts running the program,
starting with the first instruction.


Control panel usage:


This is relatively simple. The Control Panel may hold and display a 32-bit value. Display is made
of 32 lamps, which show the current value in binary scale (each lamp represents one bit). Hence,
the normal usage is loading the value you want to edit into the control panel, editing it,
then saving it to the proper location.


Default key map:

 Run/stop switch: Return key on main keypad

The next 6 keys may be used alone to read the register into the control panel display, or
in combination with the Left Shift key to write the value in the control panel display into the
register.

 Read/write Control Register: 1 key on numeric keypad

 Read/write Accumulator: 2 key on numeric keypad

 Read/write Register: 3 key on numeric keypad

 Read/write current Head Block (never used on APEXC - used for bank switching): 4 key on numeric keypad

 Read/write Memory Location: 5 key on numeric keypad

 Read/write memory location pointed to by ML register: 6 key on numeric keypad

 write instead of reading: Left Shift key (when you press one of the 6 keys above, the
designated register is read into the control panel display, unless this key is being pressed,
in which case the value in the control panel display is written into the register)

 Toggle bits 1 through 10 in display: keys 1 through 0 on the main keyboard

 Toggle bits 11 through 20 in display: key row directly below the former on the main keyboard
(Q through P if your keyboard is QWERTY)

 Toggle bits 21 through 30 in display: key row directly below the former on the main keyboard
(A through ; if your keyboard is QWERTY)

 Toggle bits 31 and 32 in display: key row directly below the former on the main keyboard
(W and X if your keyboard is QWERTY)


Known Issues:


The driver should work correctly as of MESS .37b15. Still, it needs development tools, sample
code and usage instructions desperately. I have tons of sample code (which was the reason for
starting to write this driver), but still need to retype it.  I have started work on an assembler,
too.


Since I have no description of the control panel of an actual APEXC, I implemented a common-place
control panel, so this part of the emulation is not accurate. I don't even know how an actual
APEXC was operated, and the procedures I describe above are not accurate, either.


History and Trivia:


The APEXC was designed by Andrew D. Booth at Birkbeck College, London, in the early 50's.
From 1943 on, he started working on the determination of crystal structures using X-ray diffraction
data.  The computations involved were extremely tedious and there was ample incentive for automating
the process. In 1947, along with his collaborator and future spouse Kathleen Britten, he spent
a few months with von Neumann's team, which was the leading edge in computer research at the time.
Booth designed an electromechanical computer, the ARC, in the late 40's. Later on, they built
an experimental electronic computer named 'SEC' (Simple Electronic Computer), and finally the APEC
(All-Purpose Electronic Computer) series.


According to a 1956 document, the APEC series included the following machines:

 * APE(X)C: Birkbeck College, London (before 1955)

 * APE(N)C: Board of Mathematical Machines, Oslo ('N' must stand for 'Norway')

 * APE(H)C: British Tabulating Machine Company (No idea what 'H' can stand for)

 * APE(R)C: British Rayon Research Association ('R' must stand for 'Rayon')

 * UCC: University College, London (circa January 1956)

 * MAC (Magnetic Automatic Calculator): "built by Wharf Engineering Laboratories" (February 1955)

 * The HEC (H... Electronic Computer - still no idea what 'H' can stand for), built by the British
Tabulating Machine Company (later to become International Computers and Tabulators (ICT),
then International Computers Limited (ICL)), a commercial machine sold in at least two models
(HEC 2M and HEC 4) (before 1955)


Only one of each of these machines was built, with the exception of HEC (and possibly MAC)
which were commercial machines produced in small series. They were similar in design,
with various small differences, mostly in I/O equipment (either punched-card machines - APEXC,
APEHC - or teletypers (keyboard and printer, and paper tape reader and puncher) - APERC, APENC).
Also, the UCC had 8k words of storage, instead of 1k word for other machines, and the MAC
used germanium diodes in replacement of many tubes.


I am sorry I know little more about Booth, his team, and the history of these machines.


Technical Description:


The APEXC is an incredibly simple machine.


Instruction and Data words are always 32-bit-long. The processor uses integer arithmetic with 2's
complement representation. Addresses are 10-bit-long. The APEXC has no RAM, except a 32-bit
accumulator and a 32-bit data register (used along with the 32-bit accumulator to implement 64-bit
shift instructions and hold the 64-bit result of a multiplication). Instructions and data are
stored in two magnetic drums, for a total of 32 circular magnetic tracks of 32 words. Since
the rotation rate is 3750rpm (62.5 rotations per second), the program execution speed can go
from as high as the theoretical maximum of 1 kIPS to lower than 100IPS if program instructions
and data are not contiguous. Nowadays, many a pocket calculator is faster.


One oddity is that there is no program counter: each machine instruction includes the address
of the next instruction. This design may sound weird, but it is the only way to achieve optimal
performance with this cylinder-based memory.


The machine code is made of 15 instructions only, namely addition, subtraction, multiplication,
load (3 variants), store (2 variants), conditional branch, right arithmetic bit shift,
right bit rotation, punched-card input, punched-card output, machine stop, and bank-switching
(which is never used on the APEXC, since it only has 1024 words of storage, and addresses are
10-bit-long). A so-called vector mode enables to repeat the same operation 32 times with 32
successive memory locations. Note the lack of bitwise and/or/xor and division. Also, note
the lack of indirect addressing modes: dynamic modification of opcodes is the only way one may
simulate it.


Another oddity is that the memory bus and the ALU are 1-bit-wide. There is a 64kHz bit-clock and
a 2kHz word-clock, and each word memory and arithmetic operation is decomposed into 32 1-bit
memory and arithmetic operations: this takes 32 bit cycles, for a total of 1 word cycle.


The processor is fairly efficient: most instructions take only 2 word cycles (1 for fetch,
1 for read operand and execute), with the exception of stores, shifts and multiplications.
Yes, the APEXC CPU is a RISC: there is no other adequate word.


Note there is no ROM, and therefore no 'bootstrap loader' or default start-up program whatever.
As far as I know, no executive or operating system was ever written for the APEXC, although
there were subroutine libraries of sorts for common arithmetic, I/O and debug tasks.


Operation of the machine is normally done through a control panel which allows the user to start,
stop and resume the CPU, and to alter registers and memory when the CPU is stopped. When starting
the machine, the address of the first instruction of the program to be executed must be entered
in the control panel, then the run switch must be pressed. Most programs end with a stop
instruction, which enables to check the state of the machine, possibly run some post-mortem
debugging procedures (a core dump routine is described in an APEXC programming book), then enter
the address of another program and run it.


Two I/O devices were supported: a paper tape reader, and a paper tape puncher. The puncher output
could be fed to a printer ('teletyper') unit when desirable. Printer output is emulated and is
displayed on screen. Tape input was either computer-generated by the APEXC, or hand-typed with
a special 32-key keyboard (each tape row had 5 data holes (<-> bits), which makes 32 different
values).

$end

#---------------------------------------------------------------------------------------------#

$info=apfimag
$bio
APF Imagination Machine


The APF Imagination has the same hardware as the APF-M1000, but it is a computer.
It has a keyboard and built in cassette player.

An additional disc interface was available.

In basic, pressing "FUNCTION" (currently mapped to CTRL) and a letter/number will display
a basic keyword making it easier to enter programs.


FUNCTION+Q = IF
FUNCTION+W = STEP
FUNCTION+E = STOP
FUNCTION+R = READ
FUNCTION+T = NEXT
FUNCTION+Y = PRINT
FUNCTION+U = END
FUNCTION+I = LIST
FUNCTION+O = REM
FUNCTION+P = USING
FUNCTION+1 = GOSUB
FUNCTION+2 = LET
FUNCTION+3 = DATA
FUNCTION+4 = INPUT
FUNCTION+5 = DIM
FUNCTION+6 = FOR
FUNCTION+7 = RETURN
FUNCTION+8 = THEN
FUNCTION+9 = ON
FUNCTION+0 = GOTO
FUNCTION+- = RESTORE
FUNCTION+ENTER = CLOAD

For cassette:

Use CSAVE"<filename>" to save a file, and CLOAD"" to load the file back.

For disc:

Use SAVE"<filename>" to save a file, and LOAD"<filename>" to load the file back.
You can use "DIR <drive number>" e.g. "DIR 0" and "DIR 1" to give a directory of the
disc.

Basic disk images with the ".APD" extension are supported.


Known issues:

* cassette loading and saving is working

* interrupts are not exact. I don't know enough about them, any info would be appreciated.

* disc interface is working, but there may be some bugs.

* keyboard is mostly working but some keys may be missing

* keypad is not emulated

* the M6847 emulation is very advanced *BUT* I don't think I have set it up correctly for the APF Imagination, therefore the graphics are wrong.

* memory emulation is not complete

$end

#---------------------------------------------------------------------------------------------#

$info=apfm1000
$bio
APF M-1000


The APF M-1000 is a console. It has a built in game. The emulation is not exact and the
built in game does not work.

Known issues:

* internal game does not work
* keypad is not emulated

$end

#---------------------------------------------------------------------------------------------#

$info=apple1
$bio
Apple 1


History and Trivia:

Steve Wozniak, who worked for Hewlett-Packard at the time, wanted to build his own computer.
He couldn't afford the Intel 8080 CPU (this CPU was very popular then, as it was used in the
Altair 8800 & IMSAI 8080, but was pretty expensive), he would use the Motorola 6800 but it
was also much too expensive. Finally he decided to build his computer around the MOS 6502
(which was pretty compatible with the Motorola 6800). The computer was easier to use than
the Altair: unlike the Altair, the computer has a keyboard and can display characters on a
TV (the Altair uses LEDs for its display). The display was very slow, only 60 characters (!)
were displayed each second.


Steve Jobs, who made the game "Breakout" for Atari, with a little help from "the Woz", was
interested in this computer. Together they created the Apple Computer Company and they tried
to sell the computer. Paul Terrell, the owner of a computer shop, was interested in this
computer, but fully assembled (the Apple 1 was sold "naked", no monitor, power supply,
keyboard, tape drive, etc.) and with a cassette interface, which Wozniak designed. He sold
it with the Basic he wrote soon after. They sold about two hundred of these units. This
machine was so popular that Jack Tramiel of Commodore (!) offered to buy Apple, because
Apple was, at the time, a major purchaser of MOS 6502 processors (Commodore owned Mos
Technologies). Wozniak wanted $15,000 more than Tramiel offered, needless to say, the deal
fell through. It was followed the next year by the Apple ][.


$end

#---------------------------------------------------------------------------------------------#

$info=apple2c
$bio
Apple //c Series


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by
default. Whilst in full keyboard emulation mode, some key associated functionality may be
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the
scroll_lock key.


History and Trivia:

Apple "][", Apple "II", Apple "//" - Which is correct?

"][", "II", and "//" tend to be used pretty much interchangably for any model of Apple II
computer, although, practically speaking, there are a few usages which may provoke a
correction.

"][" is the original Apple II symbol. It appears on all early II's and II+'s as well as on the
Disk ][ drive. It is, easily, the most attractive and distinctive II symbol; but, it is also
associated with old Apple II's. The "//" usage is generally associated with the "c" and
newer "e" models.

The generally preferred machine designations are:

Apple ][   or  Apple II for pre-][+ models
Apple ][+  or  Apple II+
Apple IIe  for non-enhanced IIe computers
Apple //e  for 128k-enhanced IIe computers
Apple //c
Apple IIc+
Apple IIgs or  GS  or best (if you have the fonts)  ||GS

The Apple //c is the compact (the "c" means compact) version of the Apple IIe. It has the
same characteristics but lot of features which are optional on the IIe are provided on the
//c (floppy disk drive, 80 columns display, color display, 128 KB RAM), but unlike the
Apple IIe, it has no expansion slots, so it is hard to add features to this computer. It
runs either with DOS 3.3 either with ProDos and has the first version of QuickDraw in ROM.
The Apple //c was originally designed to be a portable version of the Apple II, but it
wasn't a stand alone system, it has no batteries and no LCD screen (Apple would soon
release the items), it could also be used with a small 9" monochrome green screen which
plugged into the unit. The Apple //c was mainly used as a desktop computer and
was replaced with the Apple IIc+ in 1988.


The Apple IIc+ unit was a direct response to the Laser 128EX/2.  Apple retrofitted the
//c design to try to compete with Video Technology's high speed Apple II clone. The
retrofitting is evident in the design of the motherboard.  The motherboard runs at 1Mhz,
unlike the Laser 128EX/2.  In order to run its programs faster, Apple used a 4Mhz 65C02
with 8k of high speed SRAM cache and licensed the accelerator design from Zip
Technologies (makers of the ZipChip accelerator for the IIe and //c).  They built an
accelerator into a 1Mhz motherboard rather than design a faster motherboard from scratch.


The designers of the Apple IIc+ originally wanted to make a portable ||GS. Apple's
management, bent on promoting the Mac, balked at the idea. At the same time, the
Laser 128EX/2 made a quick design cycle mandatory. The result is an updated //c.

Apple //c went under several revisions: you can discover which machine you are using issuing
the command PRINT PEEK(64447).

If 255 is displayed, you have the first, original model. This model is known to have problems
producing accurate baud rates for serial communications.

If 0 is displayed, you can use 3.5" drives, but you don't have the memory expansion connector.

If 3 is displayed, you have the memory exapnsion connector and you can plug in extra memory.

If 4 is displayed, you have the latest model with memory expansion connector and extra upgrades.

If 5 is displayed, you have an Apple IIc+.

The Apple IIc+ was the finest Apple 8-bit computer ever built, but lack of marketing,
the apparent de-evolution in technology compared to the 16-bit Apple ||GS, and the
aggressive sale of the Laser 128EX/2 made the IIc+ the most short lived of the
Apple II models.


$end

#---------------------------------------------------------------------------------------------#

$info=apple2e
$bio
Apple IIe series


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by
default. Whilst in full keyboard emulation mode, some key associated functionality may be
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the
scroll_lock key.



History and Trivia:

Apple "][", Apple "II", Apple "//" - Which is correct?

"][", "II", and "//" tend to be used pretty much interchangably for any model of Apple II
computer, although, practically speaking, there are a few usages which may provoke a
correction.

"][" is the original Apple II symbol. It appears on all early II's and II+'s as well as on the
Disk ][ drive. It is, easily, the most attractive and distinctive II symbol; but, it is also
associated with old Apple II's. The "//" usage is generally associated with the "c" and
newer "e" models.

The generally preferred machine designations are:

Apple ][   or  Apple II for pre-][+ models
Apple ][+  or  Apple II+
Apple IIe  for non-enhanced IIe computers
Apple //e  for 128k-enhanced IIe computers
Apple //c
Apple IIc+
Apple IIgs or  GS  or best (if you have the fonts)  ||GS


The Apple IIe (the "e" means enhanced) is the successor of the Apple ][+. It was a very
great success and was widely used in schools (and it's still used today in some places!)
It works under DOS 3.3 (the Apple II operating system) and uses 143 KB floppy disks.


The Apple IIe was replaced with the Apple //e, which had an enhanced keyboard, a 4 MHz
65C02 CPU and a 3.5" floppy disk unit.


$end

#---------------------------------------------------------------------------------------------#

$info=aquarius
$bio
Mattel Aquarius


Usage Notes:

From within the emulation, there are several BASIC command keyboard shortcuts available by
pressing control and another key.


CHR$      Ctrl[SPACE]

CLOAD     Ctrl[Z]

COPY      Ctrl[9]

CSAVE     Ctrl[A]

DATA      Ctrl[F]

DIM       Ctrl[E]

FOR       Ctrl[-]

GOSUB     Ctrl[7]

GOTO      Ctrl[5]

IF        Ctrl[3]

INPUT     Ctrl[T]

LEFT$     Ctrl[V]

LIST      Ctrl[2]

MID$      Ctrl[B]

NEXT      Ctrl[=]

ON        Ctrl[6]

PEEK      Ctrl[;]

POINT     Ctrl[L]

POKE      Ctrl[']

PRESET    Ctrl[K]

PSET      Ctrl[J]

READ      Ctrl[D]

REM       Ctrl[W]

RIGHT$    Ctrl[N]

RETURN    Ctrl[8]

RUN       Ctrl[1]

STR$      Ctrl[,]

THEN      Ctrl[4]

VAL       Ctrl[.]


To break/stop a program, press Ctrl[C]

To interrupt the LISTing of a program, press Ctrl[S]

To repeat the entire last line you typed, press Ctrl[R]

To get the machine to beep, press Ctrl[G]


Known Issues:

Image loading is not currently supported.


History and Trivia:

The Aquarius was Mattel Electronics' (a division of a huge US toy manufacturer) attempt at
entering the home computer market. It was a commercial failure, and was frequently found 
in bargain bins in toy stores for many years following. 


$end

#---------------------------------------------------------------------------------------------#

$info=arcadia
$bio
Emerson Arcadia 2001


Console

Hanimex mpt-03 (first variant?) with large cartridge slot
Palladium Video - Computer - Game with different cartridge slot, Controllers

Emerson Arcadia 2001
Schmid TVG2000 / Tele Fever
Hanimex hmg 2650
? leisure vision

sold from several firms with different names

Features
--------
128x208 in 8 colors
4 8x8 single color sprites
single channel sound
2 controller with analog joystick and keypad

controller layout
-----------------
  1   2   3
  4   5   6
  7   8   9
 Del  0 Enter

Emulator
--------
r2001 for DOS by Paul Robson at http://users.aol.com/mk14emu/arcadia.htm


Known issues:

* Based on info by Paul Robson, Ward Shrake
* Look into crc/arcadia.crc for some issues
* Bad analog joystick emulation

$end

#---------------------------------------------------------------------------------------------#

$info=astrocde
$bio
Bally Professional Arcade/Astrocade


Usage:

Loading the Astrocade driver without a cassetridge image will allow you to use the four
built-in programs.


Known Issues:

To the best of our knowledge, full compatibility, aside from Bally Basic tape support.


History and Trivia:

The game console commonly known as the "Bally Astrocade" was never officially sold by that 
name, having originally been released by Bally Manufacturing in 1978 as the Bally Professional 
Arcade. It was withdrawn rather quickly though, due to the success of the competing Atari VCS. 
A group of Pro Arcade enthusiasts under the name Astrovision Inc., bought the rights to the 
Pro Arcade and reintroduced it as the Bally Computer System, including the Basic casettrige as 
a pack-in. In 1982, the system and company was renamed Astrocade, once again trying to market 
it as a video game system. The system didn't last much longer, though; it was a product with a 
limited interest base even before the video game slump of the next few years.


$end

#---------------------------------------------------------------------------------------------#

$info=at
$bio
AT (1987)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=atom
$bio
Acorn Atom (1979)


Features:



MESS Emulation State:



$end

#---------------------------------------------------------------------------------------------#

$info=avigo
$bio
TI Avigo


This system does not work properly.
There is no documentation on the hardware available and more is required.

$end

#---------------------------------------------------------------------------------------------#

$info=bbca
$bio
Acorn BBC Micro Model A (1981)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=bondwell
$bio
BONDWELL PRO28 Series - BW230


IBM PC compatible computer

Features:

CPU on pc-type adapter
 8088 with 3.75/8 mhz (turboswitch)
 socket for 8087
 512 kb ram build in 
 sockets for additional 128kb ram on board
 integrated floppy disk controller
 setup ram/realtime clock?
 MF2 Keyboard (US layout)
 socket for additional bios?
game port on motherboard or slot?
serial port on motherboard or slot?
parallel port on motherboard or slot?
cga adapter in slot or motherboard?
5 1/4 inch 360 kb disk drive
harddisk controller in slot or motherboard?
32mb harddisk

MESS Emulation State:

basically the same as mess ibmpc emulation
rtc/setup ram not emulated
character rom dump missing
needs i8086 "dirval reset fix" to work
bios stops without emulation of disketts controller (->you have to start with disk image!)


$end

#---------------------------------------------------------------------------------------------#

$info=c128
$bio
commodore c128


Sequel of to the c64.


Description:

hardware emulation mode for c64
 displayed over din/tv connector only
 c64 cartridges
 c64 userport
 only the c64 standard keys available
country support (keyboard, character rom, kernel (keyboard polling))
 character rom german
 character rom french, belgium, italian
 editor, kernel for german
 editor, kernel for swedish
 editor, kernel for finish
 editor, kernel for norwegian
 editor, kernel for french
 editor, kernel for italian
enhanced keyboard
m8502 processor (additional port pin)
additional vdc videochip for 80 column modes with own connector (rgbi)
 16k byte ram for this chip
128 kbyte ram, 64 kbyte rom, 8k byte charrom, 2k byte static colorram
 (1 mbyte ram possible)
sid6581 soundchip
c64 expansion port with some additional pins
z80 CPU for CPM mode

c128d:

 c1571 floppy drive build in
 64kb vdc ram
 sid8580 sound chip

c128cr/c128dcr:

 cost reduced
 only modified for cheaper production (newer rams, ...)


MESS emulation state:

uses c64 emulation for c64 mode
so only notes for the additional subsystems here

rasterline based video system
 no CPU holding
 imperfect scrolling support (when 40 columns or 25 lines)
 lightpen support not finished
 rasterline not finished
vdc emulation
 dirtybuffered video system
 text mode
  only standard 8x8 characters supported
 graphic mode not tested
 lightpen not supported
 scrolling not supported
z80 emulation
 floppy simulation not enough for booting CPM
 so simplified z80 memory management not tested
no CPU clock doubling
no internal function rom
c64 mode
 differences to real c64???
no sound
cia6526's look in machine/cia6526.c
keyboard
gameport a
 paddles 1,2
 joystick 1
 2 button joystick/mouse joystick emulation
 no mouse
 lightpen (not finished)
gameport b
 paddles 3,4
 joystick 2
 2 button joystick/mouse joystick emulation
 no mouse
simple tape support
 (not working, cia timing, CPU timing?)
serial bus
 simple disk drives
 no printer or other devices
expansion modules
 no c128 modules
expansion modules c64
 rom cartridges (exrom)
 ultimax rom cartridges (game)
 c64 cartridges (only standard rom cartridges)
 no other rom cartridges (bankswitching logic in it, switching exrom, game)
 no ieee488 support
 no cpm cartridge
 no speech cartridge (no circuit diagram found)
 no fm sound cartridge
 no other expansion modules
no userport
 no rs232/v.24 interface


Video notes:

if the game runs too fast with the NTSC version, try the PAL version!
flickering affects in one video version, try the other video version


Keys:

Some PC-Keyboards does not behave well when special two or more keys are
pressed at the same time
(with my keyboard printscreen clears the pressed pause key!)

shift-cbm switches between upper-only and normal character set
(when wrong characters on screen this can help)
run (shift-stop) loads program from type and starts it
esc-x switch between two videosystems

additional keys (to c64) are in c64mode not useable


Lightpen:

Paddle 5 x-axe
Paddle 6 y-axe


Tape:

(DAC 1 volume in noise volume)
loading of wav, prg and prg files in zip archive
command line -cassette image
wav:
 8 or 16(not tested) bit, mono, 125000 Hz minimum
 has the same problems like an original tape drive (tone head must
 be adjusted to get working(no load error,...) wav-files)
zip:
 must be placed in current directory
 prg's are played in the order of the files in zip file

use LOAD or LOAD"" or LOAD"",1 for loading of normal programs
use LOAD"",1,1 for loading programs to their special address

several programs relies on more features
(loading other file types, writing, ...)


Discs:

only file load from drive 8 and 9 implemented
 loads file from rom directory (*.prg,*.p00) (must NOT be specified on command line)
 or file from d64 image (here also directory LOAD"$",8 supported)
use LOAD"filename",8
or LOAD"filename",8,1 (for loading machine language programs at their address)
for loading
type RUN or the appropriate sys call to start them

several programs rely on more features
(loading other file types, writing, ...)

most games rely on starting own programs in the floppy drive
(and therefore CPU level emulation is needed)


Roms:

.prg
.crt
.80 .90 .a0 .b0 .e0 .f0
files with boot-sign in it
  recognized as roms

.prg files loaded at address in its first two bytes
.?0 files to address specified in extension
.crt roms to addresses in crt file


Quickloader:

.prg and .p00 files supported
loads program into memory and sets program end pointer
(works with most programs)
program ready to get started with RUN
loads first rom when you press quickload key (numeric slash)


c64 mode:

hold down commodore key while resetting or turning on
type go64 at the c128 command mode


cpm mode:

cpm disk must be inserted in device 8
turn on computer
or
type boot at the c128 command mode

when problems start with -log and look into error.log file


rom dumping:

Dumping of the roms from the running machine:
in the monitor program
s "drive:name",device,start,end

s "0:basic",8,f4000,fc000
s "0:editor",8,fc000,fd000
s "0:kernel",8,ee000,f0000
s "0:char128",8,ed000,ee000

*z80bios missing (funet says only 1 version!?)
I don't know, maybe there is a cpm utility allowing saving
the memory area 0-0xfff of bank 0.
(I don't want to develop (and can't test) this short complicated
program)

*c64basic and kernel (only 1 version!?)
in c64 mode
poke43,0:poke44,160:poke45,0:poke46,192:save"0:basic64",8

in c64 mode
for i=0 to 8191:poke 32*256+i, peek(224*256+i): next
poke43,0:poke44,32:poke45,0:poke46,64:save"0:kernel64",8

*c64 charset (swedish version or original c64 version)
in c128 mode
monitor
a 2000 sei
lda #33
sta 1
ldy #0
sty fa
sty fc
lda #c0
sta fd
lda #d0
sta fb
ldx #10
lda (fa),y
sta (fc),y
iny
bne 2015
inc fb
inc fd
dex
bne 2015
lda #37
sta 1
cli
rts
(additional enter to end assembler input)
x (to leave monitor)
go64 (answer with y)
sys 32*256
poke 43,0:poke44,192:poke45,0:poke46,208:save"0:char64",8

or in c64 mode
load the program in the attachment
load"savechar64",8,1
sys 32*256
poke 43,0:poke44,192:poke45,0:poke46,208:save"0:char64",8

c128d floppy disk bios:
I think you have to download a program
copying the bios to puffers.
Then you could read this buffer into the computer, or write
these buffers to disk.

Transportation to your pc:
1571 writing to mfm encoded disketts (in cpm mode only, or use program)
 maybe the IBM CPM-86 formats are like the standard DOS formats.
 but using dd may create images known by some other emulators.
1581 writes mfm encoded:
 can one of these drives to a format know by linux?
Some years ago I build a simple adapter pc/parport to vc1541
 floppy disk drive.

Dumping roms with epromer:

c128
U18       (read compatible 2764?) 8kB c64 character rom, c128 character rom
U32 23128 (read compatible 27128?) 16kB c64 Basic, c64 Kernel
U33 23128 (read compatible 27128?) 16kB c128 Basic at 0x4000
U34 23128 (read compatible 27128?) 16kB c128 Basic at 0x8000
U35 23128 (read compatible 27128?) 16kB c128 Editor, Z80Bios, C128 Kernel
c128 cost reduced
U18       (read compatible 2764?) 8kB c64 character rom, c128 character rom
U32 23256 (read compatible 27256?) 32kB c64 Basic, c64 Kernel, c128 Editor, Z80Bios, C128 Kernel
U34 23256 (read compatible 27256?) 32kB C128 Basic
c128dcr
as c128 cr
U102 23256 (read compatible 27256?) 32kB 1571 system rom

$end

#---------------------------------------------------------------------------------------------#

$info=c16
$bio
Commodore C16, Plus 4, and C364


Cassette Usage:

Cassette images can have the .wav or .prg extensions, and multiple .prg files 
can be contained within a zip file. Zip files must be placed in the current directory, and 
the contained prg files are played in sequential order.


The format for WAVs are: 
8 bit (16 bit may work, but this hasn't been tested), mono, 12500 Hz minimum. This has the 
same problems as an original Datasette tape drive (the tone head must be adjusted to get 
working (no load error...) wav-files)


Note that tape volume is DAC1 volume within the MESS UI On Screen Display Options (accessed
with the tilde (~) key in the DOS version.


Within the emulation, use LOAD or LOAD"" or LOAD"",1 for loading normal programs. Use 
LOAD"",1,1 for loading programs to a special address.


Diskette Usage:

Disk drives are simulated at the moment, and only file loads from drive 8 and 9 
are implemented. You can load a program file from the rom directory (*.prg,*.p00)
(This must NOT be specified on command line, start the c16 emulation with no images specified)


The directory command LOAD"$",8 is supported when using d64 images.



Within the emulation, basic programs can be loaded with: 


DLOAD"filename" or LOAD"filename",8 



Machine language programs can be loaded to their address with: 


DLOAD"filename" or LOAD"filename",8,1


When a program is loaded, type RUN or the appropriate SYS call to start it. 


Note that several programs rely on more features not currently emulated (such as 
loading other file types, writing...) Some games also rely on starting programs in the 
floppy drive's processor (and therefore CPU level emulation of the 1541 is needed).


Cartridge Usage:

Cartridges may have any of the following extensions: .bin .rom .lo .hi .prg
Files with boot-sign in it are recognized as roms. Some cartridges require more than one 
image to load (e.g., tutor.lo tutor.hi).


 
.prg files loaded at address in its first two bytes


 
.bin, .rom, .lo , .hi roms are loaded to cs1 low, cs1 high, cs2 low, cs2 high addresses 
accordingly to their order in the command line.


 
Note that .prg and .p00 files are assigned to the quickloader (so you have to use 
the -cart switch when loading rom images).


Quickloader Usage:

A quickloader is available via the f8 key. It supports program image files 
with the .prg extension. This loads the program into memory and sets the program end 
pointer. It works with most programs. The program can be started by entering "RUN" in 
the emulation.


Miscellaneous Usage Notes:

See "Keys (This Machine)" for key assignments.

Shift-cbm switches between upper-only and normal character set (if wrong characters are on 
screen this may help).

Run (shift-stop) loads the first program from device 8 (dload"*) and starts it.

If you run into difficulty, be sure to start the emulation with the -log switch, and look into
the error.log file that is created in your mess directory.


Known Issues:

Memory check by c16 kernel will not recognize more memory without restarting MESS.

CPU clock switching/changing.

Imperfect colors; should be enough for 95% of the games and programs.

Imperfect scrolling support (when 40 columns or 25 lines)

Lightpen support missing.

Some PC-Keyboards do not behave well when special two or more keys are pressed at the same 
time (with my keyboard printscreen clears the pressed pause key!)

Expansion modules other than the 1551 floppy drive are not supported.

The rs232/v.24 interface is not supported, nor are printers and other parallel devices.

The Plus 4's userport is not supported.

Note if a game runs too fast with the NTSC version, try the PAL version!


The following features are emulated:

rasterline based video system

keyboard, joystick 1 and 2

simple tape support

serial bus

simple disk drives

expansion modules

rom cartridges

simple ieee488 floppy support (c1551 floppy disk drive)

quickloader


History and Trivia:

When the first Commodore 264 prototype unofficially debuted at the Winter Consumer 
Electronics Show (CES) in January (?) 1984, the developers had obviously not yet agreed 
about the keyboard layout; some keys are unlabeled, the right shift key was missing, 
instead having a key which seems to be meant as a line feed key.

 
It was planned that when buying a C264, you could have chosen between these programs: 

3 plus 1 (word processor, data base, spread sheet, windowing) 

Superscript (professional word processor) 

Magic Desk (word processor, data base, spread sheet, calculator) 

Logo 

Pilot 

Easycalc 264 (spread sheet) 

COM 264 

Financial Advisor 


 
The C264 should then be delivered with the selected program built in. The remaining programs 
could only be used with cartridges for the expansion port.


 
The official presentation of the C264 series took place on the Hannover fair in 1984. 
Luckily, the developers didn't eliminate the right shift key in the final keyboard layout. 
The formerly unlabeled keys bear a label now: the key that used to be the left arrow 
key on the C64 and the VC20 says 'Esc', the key between '@' and '*' bears the English pound 
sign, and the key that was labelled 'SHIFT LOCK' on all 8-bit computers Commodore ever 
produced now says - guess what - 'SHIFT LOCK' :-) (must have been a hard decision between 
SHIFT and CAPS lock).


 
A word about the C364 : This prototype was a C264 with a bigger keyboard (86 keys incl. a 
numeric keypad) and with a builtin speech synthesizer with a vocabulary of 250 words (which 
could be expanded by either diskettes or modules). Commodore dropped this model and decided 
to sell a separate speech module (Magic Voice) for the C64.


 
Among the Commodore news from the Summer CES 1984 was the renaming of the C264 to Plus/4. 
This renaming came along with a slight change in the builtin software: you could not choose 
between many different programs anymore, but each Plus/4 was delivered with the 3-plus-1 
software.


 
The built-in software was really limited: a word processing (only with 40 columns and can 
manage documents with only 99 lines of 77 columns), a very small spreadsheet (only 17 
columns and 50 lines), a poor graphic software (which can display graphically data from 
the sheets but only in text mode) and a small database (999 record with 17 fields each 
and only 38 characters by field). Most of these programs can only be used with a floppy 
disk unit. The Plus 4 can use peripherals of the C64 or the Vic 20, the printer MPS801 
and the Disk Unit 1541 run well with it but it can't use C64 software. This machine 
wasn't built to be a competitor of the C64 nor to replace it. It has an improved basic 
in relation to the C64 one with graphic and sound instructions and a built-in assembler, 
but has lost lots of interesting C64 features like great soundchip or hardware sprites. 


 
The Commodore 16/116 belongs to the Commodore 264 series (with the Commodore Plus/4). It was 
designed to replace the Commodore VIC-20, but was not compatible with it, nor with 
the C64. It had the same characteristics as the Commodore Plus/4 : same graphic resolution, 
same sound system, same CPU and speed, just less memory. It has a powerful basic language 
(contrary to the VIC-20 or the C64) which makes graphics and sounds easy to program. 
The C16, like the Commodore Plus/4 was a commercial failure.


 
The C116 was an earlier version of the C16 and had a rubber keyboard. It was sold in Austria, 
at least, and perhaps in other countries as well.


 
It seems that the first C16s had the two control ports labelled JOY 0 and JOY 1 instead of 
JOY 1 and JOY 2, just as a hint for collectors :-)


 
Note that like the C116, the C16 lacks a user port.


$end

#---------------------------------------------------------------------------------------------#

$info=c64
$bio
Commodore 64


Diskette Usage:

Disk drives are simulated at the moment, and only file loads from drive 8 and 9 
are implemented. You can load a program file from the rom directory (*.prg,*.p00)
You can also load a file from a d64 image (The directory command LOAD"$",8 is supported when 
using d64 images).


 
Within the emulation, basic programs can be loaded with:  LOAD"filename",8 


 
Machine language programs can be loaded to their address with:  LOAD"filename",8,1


 
When a program is loaded, type RUN or the appropriate SYS call to start it. 


 
Note that several programs rely on more features not currently emulated (such as 
loading other file types, writing...) Some games also rely on starting programs in the 
floppy drive's processor (and therefore CPU level emulation of the 1541 is needed).


Cartridge Usage:

Cartridges may have any of the following extensions: .prg .crt .80 .90 .a0 .b0 
.e0 .f0   Files with boot-sign in it are recognized as roms. Some cartridges may require more 
than one image.

 
.prg files loaded at address in its first two bytes

 
.?0 files are loaded to the address specified in the extension.

 
.crt roms are loaded to the addresses specified in crt file.


 
Note that .prg files are assigned to the quickloader (so you have to use 
the -cart switch when loading rom images).


Cassette Usage:

Cassette images with the .wav or .prg extensions as well as multiple .prg files 
contained within a zip file can be loaded. Zip files must be placed in the current directory, 
and the contained prg files are played in sequential order.


 
The format for WAVs are: 
8 bit (16 bit may work, but hasn't been tested), mono, 12500 Hz minimum. This has the same 
problems as an original Datasette tape drive (the tone head must be adjusted to get working 
(no load error...) wav-files)


 
Note that tape volume is DAC1 volume within the MESS UI On Screen Display Options (accessed
with the tilde (~) key in the DOS version.


 
Within the emulation, use LOAD or LOAD"" or LOAD"",1 for loading normal programs. Use 
LOAD"",1,1 for loading programs to a special address.


Quickloader Usage:

A quickloader is available via the f8 key. It supports program image files with 
the .prg and .p00 extensions. This loads the program into memory and sets the program end 
pointer. It works with most programs. The program can be started by entering "RUN" in the 
emulation.


Miscellaneous Usage Notes:

Gameport A supports paddles 1 & 2,  joystick 1, lightpen (implementation not finished).

Gameport B supports paddles 3 & 4, joystick 2

If you run into difficulty, be sure to start the emulation with the -log switch, and look into
the error.log file that is created in your mess directory.

If the game runs too fast with the NTSC version, try the PAL version! (c64pal)


Known Issues:

The rasterline based video system currently has the following issues: no CPU holding, imperfect 
scrolling support (when 40 columns or 25 lines), lightpen support not finished, rasterline not 
finished.

Sound is not currently supported

The restore key is not currently working.

NTSC/PAL select not correct.

The Gameports do not support the mouse (Serial Protocol?).

No printer or other devices support in the serial bus (apart from simple disk drives).

Simple tape support not working (cia timing?)

As far as expansion modules go, non-bankswitching rom cartridges (exrom) should work, but no 
other rom cartridges (those with bankswitching logic in it, switching exrom, game). There is 
no ieee488 support nor support for other expansion modules.

No userport support and no rs232/v.24 interface.

 
Some issues with the cia6526: 

port a,b

handshake support, flag input, not pc output

no serial in/out, cnt

timer a,b

not counting of external clocks

not switching port b pins


History and Trivia:
 
Designed similar to the Vic-20, the Commodore 64 featured a better video chip supporting 
sprites, as well as the famous sid6581 sound chip, two "Atari-compatible" joystick ports,
and 64 kilobytes of RAM.


 
The Commodore 64 is, along with the Apple II and the Atari 8-Bit computers, one of the 
most famous home computers of it's era. During its production from 1982 to 1993 (!) 17 
to 22 million (!) of these computer would sell, to put in perspective, that's more than 
all the Macintoshes in the world. It was one of the first to offer a high quality sound 
chip and graphic resolution with many colors and sprites. A great range of peripherals 
was developed for this computer and can use several of the Vic 20 peripherals. 


 
Several versions of the Commodore 64 were launched : The first one (C64-1) uses the VIC 20 
case, it will be quickly replaced with the C64-2 which uses the famous brown case and by 
the C64-3 with small cosmetic changes in the keyboard. A special version called Educator 64 
or PET64 or CBM 4064 was proposed for schools and uses the PET case.


 
Commodore produced the first generation of C64s until May 1986, then it was discontinued 
and they introduced the C64C. According to the 64'er magazine, this version has been 
planned since the Hannover mass in 1985, but as the old version sold so well during 
Christmas '85, its release date was pushed back.


 
The new model does not differ much from its predecessor, the only innovation is the 
flatter case, which makes the keyboard (which has off-white keys now) more ergonomic 
(it looks like the C128 case), as it is less higher than the old one. But the new case 
did not only have advantages: due to its low profile and additional metal screening, 
some of the numerous hardware expansions did not fit anymore. This was changed with 
the C64G. The 64'er staff noticed that VIC-II as well as the two CIAs have new version 
numbers; they didn't write which, though (these are probably just bugfixed chips). 


 
The official name for this model was "C=64 C", but nevertheless the German 64'er magazine 
decided to call it "C64-II" (because the first units didn't have the new name on the label 
at the bottom), the badges on all the 64 C's just says "Commodore 64". They pointed out 
that this name was only valid for the 64'er magazine, but since the 64'er was the 
magazine for the C64 for a long time, the name was widely accepted and so this model 
is mostly known as "C64-II" in Germany.


 
The C64C appeared again after (or concurrently with?) the C64G, this time with the new, 
short board. So, although the case might look the same and the label says "Commodore 64", 
the boards may be completely different.


 
Commodore also released a "laptop version" (though hardly portable) of the C64, called SX64. 
This computer has a built-in 5" color screen, one detachable keyboard, one 5.25" floppy 
disk drive (the famous 1541) and a second one can be installed as well. A version called 
DX-64 was launched (in very limited quantities) at the same time, it has same 
characteristics as the SX64 except its two 5.25" floppy disk drives. The SX64 and DX64 
computers never had success, but it is known as the world's first color portable.


 
The C64GS was released in 1990. Basically it was a re-boxed C64, without a keyboard or any 
other interfaces, except for the cartridge slot on top. It didn't have much success as you 
could buy a C64 for not much extra, and the C64GS games would still work on the C64.
It came with one game cartridge containing International Soccer, Klax, Flimbo's Quest
and Fiendish Freddy's Big Top O'Fun. The carts had a memory of 4 megabits (512k).



$end

#---------------------------------------------------------------------------------------------#

$info=c65
$bio
commodore c65


homecomputer under the keyboard to redo the commodore c64
success (with good c64 compatibility)

Never released, because the compatibility was not good enough!
(Some prototypes! were sold)

Project name was C64DX

Features:

hardware emulation mode for c64
 adapter needed for c64 cartridges (many should work)
 only standard c64 keys plus cursor-up and cursor-left
 CPU not full compatible (no illegal instructions)
enhanced keyboard
m65ce02 processor core (1 or 3.5 Mhz frequency)
vic3 (4567) with additional capabilities
 vic2 compatibility mode
 graphic modes
 80 column modes
second sid audio chip (both 8580)
uart 6511 rs232 chip
special dma controller
128 kb ram
128 kb rom (kernel, editor, basic, monitor, characters, c64 roms)
build in mfm floppy disk 3 1/2 inch double sided double density
connector for second mem floppy disk
special ram expansion slot
rs232 connector (round din)
no tape connector
new expansion slot


MESS emulation state:

rasterline based video system
 quick modified vic6567/c64 video chip
 no support for enhanced features, only 80 column mode
 no CPU holding
 imperfect scrolling support (when 40 columns or 25 lines)
 lightpen support not finished
 rasterline not finished
no sound
cia6526's look in machine/cia6526.c
keyboard
gameport a
 paddles 1,2
 joystick 1
 2 button joystick/mouse joystick emulation
 no mouse
 lightpen (not finished)
gameport b
 paddles 3,4
 joystick 2
 2 button joystick/mouse joystick emulation
 no mouse
serial bus
 simple disk drives (device 10 and 11, hang in c64 mode!)
 no printer or other devices
expansion modules
 none (did there any exist)
expansion modules c64 (adapter needed)
 ultimax rom cartridges not working
 rom cartridges (exrom) not working
 no other rom cartridges (bankswitching logic in it, switching exrom, game)
 no ieee488 support
 no cpm cartridge
 no speech cartridge (no circuit diagram found)
 no fm sound cartridge
 no other expansion modules
no userport
 no rs232/v.24 interface


Keys:

Some PC-Keyboards does not behave well when special two or more keys are
pressed at the same time
(with my keyboard printscreen clears the pressed pause key!)

shift-cbm switches between upper-only and normal character set
(when wrong characters on screen this can help)
run (shift-stop) loads program from type and starts it


Lightpen:

Paddle 5 x-axe
Paddle 6 y-axe


Discs:

only file load from drive 10 and 11 implemented
 loads file from rom directory (*.prg,*.p00) (must NOT be specified on command line
 or file from d64 image (here also directory LOAD"$",8 supported)
use LOAD"filename",10
or LOAD"filename",10,1 (for loading machine language programs at their address)
for loading
type RUN or the appropriate sys call to start them

several programs rely on more features
(loading other file types, writing, ...)

most games rely on starting own programs in the floppy drive
(and therefore CPU level emulation is needed)


Quickloader:

.prg and .p00 files supported
loads program into memory and sets program end pointer
(works with most programs)
program ready to get started with RUN
loads first rom when you press quickload key (numeric slash)

when problems start with -log and look into error.log file

$end

#---------------------------------------------------------------------------------------------#

$info=cbm500
$bio
Commodore CBM 500 Series


History and Trivia:

The 500 / 600 / 700 series were mainly sold in Europe, but a few models are known to have been 
sold in the United States. The CBM 600 is same as the 500 but has a 80 column display and 
256 Kb RAM. The CBM 700 is same as the 600 but has two 5.25" disk drives (370 KB each) and a 
hard disk (7.5 MB). Microsoft Basic is in ROM. The Z80 and the 8088 are optional. When they 
are used, the 6809 is used then for i/o, display and keyboard management. It works under 
Commodore DOS or CP/M and MSDOS when the computer use the other processors. 


$end

#---------------------------------------------------------------------------------------------#

$info=cbm610
$bio
Commodore Business Machines B128-80LP/610 (1983)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=cbm710
$bio
Commodore B-128/80 Series


History and Trivia:
 
The CPU in the CBM B series was a MOS/Commodore 6509, which is basically a m6502 with 1 
megabyte address space and weird bankswitching.

$end

#---------------------------------------------------------------------------------------------#

$info=cgenie
$bio
EACA Colour Genie 2000


Cassette Usage:

From within the emulation you can use SYSTEM or CLOAD commands to read images: 

SYSTEM supports 6 character filenames.

CLOAD loads a file named BASIC(N).CAS, where (N) is the character you supplied 
(e.g., CLOAD"M" loads BASICM.CAS)

CLOAD is for BASIC type tapes only.  It should work if you have a BASIC *.cas file. 
File "names" in that case are _one_ character in length (inside the emulation).  In your 
roms/cgenie folder the names will be basicA.cas, basicB.cas and so on.  If you CSAVE"A you'll 
see a file basicA.cas later and you can CLOAD"A it again. 


To load a binary image there was a different command: SYSTEM

You'll see a prompt looking like this: 

*?


and there you can enter a name of up to six (wow!) characters.

*?chop16 [ENTER]

This will start loading a file named chop16.cas if it is in your rompath. If you don't have 
it... well, wait and see (nothing ;)  If you have it, you'll see two stars (**) in the upper 
right corner.  The right one will twinkle after every couple of bytes loaded, every 254 I 
think.
	
After several minutes you'll see the prompt again

*?


now type / (slash) and ENTER and the program will be started at it's defined run address. If 
a program does not have a run address, you could also specify /[decimal value] to run from a 
specific value...


 
Diskette Usage:

When the emulation starts, tap [ENTER] and also confirm the following 
	
MEM SIZE?

with [ENTER].

After that you're in BASIC (DISK BASIC, to be exact, unless you disable cgdos.rom via the 
dip switches).

Now you can use the DISK BASIC extensions to issue commands.  Most important

CMD"I[disk#] 

Display inventory, disk# is optional and can be from 0 to 3

You can use CMD"I0" to "CMDI3" to get an inventory of drive 0 to 3.


Use CMD"S FILENAME/CMD" to start a binary executable or use LOAD"FILENAME/BAS" to load a basic 
program.
CMD"Sname/cmd will start a binary file name/cmd from any disk

CMD"Limage/bin:3 will load image/bin from disk 3

To start a game, eg. paint/cmd, type

cmd"s paint/cmd


You can omit the blank between cmd"s and the filename.


To ease things you could also enable my DOS lookalike frontend ;) It's contained in 
newe000.rom (2,772 bytes; CRC 953491a7) but not enabled by default. If you enable it 
you can type HELP (hehe ;) and DIR and simply give a name to execute a binary file.

The optional newe000.rom is loaded if the corresponding "dip switch" is set from within the 
driver itself. There is no need to specify this rom on the command line.


Miscellaneous Usage Notes:
 
Under the "Options" menu, accessible by hitting TAB, there are three settings: 

"Floppy Disc Drives"  - enable or disable floppy disc controller.

"DOS ROM C000-DFFF"   - enable 8K DOS ROM or make it RAM.

"EXT ROM E000-EFFF"   - enable 4K Extension ROM or make it RAM.


Known issues:

Startup with CAS or CMD images does not always work. Use the BASIC SYSTEM or CLOAD commands 
to read cassette image files, or use the Colour Genie DOS ROM with floppy disc images to run 
programs. The driver does not yet emulate the printer port mode for AY-3-8910. Right now it 
always uses the AY-3-8910 ports for joystick emulation.


Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default.  Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.   


The Colour Genie driver should run most of the known programs out there. It supports the 
Motorola 6845 CRT controller with text and graphics modes (LGR and FGR), the AY-3-8910 
sound chip with three audio channels and noise and the WD 179x floppy disc controller with up 
to four virtual floppy disc drives contained in image files.


The keyboard is relatively close to the original layout; see "Keys (This Machine)" in the
TAB/Options menu.


Emulation of dual Colour Genie joysticks with keypads is also supported.


History and Trivia:

The Colour Genie is the successor of the Genie 1, Genie 2 and Genie 3. It is not possible 
to mix characters and graphics because text and graphic memories are not mixed. There was 
a little level display located above the keyboard which allows to set the recording 
level of the tape recorder to avoid failure when writing onto a tape. 



$end

#---------------------------------------------------------------------------------------------#

$info=channelf
$bio
Fairchild Channel F


Usage:

MAME coin inputs (keys 5, 6, 7, 8) are used to select the game at the G? prompt.



History and Trivia:

Introduced in August 1976 at a suggested retail price of $170 (US), The Channel F was the 
first programmable video game system to use replaceable cartridges. The controllers, which were
often described as looking like plungers were attached directly to the system via 8 foot wires.
The Channel F didn't fair well in the late 1970s market dominated by Atari, and Fairchild switched 
their efforts to developing the Spark-16 minicomputer.

$end

#---------------------------------------------------------------------------------------------#

$info=coco
$bio
Tandy/Radio Shack Color Computer / Dragon Data Ltd. Dragon 32


Usage:

	- Cassette images (.cas):

Not all of these work; don't panic.

You can pick the cassette image you wish to run from the FILE MANAGER in the Tab/Options menu.
Once you've selected the image, go back into the CoCo emulation, and use "scroll lock" to set 
it back in keyboard emulation mode.

type CLOAD (if it's a BASIC program) or CLOADM (for assembler programs)

then EXEC (if it's an assembler program)

or RUN (if it's a basic program)

If you include the name of the file (eg. CLOAD "PROG") it will skip any files preceding the
one you specified.

	- Snapshot images (.PAK)

Go to file menu pick the .pak
Should automatically start running the game.
if it does not run, it isn't supported yet.

    - Cartridge rom images (.ROM)

Go to file menu and pick the .rom
Reset to CoCo and it will start running the game.
if it does not run it isn't supported yet.

	-Diskette images (.DSK)

Basically the same as cassette images, except you insert the image in Floppy Disk#1 
from the file manager. Once you return to the coco emulation, switch back to keyboard 
emulation mode by pressing SCROLL LOCK and type:
DIR

To load a binary file (/BIN), type LOADM "GAME/BIN:1" (replacing the ":1" with the 
appropriate drive designation ":0" through ":3" )

then EXEC

To load a basic file (/BAS), type LOAD "GAME/BAS:0"

then RUN

Thanks to "Axe" for the command summary.


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default. Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.


History and Trivia:

The Tandy TRS-80 Color Computer was typically called 'CoCo'. It was compatible with the 
Welsh Dragon 32: they can use same software and cartridges. Unlike the Dragon, though, it 
used its own basic, Tandy Basic instead of the Microsoft basic. It was followed by the 
TRS 80 color computer II. The two BASICs use different tokens so they are not binary
compatible.


The Tandy/TRS-80 Color Computer 2 (CoCo 2) replaced the original in 1983. It has the same 
characteristics than the first. It has 16 KB RAM and can have a 16 KB ROM which contains 
Microsoft Basic. It was replaced with the Tandy Color Computer 3 in 1986. 


The Tandy Color Computer 3 is the successor of the Tandy/TRS-80 Color Computer 2. It can 
work with OS-9 Level II (an operating system designed for 6809 processors). As this processor
is an 8 bit (strange choice when Atari and Commodore were using a 68000), it can't access 
simultaneously to the 128 KB (or 512 KB), it uses several RAM banks (as the Thomson TO8, or 
MSX 2 computers) which can be switched in 8K blocks. 


Tandy made several prototypes of a Tandy Color Computer 4 but it was never released. The 
DRAGON 32 enjoyed a pretty good success in Europe. Its ROM holds the Operating System and a 
BASIC programming language by Microsoft. One of its characteristics is partial compatibility 
with the Tandy TRS-80 Color Computer Series: they can use same peripherals and some 
cartridges. Two years later, Welsh launched the DRAGON 64 which has the same 
characteristics except the added memory (64 KB instead of 32 KB), a RS232c port and a keyboard 
with repetitive keys.



$end

#---------------------------------------------------------------------------------------------#

$info=coco3
$bio
Tandy Color Computer 3


First off, also read the history for the Color Computer and Color Computer 2 drivers. Much
of the information there also applies to this driver.

Besides fully emulating the Color Computer 3 this driver also contains some extras. It contains
two different real time clocks. Currently they can be set under the "DIP switches". The two
types are Disto and Cloud-9.

Disto Real Time Clock:
	Chip:      OKI m6242B
	Addressed: $FF50 and $FF51

Cloud-9 Real Time Clock:
    Chip:      Dallas Semiconductor's Phantom Time Chip DS1315
    Addressed: $FF79, $FF78, $FF7C

This driver also contains an implementation of Jeff Vavasours' Virtual Hard Disk. See his
Color Computer 3 emulator for information regarding it.

$end

#---------------------------------------------------------------------------------------------#

$info=coco3h
$bio
Tandy Color Computer 3 (Hitachi)


First off, also read the history for the Color Computer, Color Computer 2 and Color Computer 3
drivers. Much of the information there also applies to this driver.

This driver is exactly like the coco3 drivers except the MPU has been replaced by a Hitachi
6309. This chip has extra features not documented by Hitachi.

$end

#---------------------------------------------------------------------------------------------#

$info=coleco
$bio
Coleco Industries ColecoVision


Known Issues:

This emulation runs most cartridges accurately. Games requiring analogue controls (Steering 
Wheel, Roller Controller) are not playable. See coleco.crc for further compatibility notes.


History and Trivia:

The ColecoVision video game system was released in August of 1982 for a suggested retail 
price of $175 US. Similar at it's core to the MSX computers, ColecoVision had both superior 
graphics and more expansion capabilities compared to it's chief rivals: the Atari 2600 and 
Intellivision. Among the expansion module options were a hardware Atari 2600 emulator, and a 
Steering Wheel for driving games, both unheard of at the time.


The competitive price, technical superiority, and perhaps more importantly, the inclusion of 
Donkey Kong as the pack-in cartridge, led to Coleco becoming an industry leader. With the 
emergence of the popularity of home computers, however, the console market seemed in jeopardy 
of losing it's share to the likes of Commodore and Apple. Coleco responded by releasing the 
Adam Family Computer as both a standalone unit and as an expansion to the ColecoVision itself. 


The Adam was a phenomenal market failure though, and Coleco pulled itself from both the 
console and computer markets just before the game market crash in late 1984.


Telegames purchased the rights to the system, and many of the manufactured games, and released 
a clone, The Personal Arcade, in 1988. It was later re-released by them, as the DINA.


$end

#---------------------------------------------------------------------------------------------#

$info=comquest
$bio
Team Concept Comquest Plus German


laptop computer for children


Features:

mono LCD display with about 144x100 pixels
integrated speaker
integrated keyboard and joypad
integrated batterie box
serial port connector (for special printer)
connector for external power supply
cartridge slot


MESS Emulation State:

not working (not even CPU is known)
stopped until CPU type is recognized or info found

$end

#---------------------------------------------------------------------------------------------#

$info=coupe
$bio
Sam Coupe (1989)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=cpc464
$bio
Amstrad/Schneider CPC 464


Usage:

With a disk image loaded, the emulation starts from the BASIC "Ready" prompt. 
From here you can enter commands to access the disk image: 
 

A directory listing can be obtained with: "CAT"


A program can be run with: RUN"filename"


The common programs to run are those with a .BIN or .BAS extension and usually the smaller 
of the files on the disk image.


On a few games you can type: RUN"disc or RUN"disk to start the game.


If a directory listing cannot be obtained, then the disc might be copy-protected. 
In this case, try: 

|CPM


| is obtained by pressing shift and the @ key together. Since the keyboard is mapped so the 
keys are in the roughly same place as on a real Amstrad keyboard, then @ can be found 
around the [,@,],# keys.

The |CPM works by loading and executing the first sector on the first track of the disc.


Snapshots, which contain a memory dump, CPU state and hardware state, can be run from a 
command line interface with the following command: 

mess cpc464 -snap "snapshot name"


The snapshot will start automatically.


There are a few excellent utilities for creating and maintaining
disk images for the Amstrad CPC emulators. Here are just a couple - 

CPDRead   http://www.classicgaming.com/caprice/
CPCfs     ftp://ftp.lip6.fr/pub/amstrad/emu-util/cpcfs085.zip


Others can be found in the FAQ at http://genesis8.free.fr/



Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default.  Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.   

Runs many disk images and snapshots well.


History and Trivia:

The CPC464 was an 8-bit Amstrad computer, produced in 1984, with 64k of ram and a tape 
recorder built in.

$end

#---------------------------------------------------------------------------------------------#

$info=cpc6128
$bio
Amstrad/Schneider CPC 6128


Usage:

With a disk image loaded, the emulation starts from the BASIC "Ready" prompt. 
From here you can enter commands to access the disk image: 
 

A directory listing can be obtained with: "CAT"


A program can be run with: RUN"filename"


The common programs to run are those with a .BIN or .BAS extension and usually the smaller 
of the files on the disk image.


On a few games you can type: RUN"disc or RUN"disk to start the game.


If a directory listing cannot be obtained, then the disc might be copy-protected. 
In this case, try: 

|CPM


| is obtained by pressing shift and the @ key together. Since the keyboard is mapped so the 
keys are in the roughly same place as on a real Amstrad keyboard, then @ can be found 
around the [,@,],# keys.

The |CPM works by loading and executing the first sector on the first track of the disc.


Snapshots, which contain a memory dump, CPU state and hardware state, can be run from a 
command line interface with the following command: 

mess cpc6128 -snap "snapshot name"


The snapshot will start automatically.


There are a few excellent utilities for creating and maintaining
disk images for the Amstrad CPC emulators. Here are just a couple - 

CPDRead   http://www.classicgaming.com/caprice/
CPCfs     ftp://ftp.lip6.fr/pub/amstrad/emu-util/cpcfs085.zip


Others can be found in the FAQ at http://genesis8.free.fr/



Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default.  Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.   

Runs many disk images and snapshots well.


History and Trivia:

The CPC6128 was a 8-bit Amstrad computer, produced in 1985. The computer was sold with a 
colour monitor or a green screen monitor. This connected to a keyboard unit which had a 3" 
drive in it. The monitor contained the power supply for the computer. Using this arrangement 
only a single plug was required. The CPC6128 was the third in the CPC series. It had the same 
hardware as the CPC464 and the CPC664.


CPC464: 64k of ram, tape recorder built in.

CPC664: 64k of ram, 3" disk drive built in

CPC6128: 128k of ram, 3" disk drive built in.


The Amstrad had a Z80 at it's core. It had a palette of 27 colours, produced from combinations 
of 3 levels of r,g and b. It has three graphics modes. 640x200 in 2 colours (hi-res), 320x200 
in 4 colours (medium res), 160x200 in 16 colours (lo-res).


$end

#---------------------------------------------------------------------------------------------#

$info=cpc664
$bio
Amstrad/Schneider CPC 664


Usage:

The the emulation starts from the BASIC "Ready" prompt. 
From here you can enter commands to access a disk image: 
 

A directory listing can be obtained with: "CAT"


A program can be run with: RUN"filename"


The common programs to run are those with a .BIN or .BAS extension and usually the smaller 
of the files on the disk image.


On a few games you can type: RUN"disc or RUN"disk to start the game.


If a directory listing cannot be obtained, then the disc might be copy-protected. 
In this case, try: 

|CPM


| is obtained by pressing shift and the @ key together. Since the keyboard is mapped so the 
keys are in the roughly same place as on a real Amstrad keyboard, then @ can be found 
around the [,@,],# keys.

The |CPM works by loading and executing the first sector on the first track of the disc.


Snapshots, which contain a memory dump, CPU state and hardware state, can be run from a 
command line interface with the following command: 

mess cpc664 -snap "snapshot name"


The snapshot will start automatically.


There are a few excellent utilities for creating and maintaining
disk images for the Amstrad CPC emulators. Here are just a couple - 

CPDRead   http://www.classicgaming.com/caprice/
CPCfs     ftp://ftp.lip6.fr/pub/amstrad/emu-util/cpcfs085.zip


Others can be found in the FAQ at http://genesis8.free.fr



Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default.  Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.   

Runs many disk images and snapshots well.


History and Trivia:

The CPC664 was an 8-bit Amstrad computer, produced in 1985, with 64k of ram and a 3" disk 
drive built in.

$end

#---------------------------------------------------------------------------------------------#

$info=dream
$bio
ETI Dream


early 6800 based computer


Features:

video connector
chip8 interpreter


Notes:

seams to be very related to rca cosmac vip.
emulator source available
documented bios source available


Emulators:

Dream for DOS by Paul Robson

$end

#---------------------------------------------------------------------------------------------#

$info=einstein
$bio
Tatung Einstein TC-01

The Tatung Einstein is a 8-bit computer with hardware similar
to the MSX-1. The computer was produced with two 3" disk drives and
ran the CP/M operating system.

The TC-01 is the first version of the hardware, with the 256 being
the second version aimed more towards games.

When this driver starts, and a disk is not in the drive, a internal
monitor program will start. 

To use this driver you will need the Xtal operating system disks
which will start CP/M and from here you can run many CP/M based
programs.

You can put a disk image into the drive and boot CP/M by pressing
CTRL+ALT together.

Usage/Known Issues:

The floppy disc emulation may not be fully working.
Interrupts are not working properly.

Thankyou to Chris Coxall for the schematics, a dump of the bios rom,
and the Xtal operating system. He has been a great help with the development
of this driver.

Thankyou to Andrew Dunipace for help with the 80-column expansion card.


$end

#---------------------------------------------------------------------------------------------#

$info=elf
$bio
RCA Cosmac ELF and ELF2


very early computer


Features:

operation without builtin roms, you can enter your program directly with
help of the CPU integrated dma.
2 segment digits
tape connector


Notes:

much like rca cosmac vip without video chip

Info for building an elf/elf2 is at
http://incolor.inetnebr.com/bill_r/computer_simulators.htm

$end

#---------------------------------------------------------------------------------------------#

$info=ep128
$bio
Enterprise 128


Usage:

This computer has a built in word processor, from BASIC enter "type" to enter it.

To load programs:

You can type ":EXDOS" to enter a CLI interface where you can type EXDOS commands.
If typing from BASIC you must enter ":" in front of EXDOS commands.

The following EXDOS commands are allowed:

CHDIR	[dir name]
		- Change Dir.[dir name] does not need to be enclosed in quotes.
DIR		
		- show directory listing

To run a program, enter from BASIC:

RUN"filename" or

LOAD"filename"


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default. Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.

Some programs do not work well.

Not all graphic modes are emulated.

Interrupts are not emulated correctly.

Samples and simple tone is supported, complex effects using ring modulation and filtering are not supported.

Tapes are not supported.


History and Trivia:

The Enterprise 64 was a very long-awaited computer, two years between its announce and 
its marketing ! It changed its name a lot of times : its first name was Elan 64, then 
Flan, lastly Enterprise. It has great features, which wasn't found on all other home 
computers like its interfaces and its great graphics and sounds capacities provided by 
two special custom chips called "Nick" and "Dave". The Basic is supplied on a ROM 
cartridge and can be easily replaced with an other language. This basic is a very 
powerful structured basic with great graphic commands and can store several programs 
simultaneously in RAM. It has a small word processing in ROM and up to 32 computers can 
be linked together. Despite its great characteristics and all its interfaces, the 
Enterprise 64 had few success. Several months later, a new model was launched : the 
Enterprise 128 which is an Enterprise 64 with 128 KB RAM. 


$end

#---------------------------------------------------------------------------------------------#

$info=exidy
$bio
Exidy Sorcerer (1979)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=Famicom
$bio
Nintendo Famicom (1979)


Features:


MESS Emulation State:


$end

#---------------------------------------------------------------------------------------------#

$info=europc
$bio
Schneider EUROPC


IBM PC compatible computer "under the keyboard"


Features:

integrated cga/mda/hercules graphics adapter, connector for CGA and MDA/Hercules monitors
multi language and keyboard support in bios
integrated harddisk controller, connector for 2 external harddisks
3 1/2 inch 720 kb disk drive, connector for 1 external disk drive
integrated realtimeclock 
setup memory
Joystick/Mouse connector
connector for external xt busplane
connector for external power supply
at type connector for rs232 serial port
parallel port connector


MESS Emulation State:

basically the same as mess ibmpc emulation
special keyboard emulated
rough emulation of rtc, setup memory, special graphics adapter
work stopped until more info or system software available


$end

#---------------------------------------------------------------------------------------------#

$info=fx850p
$bio
Casio FX850P


Pocket Computer/Scientific Calculator
(fx880p is the big brother (better display, more ram?))


Features:

2 lines with 32 5x7 characters LCD display
(some indicators and a 5 digit 7segment display)
8 kb ram
integrated speaker
internal slot for memory expansion (32kb?)
connector with support for rs232 and centronics
(only level converter for rs232 needed)
(only latch for centronics needed)
2 3V CR2032 lithium as power supply
1 3V CR2012 lithium as ram power supply

MESS Emulation State:

not started, need information about the hd62002 CPU
(should be in the normal user manual!)

$end

#---------------------------------------------------------------------------------------------#

$info=galaxy
$bio
Galaksija


ZX81 class kit built computer from Yugoslavia (Serbia) invented by Voja Antonic.
Also available in complete form.
There were 7000 kit complets sold and approximately 10.000 made computers
(including kit built ones).


Features:

Z80A 3.072MHz
RAM 6kB
text mode 32 x 16
I/O ports Z80 Bus, tape, video


Emulator:

Galaksija emulator by Miodrag Jevremovic


MESS Emulation State:

tape not emulated
video hardware not emulated (hack used)
sound not emulated (if any)
work stopped until info about Galaksija hardware is available


$end

#---------------------------------------------------------------------------------------------#

$info=gameboy
$bio
Nintendo Game Boy (1989)


The Game Boy was a huge success for Nintendo. It was the second portable system 
created by Nintendo (the first being the Game & Watch series starting in 1980). The 
original Game Boy was released in 1989 and allowed game players to play a huge library 
of games away from home.  Games like Super Mario Land, The Legend of Zelda: Link's 
Awakening and Tetris proved that quality games could be developed for portable use.

Nintendo later released the “Play it Loud” Game Boy series in 5 colors, and the redesigned 
slimmed down Game Boy pocket version was released in 1996.

Features:

CPU: 8-bit (Similar to the Z80 processor) at 4.194304MHz
Main RAM: 8k Byte internal
Video RAM: 8k Byte internal

Video Display: Reflective LCD 160 x 144 dots (20 x 18 Tiles)
Video Colors: 4 shades of gray
Screen Size: 2.6"
Max # of sprites: 40
Max # sprites/line: 10
Max sprite size: 8x16
Min sprite size: 8x8
Sound: 4 channels each of which can be mapped either to the left or to the right or to
both speakers

Communications: Serial port. Up to 4 Game boys can be connected together using this port.
Baud rate and protocol: (?)

Power: 6 VDC, 0.7 Watts (3 VDC 0.7W for Game Boy Pocket)
4 AA Batteries ~ 35 hours 
Rechargeable battery (NAKI) ~ 12 hours


MESS Emulation State:

Preliminary sound support only.  

$end

#---------------------------------------------------------------------------------------------#

$info=gamegear
$bio
Sega Game Gear (1990)


The Game Gear is the portable version of the Sega Master System, with slightly enhanced 
graphics and stereo sound, but fully compatible (i.e. you could play SMS games on the GG
with the use of a special adaptor). The Game Gear was sold 11 million times world-wide 
(2 million in Japan, 9 million in the rest of the world). (note taken from www.eidolons-inn.de)


Features:

CPU:  4 MHz Zilog Z80

Colors Palette: 512; 32 max on screen

Resolution: 160x140 viewable from 256x224
 
Sprite size: 8x8 , 8x16 (16x16 in doubled mode)
 
Max # of sprites:  64 on screen; 128 in memory

Sound:  6 channel FM, 2 channel noise - Stereo
 
Battery life:  6 hours on 6 AA batteries


Links:

EIdolons inn - www.eidolons-inn.de


MESS Emulation State:

(?)

$end

#---------------------------------------------------------------------------------------------#

$info=genesis
$bio
Sega Megadrive/Genesis (1988)


The Sega Genesis was released in Japan on the 29th of October 1988, and in the USA on the 1st
of September 1989. At that time, no other console could compete with Sega´s powerful 16-bit 
system, apart from the PC-Engine / TurboGrafx-16, perhaps. But due to a lack of third-party 
support - especially with the arrival of the SNES, because many of the major game companies 
were still bound to Nintendo because of the contracts they made in the NES era - the Genesis 
never became as successful as Nintendo´s 16-bit console. Nevertheless, about 28.5 million 
consoles were sold worldwide, compared to about 48 million SNES consoles. Looking at the 
different regions of the world, the Genesis was most successful in the USA. It was quite strong in 
Europe, too (especially Great Britain is famous for being the European Sega stronghold), but did
not succeed very well in Japan, Nintendo's home country. It was definitely no mistake to buy the
console, as I did in early 1990, shortly after Super Shinobi had been released.  Among the 
approximetaly 1000 games which were produced during the genesis' lifespan (about 10 years 
during 1988-1998) are a lot of evergreens which deserve to be played even today. (note taken 
rom www.eidolons-inn.de)


Features:

Main Processor: Motorola M68000 (16-bit) at 7.67 Mhz
 
Co-processor: Z80a at 3.58Mhz

Sound Chips: YM2612 and a 4 channel TI PSG76489

Ram: 64k (Plus 64k Ram for sound)

Max Cart Size: ??


Video:

Max resolution: 320 X 224 

Color palette: 512; 64 max on screen

Max # of sprites: 80; 20 max per scanline

Sound: Stereo FM-based sound with 8-bit audio samples 


Usage:

Under the "Options" menu, accessible by hitting TAB, you will find the following option: 


"Country" - this allows you to alter the 'flavour' of Genesis, to either European, Japanese
or American. Many cartridges compare their country codes with that of the Genesis itself and
may behave differently, or lock up if the two types do not match.


'Auto' attempts to auto-set the Genesis country code to the value the cartridge will appear
to be checking for. This may not be 100% accurate, however.


Links:

EIdolons inn - www.eidolons-inn.de


MESS Emulation State:

Most games tend to run fairly well. Some have slight graphic glitches; incorrect colours part
way down the screen or other bizarre effects. See genesis.crc for a partial list.


Cartridges up to 32MBit (4MByte) are supported.


The controller may not work well with some games. This will be resolved when more information
is obtained. Similarly, 6-button joypads aren't emulated yet.


Split screen effects and interlacing are not yet supported.


Sprite/layer priority should be perfect.


Sound is emulated at Z80 and PSG76489 level. 


I still consider the Genesis driver extremely preliminary. I have a lot of further work to do 
before I consider it anywhere near complete. My initial goal is to make it as compatible 
as possible. Currently there is scope within the driver to handle split screen colour changes/any
 VDP effect, interlacing, without rewriting. The graphics renderer emulates VDP at scanline 
level, and does not use tile-based methods.


Wanted: Any Sega Megadrive information specifically, some of the finer points of DMA transfer,
 and access of the 68K memory map by the Z80! Information is extremely sparse; typically the
 same three-four documents, with parts incomplete, conflicting, and corrupted. Generally, points
 which conflict with themselves in the documentation available on the net...

$end

#---------------------------------------------------------------------------------------------#

$info=hp48s
$bio
Hewlett Packard HP48S/SX/G/GX


Scientific Calculator

S 32kb ram
SX 128KB ram
G 1MB rom, 32kb ram
GX 128kb ram


Features:

131x64 monochrome LCD display
memory/cartridge slot
batterie slot
infrared interface
serial rs232 interface


Notes:

on and - decreases contrast
on and + increases contrast


Official and legal HP rom images:

http://www.hpcalc.org/hp.php


MESS Emulation State:

not working
(g memory management not finished)
(s is a few bugfixes from working)

$end

#---------------------------------------------------------------------------------------------#

$info=i286
$bio
IBM8530 286 (Personal System 2 Model 30 286)


concrete IBM AT model

Features:

80286 with 10 mhz
socket for 80287
512kb ram (expandable to 1mb, 2mb or 4mb) (4? 30pin 8?bit simms)
3 isa slots
integrated vga adapter
ps2 keyboard and mouse connectors
3 1/2 inch high density (1.44mb) floppy disk drive
1 parallel port
1 serial port (pc style dsub)
mf2 keyboard with 102 keys
ps2 mouse with 2 buttons
greyscale or color vga monitor
optional: ethernet adapter with bnc (coax) and rj45 (twisted pair) connectors


MESS Emulation State:

basically the same as ibmat emulation
ps2 mouse not emulated now
vga emulation incomplete
needs i286 core v1.5

$end

#---------------------------------------------------------------------------------------------#

$info=i8530
$bio
IBM 8530 (Personal System 2 Model 30)


concrete IBM XT model


Features:

8086 with 8 mhz
socket for 8087
640mb ram
3 8 bit slots
integrated mcga adapter (vga style connector for vga monitor)
ps2 keyboard and mouse connectors
2 3 1/2 inch double density (720kb) floppy disk drive
in some models instead of the 2nd disk drive a 20mb or 30mb harddisk drive
1 parallel port
1 serial port (pc style dsub)
ethernet adapter with bnc (coax) and rj45 (twisted pair) connectors
mf2 keyboard with 102 keys
ps2 mouse with 2 buttons
greyscale or color vga monitor

$end

#---------------------------------------------------------------------------------------------#

$info=ibmat
$bio
IBM AT


extended IBM PC


Features:

basically an IBMPC,
80286 processor
16 mb memory space
16 bit wide, 24 bit wide slots (xt downwards compatible)
2nd programmable interrupt controller
16 bit direct memory access controller
realtimeclock and setup memory
(changed keyboard and keyboard circuits on board)
high density supporting disk controller
hard disk support in bios


Emulators:

Virtual PC for Linux, NT (commercial, very usable)
Bochs


MESS Emulation State:

basically the same as ibmpc emulation
rough emulation of keyboard controller
rough emulation of keyboard
rough emulation of dma chips
rough emulation of pic chips
incomplete emulation of CPU
no support for high density disks
no support for at harddisks
needs i80286 v1.5

$end

#---------------------------------------------------------------------------------------------#

$info=ibmpc
$bio
IBM PC


the grandfather of the now common personal computer


Features:

8088 CPU
expanded through several slots for interface cards
programmable interrupt controller
direct memory access controller
support for a tape drive on the motherboard of the first series
even elementary equipment is not on the motherboard
even a display adapter must be plugged in

Features IBMXT:

8086 CPU (16 bit data bus)


MESS Emulation State:

rough emulation of the keyboard controller
rough emulation of the pic chip
rough emulation of the dma chip
no emulation of the tape drive
mono display adapter emulated
color graphics adapter emulated
hercules graphics adapter emulated
rough ega/vga emulation
1 floppy disk controller emulated
1 harddisk controller emulated
rough emulation of up to 4 serial ports emulated
rough emulation up to 3 parallel ports emulated
1 serial mouse emulated
rough emulation of 1 game port and its 2 joysticks


$end

#---------------------------------------------------------------------------------------------#

$info=imbpcjr
$bio
IBM PC Junior


enhanced IBM PC for home use


Features:

basically an IBM PC
support for cartridges
enhanced cga graphics adapter with additional graphics modes (160x200x4, 320x200x4, 640x200x2)
integrated sound chip
unique keyboard
integrated joystick support


MESS Emulation State:

basically the same as mess ibmpc emulation
pc junior graphics emulated
pc junior sound emulated
work stopped until complete bios roms are available


$end

#---------------------------------------------------------------------------------------------#

$info=intv
$bio
Mattel Intellivision (intv)


Usage/Known Issues:

This driver is almost complete.  

Still TBD are:
collision detection - 16-way controller mapping - default mapping of the right player 
controller - Only .ROM format cartridges (Intellicart) are supported in this release.

  
$end

#---------------------------------------------------------------------------------------------#

$info=intvkbd
$bio
Mattel Intellivision + Keyboard Component (intvkbd)


Usage/Known Issues:

This driver is almost complete.  The tape drive is not yet supported.
The keyboard component has two cartridge slots - one to replace the occupied intv cart slot, 
and one for new keyboard carts (BASIC).   If you want to use the BASIC cart at startup, you
must specify it as the second cart, even if the first cart slot is unused. 
(ex. -cart dummy -cart basic.bin)  Some tapes require the BASIC cartridge.
Also, there is currently no mapping to the normal intellivision hand controllers yet, when 
using the keyboard component.  This driver uses the full keyboard, to toggle to the standard
MESS keys, hit scroll-lock.

  
$end

#---------------------------------------------------------------------------------------------#

$info=intvsrs
$bio
Mattel Intellivision - Sears version (intvsrs)


Usage/Known Issues:

This is the Sears version of the Mattel Intellivision.  Please see the base (intv) system 
info for current status of this driver.

  
$end

#---------------------------------------------------------------------------------------------#

$info=jupiter
$bio
Jupiter Cantab Jupiter Ace (1981)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=kaypro
$bio
Kaypro IIx (kaypro)


Usage/Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default. Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.


As of 37b4, this driver is once again working. 

  
$end

#---------------------------------------------------------------------------------------------#

$info=kc85_3
$bio
VEB Mikroelektronik KC 85/3 (1981)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=kccomp
$bio
KC Compact


Usage:

Image loading is the same as for the Amstrad CPC series.


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default. Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.

Z8536 CIO is not emulated

History and Trivia:

The KC Compact is a clone of the Amstrad CPC series, made in East Germany
by VEB Mikroelektronik. It was made in 1989 to celebrate 30 years of the GDR
(German Democratic Republic). Soon after the Berlin wall came down, east and west
merged, and production stopped.

The system contains a hacked Amstrad CPC 6128 Operating System and the
Amstrad CPC 6128 BASIC. Unlike the CPC, this system didn't come with a built in 
disc drive or cassette unit, and did not require a special monitor. 

The base unit can connect to a TV through a aerial or scart lead. 

Not many of these systems were produced and they are rare.

The Amstrad CPC had a gate array chip which contained the logic for the
palette, mode display, rom paging,ram paging and interrupt
system. This is emulated in the KC Compact using a lot of TTL logic chips
and a Zilog 8536 chip.

Hardware that was designed for the CPC systems should work on the KC
Compact, however, since the KC Compact has a different
expansion port layout, a adaptor must be made.

$end

#---------------------------------------------------------------------------------------------#

$info=kim1
$bio
Commodore/MOS Kim-1


Usage:

key   name  description

-----------------------

F1     AD    address mode

F2     DA    data mode

F3     RS    reset

F5     GO    execute from address

F6     PC    program counter (hmm.. whatever)

F7	 ST    step (note: NMI handling for K7 missing)

ENTER  +     increase address

0-F    hex   hex digits


Known Issues:

This driver supports the backdrop image of the KIM-1, and code images in .kim format.


$end

#---------------------------------------------------------------------------------------------#

$info=laser110
$bio
Video Technology Laser 110 (1983)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=laser210
$bio
Laser 210 Series/Dick Smith VZ-200


Usage:

Basic programs start with RUN.

Other programs usually start with X=USR(0)

X=USR(0) can be typed out with the following PC keystrokes: x, shift -, u, s, r, shift 8, 0, 
shift 9, enter.


History and Trivia:

The laser 200 was the successor of the Laser 100/110 (which had only monochrome graphic 
modes).


Adman Harbison says "The Video Technology Laser 200 (and the Laser 300) were marketed in 
Australia by Dick Smith Electronics and badged as the VZ200 and the VZ300 computers.  
For memory the computers were exactly the same, although he can not be too sure.  
Some of the peripherals that I got while I had such a machine were things like a 16Kb 
expansion cartridge, a printer/plotter which wasn't much bigger than those little 
calculators that print out accounts etc. and some joysticks. The trouble with these 
computers was that they tended to die after a couple of years use. But they were cheap and 
came with a few software titles."


$end

#---------------------------------------------------------------------------------------------#

$info=laser310
$bio
Video Technology Laser 310 (1983)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=laser350
$bio
Video Technology Laser 350 (1983)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=lisa2
$bio
Apple Lisa


Usage:

This driver is still buggy. Neither the hard drive nor the serial port are supported. There are
many other bugs remaining with MMU emulation. Only Macworks will boot.

When you boot up the Lisa, you can see a self-test progress indicator. At least one test will fail:
you must discard the error message by selecting the 'Ignore' or 'Start-up from...' button. Then,
you get a boot device menu. Select the floppy drive unit, since it is the only available device.
If the mouse temporarily refuses to work, you may use the keyboard shortcuts Apple+2 and Apple+3
(the Apple key should be mapped to Control; you must use the numeric keys on the main keyboard, not
on the numeric keypad). If the computer does boot, you will see an icon representing a weird floppy
disk with a cross (maybe it actually represents a twiggy disk).


History and Trivia:

The Lisa project started in the summer of 1979. At the time, the idea was merely designing
a powerful business computer, with scheduled release in march 1981. After his legendary visit
to the Xerox PARC research center, Steve Jobs realized the GUI was the future of computing.
So, in March 1980, a GUI was added to the Lisa specs.

Despite huge support from Apple, the project got behind schedule, and Lisa was introduced
on January, 19th, 1983.


The Lisa was an impressive computer for its time. It had TONS of memory (1Mb on Lisa 1),
a high-resolution graphic display, and it was fairly expandable. Its OS (weirdly called
"Lisa 7/7 Office System") featured a complete GUI, and full preemptive multitasking
with memory protection (something neither Windows 98 nor MacOS offer!).
Its 68000 CPU was one of the fastest microprocessor in its time.

Unfortunately, Lisa was never too successful. It was quite expensive, and relatively few units were
sold (possibly about 10,000 Lisa 1 and 80,000 Lisa 2). Little software was developed for it.
Also, it was extremely resource hungry: it was reportedly slow, and its memory requirements were
the major cause for its high price.


On 24th January 1984, Lisa 1 was replaced by Lisa 2, with 3.5" floppies and several small
hardware changes. In January 1985, Lisa 2 was replaced by Macintosh XL, which had a modified video
hardware, and used a variant of the Macintosh system instead of the 7/7 Lisa OS. Mac XL was
discontinued in May 1985 (although it was still available at much later dates). Rumor has it that
an enhanced, 68020-based Lisa was in development when Apple discontinued the Lisa.

Note that, contrary to a common belief, the Macintosh is not a mere offspring of the Lisa, since
both projects were led simultaneously. While the Macintosh borrowed many ideas from the Lisa project
(which had more financial resources), the reverse is often true, too: for instance, the Macintosh
included a GUI from the beginning.


The significance of Lisa:

Lisa is a milestone in the history of computing. Arguably, the Xerox PARC research center invented
most GUI concepts (along with Object-Oriented programming and Ethernet) 10 years before Lisa was
introduced. However, although Xerox research was public, and some Xerox Altos were actually sold,
or given to universities, these experiments remained little known, and raised little interest.
I guess this was because computing was mostly the field of highly-trained professionals who did
not care about ease of use (you know, the same kind of guys who laughed at Macintosh and worshipped
the early IBM-PCs). So, Lisa made the world aware that GUI could exist, all the more since Apple
was a major computer maker. Also, Lisa (along with Macintosh, Atari ST and Commodore Amiga)
introduced GUI to hobbyists and home computer users, which enabled GUI to live.

$end

#---------------------------------------------------------------------------------------------#

$info=lviv
$bio
PK-01 Lviv (1989)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=lynx
$bio
Atari Lynx (1989) and Atari Lynx II (1990)


The Lynx was the world's first hand-held color video game system.  Sold by Atari (developed by 
Epyx a few years earlier), the Lynx offered true multi-player competition, built-in 3D and 
distortion graphic effects, reversible controls, and fast arcade action.  The system featured 
some accurate arcade translations such as Joust, Rampart, and Klax.  The Lynx II is a lightweight
redesign and features stereo sound and shorter power down timer.  Around 1993 Atari ceased marketing
the Lynx and focused on their new console, the Jaguar. (Notes taken from FAQ and Atari Age)


Features:

Two 16-Bit custom CMOS chips running at 16Mhz(named Mikey and Suzy)
Sound: 8 bit DAC for each channel; 4 channels integrated stereo speaker (wired for mono in original)
Screen: 160 x 102 (horz) 60.00 Hz 
Color: 4096 colors, 16 max per scanline
Others: 64KB RAM of 120ns DRAM


Ports: 
Headphones (mini-DIN 3.5mm stereo; wired for mono on the original Lynx)
ComLynx (multiple unit communications, serial)
Power (9V DC, 1 A)
Game cartridge slot
Battery holder (six AA) ~4-5 hours


Size: 9.25" x 4.25" x 2" (10.75" x 4.25" x 1.5" for original Lynx)
Screen: 3.5" diagonal (3.25" x 1.88" approx.) 


Notes:
Lynx is flip-able for optimal support of left and right hand players (hold down pause and press 
option 2 in many games) Some games want to be rotated by 90 degree


Links:
FAQ on Lynx - www.digiserve.com/eescape/atari/Atari.shtml
Atari age - www.atariage.com (Excellent Site)


MESS Emulation State:

several cartridges playable
blitter imperfect
timer system incomplete
audio imperfect
no serial port emulation


$end

#---------------------------------------------------------------------------------------------#

$info=mac512ke
$bio
Apple Macintosh 512ke


History and Trivia:

Introduced on 14th April 1986, the Macintosh 512ke was essentially a Macintosh 512k with
the same 128k ROMs and double-sided 800 KB internal floppy drive as the Mac Plus.

It was sold as a poor man's Macintosh. Also, any existing Macintosh 512k could be upgraded to 512ke.
(They could be upgraded to a Mac Plus, too, but this involved changing the motherboard.)

Since this model was discontinued a few months later (in August 1986), it may have just been
a way for Apple to get rid of its excess Macintosh 512 motherboard. Or maybe they realized that
512 kb of RAM were not enough to run real-world Macintosh programs.

$end

#---------------------------------------------------------------------------------------------#

$info=macplus
$bio
Apple Macintosh Plus


History and Trivia:

Introduced on 16th January 1986, the Macintosh Plus was the first real improvement of
the original Macintosh 128k (The Macintosh 512k was just a Mac 128k with 512 kb of RAM). It had
several new features.

The extended ROM held the new version of operating system: it supported hard disk units,
the SCSI bus, and the new file system: HFS (Hierarchical File System), along with many other
new features (Time Manager...). Additionally, various routines and managers previously located
in RAM (Appletalk manager, RAM Serial Driver, Standard File Package...) had been moved to ROM.

The new floppy disk unit could use double-sided 800 kb disks (compared to single-sided 400 kb
for the Macintosh 128k). It came with 1 Mb of RAM, and could easily be expanded to 4 Mb, using
standard 1Mb SIMMs. It had an enhanced keyboard with a numeric pad and last but not least, it had
a SCSI 1 interface which allowed to connect several high speed peripherals (maximal transfer rate of
312 kbyte/s on Mac Plus - which is incredibly inefficient) such as hard disks and scanners.

Although the Mac Plus was made obsolete in march 1987 by the new Macintosh series (Macintosh SE
and the Macintosh II), it remained in production as a cheaper alternative until the introduction
of Macintosh Classic on 15th october 1990. This makes Macintosh Plus the longest lived Macintosh
ever produced.

$end

#---------------------------------------------------------------------------------------------#

$info=macxl
$bio
Apple Macintosh XL


Usage:

This driver is still buggy. Neither the hard drive nor the serial port are supported. There are
many other bugs remaining with MMU emulation. Only Macworks will boot.

When you boot up the Lisa, you can see a self-test progress indicator. At least one test will fail:
you must discard the error message by selecting the 'Ignore' or 'Start-up from...' button. Then,
you get a boot device menu. Select the floppy drive unit, since it is the only available device.
If the mouse temporarily refuses to work, you may use the keyboard shortcuts Apple+2 and Apple+3
(the Apple key should be mapped to Control; you must use the numeric keys on the main keyboard, not
on the numeric keypad). If the computer does boot, you will see an icon representing a weird floppy
disk with a cross (maybe it actually represents a twiggy disk).

If you boot MacWorks, you should eventually see a floppy disk icon with a question mark. At this
point, it is time to insert a bootable Macintosh image: to do so, use the file manager or whatever
osd equivalent you may have.


History and Trivia:

In late 1984, Apple's financial health was questionable, and Apple came to the conclusion that
it did not make sense to support both Lisa and Macintosh.

Therefore, on 1st January 1985, Apple discontinued the Lisa. However, they released
a program named MacWorks, which enabled a Lisa to run the Macintosh operating system.

The same day, they introduced a new variation of the Lisa hardware, named Macintosh XL,
which was a Lisa 2 whose video hardware was modified in order for it to display square pixels.
Additionally, existing Lisas could be upgraded to Macintosh XL. This modification improved
the appearance of Macintosh programs; however, it prevented the Macintosh XL from running
the Lisa operating system, or any Lisa program, for that matter. Needless to say, it would have
been very easy to patch the Lisa OS to support the new video resolution: this was simply not done,
since Apple had discontinued the Lisa OS.

Macintosh XL was not very successful: Apple discontinued it in May 1985, and the remaining
stocks were sold to another company (Sun Remarketing) which did manage to sell them.

Though ill-fated, the Macintosh XL was an interesting machine. It was slow, slower than even
the original Macintosh, but it supported up to 2 Megabytes of RAM (while the original Macintosh
came with 128kb or 512kb only), had a larger screen, supported hard drives units (which
the original Macintosh could not do until the Hard Disk 20 was introduced), and it had three
expansion ports (it was thus the first expandable Macintosh, more than 2 years before Macintosh II
and Macintosh SE were introduced). A number of these was bought by developers who needed
the hard drive and appreciated the larger screen (anyway, Macintosh development was originally done
on Lisa, so the transition from Lisa Workshop on Lisa to Macintosh Programmer Workshop on
Macintosh XL was a natural one).

$end

#---------------------------------------------------------------------------------------------#

$info=max
$bio
Commodore Max


History and Trivia:

Delivered in japan only?

 (vic10,ultimax,vickey prototype)

 (all modules should work with c64)

 cartridges necessary (nothing works without cartridge)

 low cost c64

 flat design

 only 4 kbyte sram

 simpler banking chip

  no portlines from CPU

 only 1 cia6526 chip

  restore key connection?

  no serial bus

  no userport

 keyboard

  restore key in pictures!

 tape port

 2 gameports

  lightpen (port a only) and joystick mentioned in advertisement

  paddles

 cartridge/expansion port (some signals different to c64)

 no rom on board (minibasic with kernel delivered as cartridge?)


$end

#---------------------------------------------------------------------------------------------#

$info=mbee
$bio
Applied Technologies Microbee

Features:

MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=mc10
$bio
Tandy Radio Shack MC-10 (1983)

Features:


MESS Emulation State:

$end
#---------------------------------------------------------------------------------------------#

$info=microtan
$bio
Tangerine Microtan 65 (1979)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=mk1
$bio
Super System 1/MK I


early chess computer

sold from several firms
in Germany as MK1


Features:

4 7segment led digits
plug for external power supply


Instructions:

number with dot means thinking about move?
4 dots mean ready for input?

power up prompt L asks for level?
answering with 5 prompts you with bp
than you can play as white and enter your move (enter is d/play)


MESS Emulation State:

operating instructions needed!
not working (CPU core problem?)


$end

#---------------------------------------------------------------------------------------------#

$info=mk2
$bio
Super System 2/MK 2


early chess computer

sold from several firms
in Germany as MK2

2 designs known, seams to be functional the same


Features:

4 7segment led digit
integrated speaker
plug for external power supply


Notes:

for the computer to start as white
 switch to black (h enter)
 swap players (g enter)
Pinout and instructions for reading roms are in messroms.txt


MESS Emulation State:

Random number generation is not accurate (rriot6530 emulation)
led emulation not accurate (noticeable while computer is thinking)


$end

#---------------------------------------------------------------------------------------------#

$info=msx
$bio
MSX 1 Class Computers


The MSX driver currently emulates the MSX1, international, UK, korean and Japanese models.


Not emulated:
Printer port, diskdrives, megaRAM, Sound Cartridge (SCC+), MSX2, etc..


Cartridge emulation:
The MSX has 64kB RAM, like most (by far) MSX1 computers. It is located in slot 3. Two 
cartridges are allowed: the first in slot 1 and the second in slot 2. So subslots aren't 
emulated (yet). 


The msx.crc file is important. The last field on every line specifies the type of ROM mapper. 
See msx.crc for more information.


Sound emulation:
The standard sound chip, the PSG (AY8910) is emulated, so is the extension that was included 
in some Konami cartridges: the SCC. The keyclick (PPI) is also emulated, as is the FM-PAC 
(you'll need the fmpac.rom of the original Panasonic FM-PAC for this). Unfortunately the 
YM2413 emulation in MAME does not emulate the volumes correctly.


Last but not least, the DAC in Konami's Synthesizer is emulated, and the SIMPL (DAC on the 
printer port). The DAC in Konami's Matjusushi is also emulated, but the driver lacks MSX2 
support.  


SRAM in cartridges:
A number of cartridges (Hydlide 2, Xanadu, The Game Master 2 and more) had on-board sram. 
This sram is automagically saved as a MEMCARD.  


Tape emulation:
Unlike other MSX emulators, the tape emulation is not done by trapping BIOS calls. In our 
opinion this is an evil kludge; apart from that, our setup does have an advantage. Tapes with 
a custom loader (using direct access to the hardware) will work fine. It is done by saving 
the tape as a .wav file. In principle, you could record a tape to .wav, and load them into 
MESS.


History and Trivia:

In the early 80's, there were a lot of home computers, Microsoft and a Japanese company 
called ASCII corporation (directed by Kay Nishi) decided then to create an industry standard 
for the home computers: MSX (for MicroSoft eXtended). The new standard was based on an 
existing computer: The Spectravideo SV 318. Microsoft designed the MSX 1 computers and the 
first version of the OS: MSX DOS 1 (which looks like earlier versions of MS DOS).


Almost all Japanese and Korean computer companies made their own MSX computers (except 
perhaps NEC). Bill Gates was then very confident about the future of the MSX standard. 
Spectravideo (one of the MSX companies) made a 80 columns card and adapted CP/M on the MSX.
A lot of software(especially a lot of games from Sega, Konami, Taito, Ascii,...) and 
hardware was developed for this standard. Despite all its qualities, the MSX family didn't 
have great success in USA, however was pretty known in Europe (Netherlands and France), in 
South America (Brazil) and USSR. This standard was replaced in 1985 by MSX 2. 


A list of known MSX compliant machines:


Canon (Japan)

V-8: 16kB RAM (other source says 32kB RAM)
V-10: 16kB RAM
V-20: 64kB RAM



Casio (Japan)

MX-10: 16kB RAM (other source says 64k), docking station available
MX-101: 16kB RAM (other source says 64k)
PV-7: 32kB RAM
PV-16: 16kB RAM



Daewoo/Yeno (Korea)

Ce-Tec MPC-80: 64kB RAM (other source says 32KB)
DPC-100: 16kB RAM, built in loudspeaker, available in green, blue or silver
DPC-200: 64kB RAM
DPH-64: 64kB RAM (other source says 32kB RAM)
DPH-?: 64kB RAM, built in software, Arabic version
IQ-1000: 32kB RAM, produced for Korea
MX64: 64kB RAM



Dragon (Spain)

MSX-64: 64kB RAM



Dynadata (MSX from Daewoo in Spain)

DPC-200: 64kB RAM



Fenner (Italy?)

FPC-500: 64kB RAM



Fujitsu (Japan)

MB-H1: ??kB RAM
FM-X: 16kB RAM



General (Japan)

PAXON-PC K50: ??kB RAM, separate keyboard, computer and monitor in one box
PAXON-PC T50: 16kB RAM, RGB connector
PAXON-PC T55: 32kB RAM, RGB connector



Goldstar (Korea)

FC-80: ??kB RAM
FC-100: 16kB RAM
FC-200: 64kB RAM (with hole for light-pen)



Gradiente (Brazil)

XP-800 Expert 1.0: 64kB RAM, separate keyboard
XP-800 Expert 1.1: 64kB RAM, separate keyboard (with fixed ASCII tables, grey colour)
Expert plus: 64kB RAM, separate keyboard (black colour)
Expert DD plus: 64kB RAM, separate keyboard, 3,5" floppy disk drive (black colour)



Hitachi (Japan)

Hint: 16kB RAM
MB-H1 (Humanicatio): 32kB RAM, built in software (Sketch and Music)
MB-H1E: 16kB RAM
MB-H2: 64kB RAM, built in tape recorder
MB-H21: ??kB RAM
MB-H25: ??kB RAM
MB-H50: 64kB RAM
MB-H80: 64kB RAM, also built in software (Sketch and Music)



JVC/Victor (Japan)

HC-5: 32kB RAM (other source says 16kB RAM)
HC-6: 16kB RAM
HC-6AV: 32kB RAM, RGB connector
HC-7: 64kB RAM (Japanese version)
HC-7E: 64kB RAM (English version, other source says 32KB RAM)
HC-7GB: 64kB RAM
HC-30: 32kB RAM
HC-60: 32kB RAM



Kyocera (Japan)

YC-64: 64kB RAM



Mitsubishi (Japan)

Letus: 16kB RAM
ML-8000: 32kB RAM
ML-F48: 32kB RAM
ML-F80: 64kB RAM
ML-F110: 16kB RAM
ML-F120(D): 32kB RAM
ML-F8000: 32kB RAM
ML-FX1: 64kB RAM
ML-FX2: 64kB RAM, built in software



National (Japan)

CF-1200: 16kB RAM
CF-2000: 16kB RAM
CF-2700: 32kB RAM
CF-3000: 64kB RAM
CF-3300: 64kB RAM
CF-4000: ??kB RAM
FS-1300: 64kB RAM
FS-4000: 64kB RAM



Olympia (France)

PHC-2: ??kB RAM, same as some Sanyo?
PHC-28: 32kB RAM, same as Sanyo's PHC-28S



Panasonic/Matsushita (Japan)

CF-2000: 16kB RAM
CF-2700: 64kB RAM, same as Sanyo MPC-64
CF-3000: ??kB RAM
CF-3300: ??kB RAM



Perfect (Daewoo in Kuwait)

Perfect1: 64kb RAM, 1 slot, no reset, built in software



Philips (The Netherlands)

VG-8000: 16kB RAM
VG-8010: 32kB RAM
VG-8020: 64kB RAM, (VG8020 comes in 2 different versions (/00 and /20), new versions use 
sub-slot for ram)



Pioneer (Japan)

PX-7 PALCOM: 32kB RAM, built in laser disk interface, superimpose (image & sound (stereo)), 
separate keyboard (UK version in black, JP version in black/silver (lila/blue keys) colour)
PX-V60: 64kB RAM



Radofin (Hong-Kong)

Triton: 64kB RAM



Radiola (France)

MX-180: 32kB RAM, Same as Philips VG-8010 with a different color case



Sakhr/Universal/Al Alamiah (Kuwait/Yemen)

     Those computers are Yamaha and Sanyo MSX modified for arabian countries.

AX-100: 64kB RAM
AX-150: 64kB RAM
AX-170: 64kB RAM, built in special roms with Arabic characters set and software
AX-230: 64kB RAM, same software as AX-170 + 1MB of other software
AX-330: 64kB RAM, same as AX-230 but with built in SEGA-MEGADRIVE board
AX-990: 64kB RAM, 50 programs built in, SEGA-MEGADRIVE board built in
SX-100: 32kB RAM, 3 slots, RGB connector
SX-101: ??kB RAM, 3 slots



Samsung (Korea)

SPC-800: 64kB RAM



Sanyo (Japan)

MPC-2: 16kB RAM
MPC-3: 16kB RAM
MPC-4: 16kB RAM
MPC-5: 16kB RAM
MPC-6: 64kB RAM
MPC-10(mk2): 64kB RAM (other source says 32kB RAM), lightpen-interface
MPC-11: 64kB RAM (other source says 32kB RAM), lightpen-interface
MPC-64: 64kB RAM
MPC-100: 64kB RAM, hole for lightpen
MPC-200: 64kB RAM
MPC-X: 64kB RAM, built in lightpen, high-res adaptor and speech-synthesizer
PHC-27: 64kB RAM
PHC-28L: 64kB RAM, Same as PHC-28S but with 64kB RAM
PHC-28S: 16KB (or 32KB) RAM
PHC-30: 16kB RAM (other source says 32KB), built in tape recorder
PHC-30N: 64kB RAM
PHC-33: 32kB RAM
WAVY-MPC-10: 32KB (other source says 16KB) RAM, built in light pen unit



Schneider (Germany)

MC-810: 32kB RAM, (Same as Philips VG-8010 with a different color case)



Sharp/Epcom (Brazil)

HB-8000 HotBit: 64kB RAM (white colour)
HB-8000 HotBit 1.2: 64kB RAM (in black color)



Sony (Japan)

     Note: Some of the Sony's computer names are followed by a letter like HB-101P, or 
HB-101F or HB-700D. The last letter is only depending of the keyboard layout of the 
country. D=German (QWERTZ) F=French (AZERTY) S=Spanish P=UK (QWERTY)

HB-10: 64kB RAM
HB-11: 64kB RAM
HB-11U: ??kB RAM, built in dictionary Japanese-English
HB-20: 32kB RAM
HB-55: 16kB RAM
HB-75: 64kB RAM, built in program: Personal Databank (schedule/memo/address)
HB-101: 32kB RAM, (Same as HB-201 but with 32kB RAM, but other source says 16kB RAM)
HB-201: 64kB RAM, built in joystick (Same as HB-501 but without tape recorder)
HB-501: 64kB RAM, built in tape recorder ('BitCorder'), pause button, joystick
HB-701, 64kB RAM
HB-701FD: 64kB RAM, floppy disk drive



Spectravideo (Hong-Kong/USA)

SVI-728: 64kB RAM, numeric keypad
SVI-738: 64kB RAM, built in 80 columns card (V9938), RS232C interface, 360KB 3,5" floppy 
disk drive. Also called X'PRESS and also SVI-318 and SVI-328 MSX compatible with an emulator



Talent/Telematica (Argentina)

DPC-200: 64kB RAM, Daewoo's MSX model sold under the Talent name



Toshiba (Japan)

HX-10: 64kB RAM
HX-10D: 16kB RAM
HX-10DP: 64kB RAM
HX-10DPN: 64kB RAM, built in program (??)
HX-10E: 64kB RAM
HX-10S: 16kB RAM
HX-20: 64kB RAM, built in word processor (in total 64kB ROM), RAMdisk feature (32kB of 
main RAM in page 0 and 1 are used, under BASIC), T6950 VDP (software compatible with 
9929A which is normally used)
HX-20e: 64kB RAM, built in word processor, RS232C interface
HX-21: 64kB RAM, built in software
HX-22: 64kB RAM, RS-232C interface, RGB connector (SCART 21), built in word processor (in 
total 64kB ROM)
HX-30: ??kB RAM, built in software
HX-31: ??kB RAM, built in software
HX-32: ??kB RAM, built in software
HX-51: ??kB RAM



Triton (Hong-Kong)

PC64: 64kB RAM



Yamaha (Japan)

CX5: 32kB RAM
CX5F: 32kB RAM
CX5M: 32kB RAM, built in FM synthesizer (SFG-01) and MIDI-Interface
CX5MII: 64kB RAM, built in FM synthesizer (SFG-01), MIDI-interface
CX5MII/128: 128kB RAM, built in FM synthesizer (SFG-05), (V9938 built in), built in 
FM VOICING program II
CX-11: 32kB RAM
CX-100: 32kB RAM
YIS-303: 16kB RAM
YIS-503: 32kB RAM
YIS-503II/64: 64kB RAM, FDD



Yashica (Japan)

YC-64: 64kB RAM, Kyocera's MSX sold by Yashica


MSX system list compiled from the list by TRD, Manuel Bilderbeek & Alex Wulms. Thanks to
Stefano Priore, for abridging it to MSX1 specific info.


Other Info:

The MSX driver is very preliminary. Disk drive emulation doesn't work properly
for example, and memory emulation isn't very good either. Various MSX1 models
are emulated, and there is preliminary MSX2 support through the msx2 and msx2j
driver.

The required bios dumps are available at:

	http://www.file-hunter.com/


Cartridges:

The ROM mapper (which is specified with -rom x in fMSX) is autodetected but
isn't perfect. So you should also install the crc files, which can be 
downloaded from the official mess site. With the CRC files, cartridges with
SRAM or a DAC (like Synthesizer or Majutsushi from Konami) are detected
properly.


Tape emulation:

Tape emulation is done via .wav files; the actual sound the MSX produces
is recorded / played back, making tape emulation more authentic. Because of
this, you can record your existing tapes to .wav and play them in MESS. Make
sure your record them at high quality (44100Hz, 16 bit and mono).

.cas files are also supported but they're converted to sound by the driver
on startup. There is no support for writing .cas files.

While recording or playback you can hear the sound through the sound card
of your computer. You can control the volume by pressing <SCROLL LOCK> and
<~>. 

.tap files from Virtual MSX can be converted to .cas using imgtool (see
imgtool.txt for more information).


Memory Emulation:

The memory map is from a standard MSX1; there are no subslots, nor MSX2 
memory mappers for RAM. RAM is 64Kb in slot 3, and slot 1 and 2 are where 
the cartridges end up.


Sound emulation:

The PSG, PPI (key click), SCC are emulated. The SCC isn't perfect yet, you
can hear slight imperfections in King's Valley 2 (when you through the knife),
F1 Spirit (when you start a race), Solid Snake (when you get to building 3).
The SCC is called `k051649' in the volume menu.

The FM-PAC is also emulated for which you need the ROM dump of an original
Panasonic FM-PAC. However the sound emulation isn't very good at all. :/

The following DACs are emulated: SIMPL, Konami's Synthesizer, Konami's
Majutsushi. The keyclick is also done through the DAC. To enable SIMPL
(which disables the printer port), press <SCROLL LOCK>, <TAB> and go to
Dip Switches. Here set SIMPL to "On".

You can control the volumes by pressing <SCROLL LOCK> (so you go to UI
mode) and then <~>. Press <UP> and <DOWN> to see different sound chips, and
<LEFT> and <RIGHT> to change the volume.


Video emulation:

The tms9928a (MSX1) emulation is very good, but doesn't emulate changes while
the screen is being drawn to the screen. 

The v9938 emulation is preliminary and has problems with sprite mode 2 (MSX2
games), interlaced mode, graphic engine emulation, timing (Zanac Ex doesn't
run correctly and Aleste only runs in the Japanese version of the driver).
Also the PAL/NTSC (50/60Hz) switch is an evil hack, the actual refresh rate
of the screen isn't changed.

Also it's not very well optimized, I'll start optimizing as soon as it
works alright. 

The v9958 isn't emulated at all. 

The MSX1 and MSX2 video chips only only display a limited number of sprites on
one line; this causes sprite flickering, you can turn this off (which isn't
like a real MSX of course) by pressing: <SCROLL LOCK>, <TAB> and going to the
Dip Switches menu. Set "Enforce 4/8 sprites/line" to "Off". Note that sometimes
this feature is used for other purposes, like making sure a sprite is only
partly displayed (when you enter a world in The Maze of Galious for example).


Printer port:

The printer port is emulated; output to the port is saved to disk. However
no emulation/translation is done, so the data is raw. 


MSX2 RTC:

The real-time clock, which keeps information like the time and date, should
be emulated correctly. However in PAL mode the timing isn't correct as the
refresh rate isn't properly adjusted. All settings are saved to disk.


Keyboard/joystick/mouse:

The keyboard layout should be properly emulated. Joysticks seem to default
to having key-bindings as well, so pressing <CTRL> or <ALT> will also work
for the joysticks, but might give some unexpected results.

The mouse emulation doesn't work properly yet. :(


Disk Emulation:

Disks are emulated through proper wd2793 emulation. Currently only the
Philips and Sony diskroms are supported; the Panasonic machines use the
tc8566af diskcontroller (unemulated) and the Brazillian machines are 
port-based (not memory-mapped).

You need a proper diskrom dump, and the msx.crc file in place. The diskrom 
should be recognized as type 15 otherwise the driver doesn't know it's
a diskrom. 

Next specify the diskrom as one of the cartridges. That should do the 
trick. :) Note that only .dsk files are supported; other formats can
be converted to .dsk using imgtool (it can convert .msx, .img, .ddi, .xsa,
multidisks -- see imgtool.txt for more information).

Error aren't properly handled yet. ``not ready'' is reported as ``record
not found'', which results in ``Disk I/O error'' in MSX-BASIC.

Also not that memory emulation isn't complete so MSX2 memory mappers
don't work yet.


$end

#---------------------------------------------------------------------------------------------#

$info=mtx512
$bio
Memotech MTX512


Usage:


currently, the driver requires cassette images to be stored
in the following directory - 

roms\mtx512

the cassette image is a flat binary image with the first 0x12 bytes being the
original mtx header and the rest being the file data.

A note about cassette naming schemes - so long as the filename of the cassette image is the same 
as that stored in the header, you should be alright.


To run a tape image just type LOAD"<image name>" at the Ready Prompt.

MTX basic is pretty much a standard dialect, so you should have no problems
using it, but graphic handling etc is a bit esoteric.



Known Issues:


Improving the tape support, because at the moment it is just a hack.

Improve the TMS99x8 driver (appears the dirtyrect handling there is not
quite right)

RELCPMH Mode (CP/M Memory configuration)

support for additional roms

No Cassette Save support.

No Printer support


$end

#---------------------------------------------------------------------------------------------#

$info=mz700
$bio
Sharp MZ-700 (1982)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=mvision
$bio
MB Microvision


First handheld (mono)


Features:

16x16 LCD display
CPU is in the cartridge (normally TMS1100 with on chip rom)

how to dump the TMS1100?

$end

#---------------------------------------------------------------------------------------------#

$info=nascom1
$bio
Nascom 1 & 2


Usage Notes:
The Nascom 2 clone has support for .cas, .bin and .nas cassette files.

The .cas files are used by BASIC. To get there from the monitor, type
EE000, enter 49152 as the memory size then CLOAD "<letter>". You can use
RUN/LIST etc. The <letter> for the existing cassettes are:

adventr.cas     A
snailr.cas      S
startrek.cas    T
swinghs.cas     M
swords.cas      S

The .nas files are loaded by the monitor. Type L, wait for the loading to
finish, then E<start addr>. The start address is the address first
displayed by the load, usually 1000. To load the .bin files, use R in the
monitor.


$end

#---------------------------------------------------------------------------------------------#

$info=nc100
$bio
Amstrad NC100 Notepad computer


The Amstrad NC100 Notepad computer is a portable computer.

This system has a LCD screen and nice keyboard. The memory is
protected by a lithium battery which is charged when the computer
is connected to a mains supply.

PCMCIA ram cards can be used to store programs and documents.

The computer has a built in wordprocessor, BBC Basic, Serial Terminal,
Calculator, Diary and more. The whole system is a personal organiser with lots
of extras.

MESS Emulation State:

a. ACCURACY

The emulation is reasonably accurate. I have used NCIOSPEC.TXT published by Cliff
Lawson at Amstrad to write the driver. Unfortunately this document does not describe
undocumented hardware features, so at this time, any programs relying on undocumented
behaviour will not work well. I am currently looking for NC owners (especially NC150
owners) to run some tests for me.


b. PRINTER

Printer emulation is working. All data is saved out to a file on the host filesystem.
The data is not processed in any way, so the file will contain the raw bytes output
to the printer port.


c. PCMCIA RAM CARD

The NC100 supports a PCMCIA Ram card up to 1mb in size. 

The emulator supports all ram card operations: reading, writing, formatting
and write enable/write protect.

It also supports ram cards of all sizes (128k, 256k, 512k and 1mb).

The file format of a ram card is a simple memory dump; there are no headers or 
other information stored in the file.

If files have been saved onto the ram card by the emulation, then the file
on the host filesystem will be updated (the update will happen when MESS is exited,
or a new card is inserted).

Use imgtool to create blank cards, and to put/get files to the card image.
At this time, only 1mb cards can be created and there is no support to create unformatted
or executable cards.

Do not forget to insert memory card (as "Cartridge"), and if you want to write files
to it make sure it is write enabled (see dipswitches in UI).

imgtool create nccard <card name>
	Create a blank formatted memory card. The NC100 can write files to this.

	You can view the files by:
		1. Pressing FUNCTION + B to enter BASIC, then typing "*." at the ">"
		prompt.
		2. Enter wordprocessor menu and select list files.
	
imgtool put nccard <card name> <host filesystem name> <nc100 name>
	Put a file from the host filesystem (e.g. PC harddrive) to the nc memory card.
	The file will be cut if it is larger than 64k (64k is the maximum file size
	supported by the nc100 filesystem).

	At this time, all files are assumed to be ASCII. There is no support to put binary
	or BASIC files.

imgtool get nccard <card name> <nc100 name> <host filesystem name>
	Get a file from the nc memory card to the host filesystem. Files are always
	saved as binary regardless of file type on memory card.

imgtool dir nccard <card name>
	Show a directory listing of the memory card.

imgtool del nccard <card name> <nc100 name>
	Delete a file from the memory card


d. SERIAL

Serial is mostly working. 

MESS does not have a UI to change the serial device transmit/receive properties, so at 
this time it is fixed to: 9600 baud, 8 data bits, 1 stop bit, no parity for the NC100
driver.

At this time, the serial device only supports a simple protocol. (Each byte is transmitted
in a basic serial form, with start bits, data bits, parity and stop bits).

In the future the serial device will support xmodem and xmodem send/receive will then
work in the emulation.

XMODEM transfer instructions:

NC100:

1. Enter wordprocessor.
2. Start a new document
3. Quit wordprocessor
3. Go to list documents.
4. Press MENU key
5. Here you can navigate the menu to find "XMODEM receive document".
6. Start XMODEM send on PC.


Links:

http://genesis8.free.fr/
http://www.ncus.org.uk/

$end

#---------------------------------------------------------------------------------------------#

$info=nc200
$bio
Amstrad NC200 Notebook computer


The Amstrad NC200 Notebook computer is a portable computer.

This system has a fold-down LCD screen, nice keyboard and disc drive.
(The disc format is 720k PC Double Density DOS compatible).

The memory is  protected by a lithium battery which is charged when the computer
is connected to a mains supply.

PCMCIA ram cards can be used to store programs and documents.

The computer has a built in wordprocessor, BBC Basic, Serial Terminal,
Calculator, Diary and more. The whole system is a personal organiser with lots
of extras.

MESS Emulation State:

a. ACCURACY


The emulation is reasonably accurate. There are no documents about the hardware
of the NC200. Originally Cliff Lawson published details but these have been lost
when his WWW site went down. Since then he has been unable to write up the details
of the hardware (Cliff is a very busy man).

So I have worked out much of the NC200 hardware by disassembling the ROM and I have
also had much help from Russel Marks.

a. PRINTER


Same state as NC100, please see nc.txt for details.

b. PCMCIA RAM CARD


Same state as NC100, please see nc.txt for details.

c. SERIAL


Serial is not working properly. It is almost at the same state as the NC100.

d. DISK DRIVE


Not working. I am trying to find out the details of the disc interface by looking
at lots of disassemblies!


Links:

http://genesis8.free.fr/
http://www.ncus.org.uk/


$end

#---------------------------------------------------------------------------------------------#

$info=neat
$bio
New Enhanced AT


popular AT compatible chipset for 80286

Features:

support of LIM EMS4.0 (or only 3.2?)

Notes:

msdos utilities for quickset and ems available


MESS Emulation State:

basically the same as mess ibmat emulation
special chipset features not emulated yet
not working


$end

#---------------------------------------------------------------------------------------------#

$info=nes
$bio
Nintendo Entertainment System / Famicom (1985 USA)


The Nintendo Entertainment System (called Famicom in Japan) was an instant hit with such popular
titles as Super Mario Bros., The Legend of Zelda and Excitebike.  It was released to the states
in August, 1985. The 8-bit graphics were far superior to any-home based console that had come 
before it. Strong sales were were driven by the gamers wanting the feeling of real-life arcade
games in their homes.

The NES boasts an impressive library of games with over 8000 games (Cowering goodnes), offering
a smorgasbord of titles for fans of every genre. The Nintendo continued it's reign with other 
big hits such as The Mega Man series, Ninja Gaiden, Contra, Castlevania, Double Dragon and of 
course, Super Mario Bros 3.  The NES continued it's strong sales with over 36 million units sold
worldwide by its official cancellation in January 1996 but not before releasing a redesigned NES. 


Usage:

Note that the one player hand controller Select is
mapped as Coin 1 (default key 5), and 
Start is mapped as Player 1 Start (default key 1).
This makes it convenient to use the driver with a
"MAME" configured controller.


Famicom Disk System switching is mapped to Player 1
Button 3 (default key [space]).


Features:

Main Processor: 8bit NMOS 6502 CPU with a secondary PPU (Picture Processing Unit). 
Clock Speed: 1.7897725MHz for NTSC and 1.773447MHz for the PAL version.
Data Path width: 8-bits
Color Palette: 256; 16 max on screen
Sprites: 64 (8x8 or 8x16)
Sound: FM with 5 sound channels (4 analog, 1 digital)
Video Ram: 16 Kbits
SPR-RAM: 256 Bytes
Rom addressing: 8k
Cart Size: 64k - 4 Megabit
Controls:  8 directional D-Pad, A, B, select, and start buttons.  


Links:

Nintendo - www.nintendo.com
NES World - nesworld.parodius.com
The Warp Zone - www.classicgaming.com/thewarpzone


MESS Emulation State:

The NES driver should run most of the images currently out there with very little problem.  It doesn't yet support the obscure one-game mappers used by many "pirate carts".


The NES driver has quite accurate sound and sample playback. For example, you can hear speech samples in Bayou Billy, Gauntlet, Dirty Harry, and Skate or Die that are not present in a few other NES emulators.


The main focus up until this point has been in getting the NES driver as accurate as possible.  Unfortunately, the scanline rendering method is quite slow, so future efforts will be focusing on bringing up the speed.


Wanted: I'd appreciate any info on some of the more obscure mappers. If you have any of this, please drop me a line at bradman@pobox.com


$end

#---------------------------------------------------------------------------------------------#

$info=odyssey2
$bio
Magnavox(?) Odyssey2


Console for tv connection

Philips G7000 videopac

Features:

2 digital joysticks
keyboard


Emulators:

Dan Boris o2em for DOS


MESS Emulation State:

based on info by Dan Boris


$end

#---------------------------------------------------------------------------------------------#

$info=oric1
$bio
Oric 1


History and Trivia:

This British computer was one of the most popular computers in Europe in early 80's, and a 
competitor of the Sinclair Spectrum. The two models (16 and 48) had the same technical 
characteristics, but the model 48 was sold with FORTH language. A small plotter was available 
for this computer. Note that the sound chip was the same as the one in the Amstrad CPC, 
MSX computers and Atari ST! The Oric 1's ROM was very bugged though, and it was replaced with 
the Oric Atmos.


$end

#---------------------------------------------------------------------------------------------#

$info=orica
$bio
Oric Atmos


The emulation supports Microdisc and Jasmin floppy disc controller emulation, this
can be chosen using a Dipswitch. 

Oric Atmos

Known issues:
- The disc controller emulation is not exact and some programs may fail to load.
- The cassette emulation is not exact and some programs may fail to load
- Screen display should be accurate, but there might be some small bugs.
- Tape programs are found but not loaded.
- there are bugs in the Microdisc and Jasmin floppy disc controller emulation so some
programs will not boot.

History and Trivia:

The Oric Atmos was the successor of the Oric 1 and had almost the same characteristics. Its 
main difference with the Oric 1 was it's enhanced RAM (48 KB instead of 16 KB), the keyboard 
and the debugged ROM (the ORIC 1 had several bugs). Several peripherals were available: 
3" floppy disk drive, a small 4 colour plotter, a speech synthesizer and a Digital/Analogue 
converter. An external interface was needed to use joysticks. 

$end

#---------------------------------------------------------------------------------------------#

$info=pc
$bio
IBM Personal Computer XT (and clones)


History and Trivia:

In early 1980, IBM decided to create a micro computer (up to this date, IBM produced only 
mini and mainframe computers), they didn't really know what they wanted and they didn't 
think for one second that producing micro computer was a profitable business! They asked 
Digital Research (the authors of CP/M) to create an operating system for their new computer.
DR was not very interested, so they approached the then small company Microsoft (at this point 
famous for it's BASIC language) to write this operating system. Microsoft wasn't capable of 
doing it themselves, so Bill Gates bought up the rights to an OS written by a small company 
called Seattle's Computers Products: QDOS (Quick and Dirty Operating System) which became 
PCDOS and later MS-DOS.


The IBM PC wasn't very powerful (and was certainly less powerful than a lot of 8 bit 
computers), the very first PC had only 16 KB RAM and no floppy disk units -- they used 
cassettes. Notice that the functions to handle the cassettes were present in the operating 
system up to MS-DOS 5. The PC was available with either CGA or MDA (on an MPA card). The CGA 
adapter actually had an RCA composite output to hook it up to your TV if you did not want the 
CGA monitor.


The IBM PC XT was the successor of the IBM PC. It's enhanced features included hard disk 
capability, more memory, and no more tape port. Perhaps because of the name and fame of IBM, 
the PC series became a standard and IBM dominated the computer market up until the end of the 
80's. Clones of the XT, such as the Tandy 1000 became commonplace by the end of the decade.


The following PC's and compatibles are supported by, or currently under development in MESS:


IBM PC

Intel 8088 process with 4.77 Mhz clock.


IBM PC Junior

based on IBM PC
Special keyboard
CGA with 160x200x16, 320x200x16 and 640x200x4? colors
3 channel sound chip


IBM PC/XT

based on IBM PC
Intel 8086 instead of 8088, but only ram memory data bus
enhanced to 16 bit.


Tandy1000 Series

IBM PC Junior compatible graphic system.
Later the 640x200x16 graphic mode was also available.
Later models were delivered with EGA/VGA compatible graphic system/card.
IBM PC Junior compatible sound system.
In later models there was also a DAC channel available.
First series with own keyboard (own layout, different keys)



Tandy1000HX

First Tandy 1000 with EEPROM memory for configuration.
Delivered with 3,5 inch  double density disk drive (720kb).



Amstrad PC1512/PC1640/PC6400/PPC664?/PC2086?

Packed IBM PC/XT functionality in few custom chips.
Power supply in the monitor was also used for the computer.
Serial Port,
Parallel Port,
Real Time clock with battery buffered cmos ram,
Graphics adapter,
mouse port for included mouse integrated in the motherboard.
Joystick port for cpc-joystick in the keyboard.



Amstrad PC 1512
(Schneider in Germany/Austria)

CGA compatible graphics system with special 640x200x16 graphics mode.
512 KB ram on board, sockets for additional 128 kb on board.

delivered as
PC1512SD (1 5,25 inch double density disk drive (360kb))
PC1512DD (2 5,25 inch double density disk drives)
PC1512HD10 (1 5,25 inch double density disk driver, harddisk controller and 10MB harddisk)
PC1512HD20 (....20 MB harddisk)
(monochrome (about 16 levels grays) or color monitor)



Amstrad PC 1640
(PC6400 in the US)
(Schneider in Germany/Austria)

EGA compatible graphics card and monitor



Amstrad PC2086
(Schneider in Germany/Austria)

VGA compatible graphics card and monitors?

$end

#---------------------------------------------------------------------------------------------#

$info=p2000t
$bio
Philips P2000T (1980)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=pc1251
$bio
Sharp Pocket Computer 1251


small pocket computer

also marketed as tandy trs80 pc-3


Features:

24 digit (5x7 pixel) LCD display
integrated speaker
same connector for printer and tape drive as pc1401
2 "build in" batteries


MESS Emulation State:

look at pc1401


$end

#---------------------------------------------------------------------------------------------#

$info=pc1350
$bio
Sharp Pocket Computer 1350


small pocket computer


Features:

150x32 pixel LCD display
integrated speaker
connector for printer and tape drive
2 build in batteries

Features of this model included a BASIC interpreter, an 8-bit sharp CPU, 150x32 pixel 
display, 8+32K ROM, 4K RAM which was expandable with a RAM cartridge to 12 or 20K.

Emulator:

pockemul for win32


MESS Emulation State:

look at pc1401


$end

#---------------------------------------------------------------------------------------------#

$info=pc1401
$bio
Sharp Pocket Computer 1401


small scientific calculator and pocket computer

Features:
16 digit (5x7 pixel) LCD display
integrated speaker
connector for printer and tape drive
2 "build in" batteries

Usage Notes:

Holding C-CE while resetting, preserves basic programs. (simulated when starting mess)

(???which of these is correct???)

holding CE while hitting reset prevents the basic area from being overwritten


Error Codes:
error codes found at the inner side of the top:
( should be the same for several models)
1 syntax error
2 calculation error
3 illegal function argument
4 too large a line number
5 next without for
  return without gosub
6 memory overflow
7 print using error
8 i/o device error
9 other errors



History and Trivia:

The PC 1401 was a combination scientific calculator and computer with BASIC interpreter.
Featured an 8-bit Sharp CPU,  8+32K ROM, 4K RAM, and 16 5x7 character display. The PC 1402 
has the same features but includes 10K of RAM.


Other related models (not currently supported by MESS) include -



pc1251
basic computer
24 5x7 character display



pc1253
calculator
derived from the pc1251, reduced keyboard



pc1260
basic computer
16x2 5x7 character display
8 bit sharp CPU
6+32kb rom, 4kb ram



pc1261
pc1260 with 10kb ram



pc1360
pc1350 with?



pc1403
derived from the pc1401
8+32+32kb rom, 8 kb ram
24 5x7 character display



pc1403h
pc1403 with 32 kb ram



pc1421
derived from the pc1401



pc1430
prequel to pc1401



pc1450
pc1401 with some additional keys



pc1475
derived from the pc1450 with some pc1403 features
24x2 5x7 character display


$end

#---------------------------------------------------------------------------------------------#

$info=pc1403
$bio
Sharp Pocket Computer 1403


small scientific calculator and pocket computer

sequel of the pc1401 (better display, more ram, better system software,...)

pc1403 has 8kbyte? ram
pc1403h has 32kbyte ram

Features:

24 digit (5x7 pixel) LCD display
integrated speaker
connector for printer and disk drive
no contrast adjustment


MESS Emulation State:

look at pc1401

$end

#---------------------------------------------------------------------------------------------#

$info=pc1500
$bio
Sharp Pocket Computer 1500


Pocket computer

clone sold as trs80 pc-2
cost reduced redesign with more memory pc1500a


Features:

156x7 pixel LCD display
integrated speaker
integrated realtimeclock
memory/cartridge slot
expansion port for printer and tape drives
batterie slot
connector for external power supply


MESS Emulation State:

not working
incomplete CPU core
lh5811 not emulated
speaker not emulated
realtimeclock not emulated
tape not emulated
printer not emulated
work stopped until more info about
 lh5811
 CPU lh5801 power/interrupt management available


$end

#---------------------------------------------------------------------------------------------#

$info=pc1512
$bio
Amstrad PC1512


IBM XT compatible desktop with modified CGA Monitor

sold as Schneider PC1512 in Germany


Features:

integrated 5 1/4 inch 360 kb disk drive
RTC with integrated setup ram as in IBM AT
1 serial port connector
1 parallel port connector
special mouse (keys wired to keyboard, movement counters on the motherboard)
special connector for cpc compatible joysticks (digital)
power supply in monitor
color graphics adapter with 640x200 in 16 colors
multi language support in bios
Some models sold with second 5 1/4 inch disk drive
Some models sold with harddisk controller and 20mb harddisk


MESS Emulation State:

basically the same as mess ibmpc emulation
special keyboard emulated
special mouse emulated
special joystick emulated
unique dipswitches are emulated
unique color graphics adapter mode emulated
CHARACTER rom dump is missing, and so multinational character support
work stopped until more information available or character rom available


$end

#---------------------------------------------------------------------------------------------#

$info=pc1640
$bio
Amstrad PC1640


IBM XT compatible with modified EGA monitor

sold as Schneider PC1640 in Germany
sold as Amstrad PC6400 in USA


Features:

the same as PC1512, except the integrated graphics adapter
is EGA compatible and the monitor is an EGA one.


MESS Emulation State:

basically the same as PC1512
paradise ega emulation incomplete, will profit from generic ega/vga improvements


$end

#---------------------------------------------------------------------------------------------#

$info=pc200
$bio
Sinclair PC200 Professional Series


IBM XT compatible computer "under the keyboard"

Marketed also as Amstrad PC20

Features:

8086 with 8 mhz
socket for 8087 math coprocessor
512 kb ram on board, sockets for additional 128kb
integrated cga/mda/hercules graphics adapter, 
connector for CGA and MDA/Hercules monitors and TV (hf modulated; PAL?)
integrated 102 key keyboard
2 ibm pc compatible expansion slots (half length)
multi language bios
3 1/2 inch 720 kb disk drive
 connector for external floppy disk drive
rs232 serial port
centronics printer port
standard analog joystick port, delivered with sinclair joystick 
proprietary pc1512 style mouse connector, delivered with sinclair 2 button mouse
rtc?
delivered with msdos, dr gem, organizer software

Notes:

download the mouse driver at http://www.users.zetnet.co.uk/johnhayward/pc200/software.htm

MESS Emulation State:

basically the same as mess ibmpc emulation
character rom dump missing
rough emulation of special graphics adapter
work stopped until more info or system software available


$end

#---------------------------------------------------------------------------------------------#

$info=pc8801
$bio
NEC PC-8801 series


early Z80 based computer commonly used in Japan

Features:

main Z80 CPU 4MHz(some models has 8MHz version)
sub Z80 CPU 4MHz(for 5'floppy disk drive)
64KB RAM
48KB Video RAM
640x200 8colors or B/W graphics
640x400 B/W graphics(required "high-resolution" display(VSYNC 24KHz))
80x25 text(alphabet or Kata-kana only, can overlay on graphics)
YM-2203 or YM-2608 FM sound(some models or optional)
extended RAM(various size, some models or optional)
5'2D or 5'2HD or 8'2D floppy disk drives(some models or optional)
96KB BASIC ROM
Kanji ROM(some models or optional)
Kana-Kanji dictionary ROM(some models)
RS-232C
CD-ROM(some models)
printer port

MESS emulation state:

CPU
text or graphics
YM-2203 sound(YM-2608 not yet)
extended RAM
5'2D disk drives
Kanji ROM
Note: Currently, each model is separated which use "High-resolution"
      display and "Low-resolution" display. Because I don't know how
      to change display resolution and HSYNC frequency dynamically
      (when machine is running).

ROM:

BIOS images has same format as one of images for M88 emulator, but
"disk.rom" is only used first 2K bytes, that is, you must truncate
last 6KB of "disk.rom". M88 emulator and BIOS tools can be downloaded
from this:

	http://www.remus.dti.ne.jp/~cisc/m88/

Currently PC-8801mkIISR rom is only tested.

Disk Emulation:

The D88 format disk image is supported now, but multiple disks image
files are not supported, That is, disk in image file must be only
one. The D88 disk image format is supported by more PC-8801
emulators. Tools for D88 format can be downloaded from these:

	http://www1.plala.or.jp/aoto/index.html
	http://www.remus.dti.ne.jp/~cisc/m88/
	http://member.nifty.ne.jp/arearea/M882.html


TODO:
integrate "high-resolution" and "low-resolution" mode
optimization of CPU switching
more accurate speed(memory wait and DMAC overhead)
YM-2608 sound
joystick and mouse
5'2HD or 8'2D floppy disk drives
font substitution
Kana-Kanji dictionary ROM
test ROMs of other models
multiple disks image support
source clean-up
printer
RS-232C
CD-ROM
more good English documentation

$end

#---------------------------------------------------------------------------------------------#

$info=pc88srl
$bio
NEC PC-8801 (1985)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=pcd85
$bio
PMD-85


homecomputer for tv connection in czechoslovakia?

Features:

8080 compatible CPU
288x256 dots resolution
(version 1 and 2 mono)
(version 3 with 4 colors)
integrated beeper or beep generation for tv
centronics port?
something like user port?


$end

#---------------------------------------------------------------------------------------------#

$info=pce
$bio
NEC PC Engine/TurboGrafx-16 (1987)



The PC Engine (called TurboGrafx - 16 in the US)  was the first 16-Bit graphics home entertainment system to be released. The PC Engine was created by NEC of Japan. Supporting over 1000 software titles with such popular titles as Bonk's Adventure, Bomberman, Dracula X and Ys IV . The PC Engine was embraced by millions of Japanese gamers, and because of this, the system will be remembered as the starting of a legacy. This system was the first of it's kind to use credit card size game cartridges and later supported CD-ROMs and portable models with built in TV tuners.


Features:

Custom 8bit CPU: HuC6280 (7.16MHz)  (1.5 Million Instructions Per Second [MIPS])
Video Processor: HuC6270 - 16 bit
Color Processor: HuC6260 
Resolution: 256 x 216 
Sound Processor: 8 bit PCM stereo / 6-channel stereo 
Ram: 8 Kbyte (64Kbit) 
Video Ram: 64Kbyte (512 Kbit)
Cart Size: 256Kbit - 20 Megabit Max. (S.F. 2) Normally 8 Mbits 
colors Pallet: 512 - (256 for sprites, 256 for the background.) 
Max # of sprites: 64
Sprite Size: 16 x 16 , 32x64


Links:

Universo PCENGINE - upce.netfirms.com/index.html
Turbo Station 16 - pcenginefx.com/TS/


MESS Emulation State:

Preliminary...  Xevious and Raiden8x work OK.

$end

#---------------------------------------------------------------------------------------------#

$info=pcw16
$bio
Amstrad PCW16


This is a successor to the PCW 8xxx and PCW9xxx series.

It is a re-designed machine, with a 16Mhz Z80 CPU, improved graphics and improved hardware, 
and a nice GUI system.

This system takes advantage of a Super I/O chip, as used in many PCs, which provides PC 
Floppy Disc Controller, Serial and Parallel port hardware. As a result, the system uses 
a PC-AT keyboard and PC Serial Mouse.

The PCW16 has a high-density floppy disc drive which uses the MSDOS filesystem.

The OS comes on a rescue disc and is installed into 2MB flash-file memory. This is also used 
for storing documents, files and user details. The main purpose of this machine, like the original is 
wordprocessing, spreadsheet and other business tasks.

Other programs have been written for it, including a CP/M "shell" by John Elliot 
(www.seasip.demon.co.uk), a route-planner and more. You can run these by selecting 
"Run External Program" from the "Tasks" menu.

This system contains the "Anne" ASIC custom chip designed by Amstrad. Technical 
information is still available and the rescue disc can be downloaded from Cliff Lawsons 
Amstrad computer support site at: http://web.ukonline.co.uk/cliff.lawson/ (the disc is 
listed in the files section). Cliff works at Amstrad plc, and has worked on the many 
projects from the Amstrad CPC to the latest e-mail phone.

MESS Emulation State:

All major functions are working and the computer is useable, however there
are some accuracy problems.


a. SCREEN DISPLAY


The screen emulation does not support mid-frame or mid-line changes.
I don't think any programs do this yet?


b. PRINTER


Not working. The printer emulation assumes a ECP/EPP compatible parallel port
which is not yet emulated. Therefore you cannot print out documents :(

c. HARD DRIVE


Not emulated. Has anyone used a hard-drive on their PCW16? Please let me know
and I will add support for it.

d. ANALOGUE JOYSTICKS

Not emulated. Are there any programs that use the joysticks?


Notes:


To use the PCW16 you will need the OS rescue disc, when this has been inserted,
and the on/off switch has been toggled (see UI for the dipswitch to do this),
then the OS will be installed.
When the OS is installed the computer is now useable and you can write documents
and perform tasks.

The emulation will run the CP/M implementation by John Elliot. It should run
almost all software provided it is in a disc image.

Development has been halted because this computer is in a working state.
I plan to go back to it to fix the remaining problems at a later date when I
have more time and more information.

If you want to see more added to this driver, please contact me and I will
try and fix it.

$end

#---------------------------------------------------------------------------------------------#

$info=pcw8256
$bio
Amstrad PCW8256/8512/9512/9512+/10


These machines were designed primarily for word processing (hence the name
"Personal Computer Word processor"), but are capable of a lot more.

The original PCW8256 system had a green screen monitor, with 2 3" disc
drives mounted vertically in it, a keyboard and a special printer. (The CPU and other 
hardware was also contained in the base of the monitor)

Later models changed the case design, but also allowed the use of any printer that 
was available. (The original 8256 had a proprietary printer and interface).

The hardware is simple, a Z80 running at 4Mhz, slowed to 3.3 with wait states, an Amstrad 
ASIC custom chip for driving the display (2 colours, 720x256 in PAL, 720x200 in NTSC), a 
beep for sound, and a NEC765 floppy disc controller.

The boot-program is contained on the printer chip, and is enabled at power-on or reset. 
The data is passed through a Amstrad custom ASIC chip, and is executed by the Z80. The 
program is simple, and just loads track 0, side 0,sector &01 to &f000 where it is then 
executed at &f010. (The first 16 bytes appear to contain some format parameters which 
are used to initialize CPM). I don't own a PCW machine so I don't know the exact display 
that the PCW shows on boot-up.

AFAIK, no dumps are available for this program. The MESS driver uses a program coded by 
myself. This program waits for a key to be pressed and then starts the boot procedure. If 
an error occurs, the screen will flash 6 times, and then it will repeat the procedure. If 
all is well, you will see some lines appear on the screen, and the boot will continue.

The original computer came with CP/M and Locoscript (a special word processor).

Since it was able to use CP/M there was a lot of public domain and CP/M programs available 
that would run on it.

A few games were written for it, two of these are "Head Over Heels" and "Hitchhikers Guide 
to the Galaxy".

THIS SYSTEM REQUIRES A BOOT DISK TO RUN!

$end

#---------------------------------------------------------------------------------------------#

$info=pdp1
$bio
DEC PDP-1


Currently supports three images: Spacewar! (first computer-based video game),
Munching Squares (minimalistic yet beautiful graphic demo) and LISP (programming
language). I have OCR'ed and assembled the source code of DDT (debugger), but I
am still looking for bugs in this program. No other images are known at the
time of writing: I know there were a text editor (Expensive Typewriter), an
assembler/linker (MACRO), and even a multi-user, multi-tasking operating system
(MIT PDP-1 Timesharing System), but I have no idea where a copy of these
programs could be found (except for macro1, which is should be OCR'ed soon).


This driver emulates a complete pdp-1 system, including:

* operator control panel

* perforated tape reader and punch

* typewriter for keyboard input and printer output

* optional type 30 precision CRT display

* optional type 15 memory expansion control, with 64kwords of RAM (16 type 12 memory modules)

* optional type 10 automatic multiply and divide


The internals of the sequence break (i.e. interrupt) system are implemented,
but no device has been set up to trigger an interrupt.


Usage Notes:


PDP-1 currently supports a perforated tape reader (punchtape unit #1), a perforated tape punch
(punchtape unit #2), and a typewriter (printer unit #1).

The simplest way to load and run software is to insert a read-in mode tape (.rim files) in
the perforated tape reader and press the read-in switch once (press simultaneously the Control
Panel key (Left Control) and the Read In key (main keypad Return)).

Three dip switches (RAM size, Hardware multiply and Hardware divide) enable or disable computer
extensions. These switches are only read at reset. Therefore, if you edit them, you must reset
the emulator (press F3 in partial keyboard emulation mode) for the changes to be taken into
account.

The "RAM size" switch installs and removes type 15 memory expansion control:
it is disabled when set on 4kw, enabled with 15-bit addresses when set on
32kw, and enabled with 16-bit addresses when set on 64kw. All known programs
work well whether memory expansion control is installed or not. Only LISP can
take advantage of the extra RAM.

The "Hardware multiply" and "Hardware divide" switches enable or disable
the automatic multiply/divide extension. When they are enabled, two pdp-1
machine instructions (namely MUS and DIS) are replaced with two other,
incompatible, instructions (MUL and DIV, respectively). Therefore, programs
which use the former variant of these instructions require automatic
multiply/divide to be disabled, whereas programs which use the latter require
it to be enabled. In practice, Spacewar! requires automatic multiply and
divide to be DISABLED (i.e. both switches OFF), whereas LISP requires
automatic multiply and divide to be ENABLED (i.e. both switches ON).


For information on pdp-1 operation, you may have a look at:
<http://www.dbit.com/~greeng3/pdp1/pdp1.html>.


History and Trivia :


In 1957, Kenneth Olsen and Harlan Anderson founded a society called Digital Equipment
Corporation (DEC).


In 1960, they started selling the pdp-1. This was a very interesting computer for its time.


First of all it was cheap and fast for its time: about 100,000 dollars, and a theoretical maximum
of 0.1 MIPS. It included 4 kWords of RAM, expandable to 64 kWord (as word size is 18 bits,
this makes from 9 to 144 kBytes, which is HUGE for this time): this is an important detail, since,
at this time, cheap computers (e.g. IBM 650) often had no RAM, and used a magnetic drum instead,
which implied extremely long memory access times.


What made it even more interesting was that it was designed to be operated interactively.
It featured an on-line typewriter (i.e. keyboard and printer), and a CRT (which was seldom used
as a computer device at this time). You could even buy an optional light-pen (this device was
the closest equivalent to today's mouse). Along with its simplicity, this made the pdp-1 quite
user-friendly for its time.


The pdp-1 may be regarded as one of the first personal computers, since one person was quite
enough to run and operate it (although, needless to say, its price was not the kind of price
you would expect from a personal computer today).


The pdp-1 attracted the attention of various hackers in MIT. This resulted into the creation
of Spacewar!, which was the first computer-based videogame, but this is another story.


The pdp-1 was a reasonably successful machine: 49 units were sold, which was not as bad as it
sounds for this time. DEC intended to sell variants of pdp-1 with a bigger word size
(pdp-3 with 36-bit words, and possibly other variants (pdp-2???) with 24-bit or 30-bit words),
but it eventually did not. However, it later replaced pdp-1 with other models, including the first
minicomputer (the pdp-8 in 1965), and, by the early 1970's, it had become a major computer
manufacturer, second only to IBM.

$end

#---------------------------------------------------------------------------------------------#

$info=pet
$bio
Commodore PET series


History and Trivia:

The name PET, besides being a marketing ploy to imply a user-friendly machine, is an acronym 
for "Personal Electronic Translator".


The Commodore PET 2001 was a great success. Three models were made : the PET 2001-8N with 8 KB 
RAM, PET 2001-16N with 16 KB RAM and the PET 2001-32N. They were conceived by Chuck Peddle who 
later founded Tandon.


The CBM PET 3032 was the successor of the PET 2001-32N (and has the same characteristics as the 
PET 2001-32N), and the predecessor of the CBM 40000 Series.


The disk drives were "Intelligent", which means that they were CPU driven (MOS 6502) and had 
internal RAM (4 KB) & ROM (16KB, which contains the DOS). The 4032 and the 4016 (the version 
of the CBM 4000 with 16 KB of RAM) were sold with a 80 column dot matrix printer (5x8 
character matrix). This printer (4022) was an Epson printer with the Commodore name on it.


The Commodore 8000 series was a "bundle". It was made up of the computer (most often the CBM 
8032, though other models were made), the 5.25" double disk drive CBM 8050 (500 KB, 77 tracks) 
and the bi-directional 132 columns, 160 CPS printer. The 8050 has two 6502's, 4 KB of RAM and 
12 KB of ROM (which contains the DOS). It was sold with Ozz - a Database, and a version of the 
spreadsheet "Visicalc".


$end

#---------------------------------------------------------------------------------------------#

$info=pong
$bio
Pong Games


first done in discrete logic
later pong in a chip by several firms (atari, ge, ...)
late pongs probably signetnics 2650/2636 system in Germany


ay-3-8500-7 6(7) games in this chip
 pelota
 squash
 fussball
 tennis
 schiessen-1
 schiessen-2
 undocumented (when all switches are off)
nothing known about its internal design

ay-3-8610
 Zielschiessen
 Tennis
 Hockey
 Squash
 Squash-Training
 Schiess-Training
 Gridball
 Fussball
 Basketball
 Basketball-Training
nothing known about its internal design

ay-3-8765
 artisten rennen
 gelaende fahren
 motorrad rennen
 geschicklichkeitsspringen
nothing known about its internal design


universum multispiel 2006: ay-3-8500-7, the six official selectable

shg black point (type fs 1003)
 cartridge with ay-3-8610 (fs 1201)
 cartridge with ay-3-8765 (fs 1215)

$end

#---------------------------------------------------------------------------------------------#

$info=prav8d
$bio
Pravetz 8D


The emulation is the same as the Oric Atmos. (I don't know if there are any hardware
differences compared to an original Oric Atmos, if there are please tell me and I will
implement them).


Disk:

The disk drive interface has a boot-rom which loads the DOS from the disc
in the drive. 

The driver supports 2 versions of the disc interface:
- "low dos 8d" has a 256 byte boot rom and supports DOS v1.0 to v1.30 ("Apple 2" on dipswitch)
- "high dos 8d" has a 512 byte boot rom and supports DOS v2.10 and higher. ("Apple 2 v2" on dipswitch)

If you are using the standard prav8d driver you will need to type:

CALL #320

to start the boot procedure.

If you are using prav8dd (with the "BOBY" rom), then the disc is booted
automatically.

The Pravetz 8D uses Apple 2 compatible disk drives only and these
are supported by the driver. 

Here is a brief listing of DOS commands provided by George:

options:
f - FileName (1-30 signs)
d - drive (one or two)
v - volume
a - beginning address
e - end address
l - record length
r - record number
b - number of byte in the record


filetypes:
B - Basic program
C - Bynary file
T - Text file
M - Text file, created with Make command ( batch file:) )

commands:
DIR [1] [2] - not comment
INIT [,Vv] [,Dd] - formatting Disk (in first or second Disk Drive)
DOS [f] [,Dd], [,Vv] - writing Dos on the disk without formatting It. File f automatically starts after booting
MAP [1] [2] - show chart of the disk.
SAVE f [,A,a] [,Ee] [,Vv] [,Dd] - Saves file on the disk. If missing parameter of the addresses A,E - 
saving Basic file in Memory
LOAD f [,Aa] [,Dd] [,Vv] - loads file in memory
MERGE - adding program in Basic to already exists in Memory
- -only for files B or C types. Loads file in Memory and start It. (RUN and BRUN together in Apple ][)
DELETE f [,Dd] [,Vv] - deleting file f
RENAME f1, f2 [,Vv] [,Dd] - renaming last name of the file f1 with f2
* f [,Dd] [,Vv] - lock/unlock file

MAXFILES m - allowing up to m open files
VERIFY f [,Dd] [,Vv] - checks surface integrity of file
EXIT - leaving Dos

OPEN f [,Vv] [,Dd] - open file for read/write
CLOSE [f] - closing f. If there's no f pointed - closes all open files
READ f [,Bb] - points that will be reading of the file with command INPUT
WRITE f [,Bb] - writes in Text file
APPEND f [,Vv] [,Dd] - adding information in Text file. Always there's WRITE after It
POSITION f [,Rr] - allow writing or reading in Text file from r position
in Program mode using of the commands is:

10LPRINT CHR$(2); "MAXFILES 5"

e.g.

To load a program called "MONITOR" type:

LOAD MONITOR

often you will see a load address (it is the first number with # prefix).
Now type CALL #<number> to execute the program.


History and Trivia:

The Pravetz 8D is a Bulgarian clone of the Oric Atmos.
It was produced between 1985 and 1989: Pravetz is both the name of the firm and the name of
the city where the firm is located. The "D" in the name stands for "Domashen" ('home' in
Bulgarian) while the "8" stands for (you've never guess!) '8 bits'.

There was a whole family of Pravetz computer which included the following models:

Pravetz 82, 8M, 8A, 8E, 8C, 8D (8 bits)
Pravetz 16, 16A, 286 (16 bits, PC clones)

Most of 8 bits machines were Apple II compatibles, "8D" being the exception. The "8D" model was
issued in 1985 and cost 420 lev - if you think that the average salary by that time was about
180-200 lev, you can see that it was pretty expensive.

The "82" model was the trade name of a machine called "IMKO-2" and was released in 1981. The "IMKO-2"
was the upgraded version of the "IMKO", designed in 1979 and used for robot control.

The main differences from the Oric Atmos were obviously the keyboard and the floppy interface.

The Pravetz 8D can display both Cyrillic and Latin alphabets - the one currently in use is selected
by the key labelled "C/L" which takes place of the "FUNCT" key present on the Atmos. Other features
of the keyboard are the "ESC" and "CTRL" keys, labeled respectively "OSV" and "MK".

During Pravetz' glory days none of Oric's disk interfaces were imported in Bulgaria, thus the magazine
"Computer for you" organized a competition to develop a disk interface which was compatible with
the most widespread disk drive currently used, namely the Apple II's disk drive.
The competition was won in 1989 by Borislav "Boby" Zahariev, student at MEI University of Sofia.
The first version of the disk interface used top 16Kb of RAM to store the DOS, which prevented
users from loading larger programs. Later Boris developed an upgrade of his interface which
used in conjunction with a new version of the DOS allowed programs to use the whole memory. He provided
also a new version of BIOS which detected the presence of the interface and automatically booted
the DOS from the disk.


Thanks to:

Joro Dramchev, Ventzislav Alexandrov and Todor Arnaudov for Pravetz information,
Fabrice Frances for Oric information.


$end

#---------------------------------------------------------------------------------------------#

$info=raaspec
$bio
RA+A Spectrum I+


Usage:

For the 8-button key mappings, see the user menu under "Keys (This Machine)".

This driver supports the LED backdrop images:

spec_bt.png

led.png


History and Trivia:

The Spectrum I+ was a modified Vectrex. It had a 32K ROM cart and 2K additional battery 
backed RAM (0x8000 - 0x87ff). PB6 was used to signal inserted coins to the VIA. The 
unit was controlled by 8 buttons (2x4 buttons of controller 1 and 2).  Each button had a 
LED which were mapped to 0xa000.  The service mode can be accessed by pressing button 8 
during startup.  As soon as all LEDs light up, press 2 and 3 without releasing 8. Then 
release 8 and after that 2 and 3. You can leave the screen where you enter ads by 
pressing 8 several times.


$end

#---------------------------------------------------------------------------------------------#

$info=saturn
$bio
Sega Saturn (1994)



In 1994 Sega launched its new 32-bit console, just a few weeks ahead of its rival Sony Playstation.
The Playstation was much easier to develop for and quickly overtook the Saturn in sales.  While 
the Saturn was much more successful in Japan than it was in the US or Europe the lack of good 
software and strong competition from the PlayStation doomed the Sega Saturn to a fate similar 
to that of the Master System.  The CDROM based system did have some great arcade conversions such
as House of The Dead and Virtua Fighter 3.  Despite being the first consoles with Internet 
capabilities (via the NetLink adapter), Sega was relatively quiet after the slow demise of the 
Saturn.  Sega turns its focus to the 128-bit Dreamcast a few years later.


Features:

CPU: Two Hitachi SH2 7604 32 Bit RISC chips at ~27 MHz (36 MIPS)
Sound CPU: Motorola 68EC000 at 11.3 MHz
Sound: 32 Channels, with 16 bit sampling at a sampling rate of 44.1 KHz max.
Resolution: 704 x 512 (horz) 60.00 Hz 
Colors: 32768 (static)
Main Memory: 1 Megabyte of SDRAM and 1 Megabyte of DRAM
Internal Memory Card 
Video Hardware: Two VDP (video display processors) chip sets (VRAM: 512Kb each)
-VDP1 Draw Sprites, lines, warped sprites (quads)
-VDP2 controls background graphics.


CDROM: Max 2x speed - custom interface controlled by Hitachi SH1 processor. (512 Kb Buffer RAM)


MESS Emulation State:

See source code for more information.

Bios starts requesting pad data so maybe we are now in the time set area ????
Need to emulate pad system, add more interrupts and get some grafix working so we can see exactly 
where we are at this current time.  Currently locks up waiting on (i guess) a response from the 68k
CPU. Probably need to emulate this shortly.

$end

#---------------------------------------------------------------------------------------------#

$info=sfzch
$bio
Capcom CPS Changer


History and Trivia:

Perhaps inspired by SNK's Neo-Geo, Capcom released the Capcom Power System Changer (CPS in 
this case NOT referring to Capcom Play System) in 1994, as an attempt to sell their arcade 
games in console format.  The console basically served as an encased SuperGun (Television 
JAMMA adapter) but was wired up so coin inputs could not be added by hackers, and only the
special CPS Changer cartridge boards would work. The CPS Changer had outputs for Composite
video, S-Video and 8 channel mono audio. It's joystick (named the "CPS Fighter") had the
same connection as the Super Famicom, and was even marketed separately for that console.


The games came as PCBs in plastic casing, and were virtually identical to their CPS-1 arcade
counterparts, though they often contained extra debugging features.  The CPS Changer was
sold as a package deal of the console itself, one CPS Fighter controller, and the Street
Fighter II Turbo game for 39,800 yen. Additional games were sold for about 20,000 yen.


The CPS Changer sold poorly though, and support was dropped in March 1996 after releasing 
the console's only unique (as in non-CPS1) title: Street Fighter Zero, for 35,000 yen.
Street Fighter Zero was a downscaled version of the CPS2 arcade version from the year prior.
It ran somewhat choppier, had a reduced colour depth, and the sounds were at a lower sample
rate.


Ten other games were released for the CPS Changer, though none have been dumped at present
(to the best of my knowledge). If/when these are dumped, support will be added for them: 

Captain Commando (1995)

Final Fight  (1994)

The King of Dragons (1995)

Knights of the Round (1995)

Muscle Bomber:The Body Explosion (1994)

Muscle Bomber Duo: Burn Up Warriors (1995)

Quiz Capcom World 2 (1994)

Street Fighter II' Champion Edition (1994)

Street Fighter II Turbo (1994, Pack-in)

Tenchi O Kurau II (1995)


$end

#---------------------------------------------------------------------------------------------#

$info=sms
$bio
Sega Master System (1987)


The Master System (called Mark III in Japan) was Sega´s competitor for the NES. Though Sega 
constantly developed new (and good) games, the Master System never beat the NES. The MS was 
most successful in Europe, especially Great Britain, where most of the games were developed in
the "final" days in 1993/94. Overall, about 6 million consoles were sold world-wide until the 
end of 1994. (note taken from www.eidolons-inn.de)


Features:

CPU: Z80 at 4 MHz
Custom video controller (VDP) derived from the TI chip TMS9918/9928
Resolution: 256x192 tile-based screen in 16 colors
Sprites: 64 at 8x8, 8x16 or 16x16
Color Pallette: 64; 32 max on screen (16 for sprites, 16 for background)
Scrolling: Hardware up/down/left/right - all or part of screen.
Sound chip: Generic SN76489 sound chip (PSG) made by Texas Instruments
Sound output: 3 square-wave sound and white noise/periodic noise channel
Music: Yamaha YM2413 FM sound chip


Links:

EIdolons inn - www.eidolons-inn.de


MESS Emulation State:

This driver runs just about everything!


$end

#---------------------------------------------------------------------------------------------#

$info=snes
$bio
Super Nintendo Entertainment System (1989)


Nintendo released the cartridge based 16-bit Super Nintendo to compete with the already released 
Sega Genesis and NEC's TurboGraphix 16 (PCEngine in Japan). The Super Nintendo features true 
stereo sound, multiple scrolling backgrounds and increased internal memory. It was a very popular
system because people could play continuations of their favorite NES game. The Legend of Zelda: 
A Link To The Past, The Donkey Kong Country Series, The Final Fantasy Series and Super Mario Kart
were a few of the top titles for the SNES. In 1997 Nintendo redesigned the case, but never 
included a CD-ROM expansion.


Features:

CPU: Custom 16-bit - 65C816 at 3.58 MHz (Machine adjustable to 3.58, 2.68, and 1.79 Mhz)
Co-processor: None (DSP and SuperFX were inside the cartridge of selected games )
RAM: (?)
Video RAM: (?)

Color Palette: 32,768; 256 max on screen
Maximum Screen Resolution: 512 x 448 pixels
Max # of sprites: 128, 32 per scanline
Max and Min Sprite Size: 64 x 64 pixels; 8 x 8 pixels
Scrolling: Horizontal, Vertical, Diagonal

Sound channels: 8 ADPCM with 64 Kb Ram
Sound Processor: Sony SPC700 ("wavetable-like" music, near 16-bit sound quality playback(CD) & Q-Sound surround sound.)

Cart Size: 4Mbit - 128 Megabit Max. (Tengay Maikio at 70+ Megabits is the largest game)
Controller: 8-way direction pad with Select, Start, A, B, X, Y and 2 Flipper buttons labeled R and L
Controller Response: 16ms


Links:

Nintendo - www.nintendo.com


MESS Emulation State:

This driver is preliminary and most images will not work. Super Mario World (US version) is playable.

$end

#---------------------------------------------------------------------------------------------#

$info=sordm5
$bio
Sord M5


This computer used cartridges. You can insert game cartridges, or if you want
to use basic, you can insert one of 3 basic cartridges:
"BASIC-I" a integer based basic, "BASIC-G" a basic for graphics, "BASIC-F" a basic
for floating point operations.


Cartridges:

The Sord must have a cartridge to start up.
- some cartridges may not work

Cassette:

The cassette emulation uses .WAV sample files.

saving:
save"cmt:<filename>" where <filename> is the name of the file. 

loading:
old"cmt:" will load the next file on the cassette.
chan"cmt:" and run"cmt:" can also be used to load and run the next file on the cassette.

History and Trivia:

The Sord M5 is similar in design to the MSX but not compatible with it.
(It has the same CPU (Z80), a Z80 CTC timer chip and the same video chip, but 
a different sound chip and the I/O port assignments are not the same).

In fact some MSX games have been converted to the Sord by enthusiasts.

Known Issues:
- no memory expansion supported
- loading from cassette does not work

$end

#---------------------------------------------------------------------------------------------#

$info=spec128
$bio
ZX Spectrum 128


Usage Notes:

A HTML version of the Spectrum 128 manual (converted by Damien Burke, with the approval of 
the copyright holder Amstrad) is available at:

http://www.jetman.dircon.co.uk/speccy/128manua/index.html


$end

#---------------------------------------------------------------------------------------------#

$info=specpls4
$bio
Amstrad Spectrum +4 Rom


The plus4.rom is copyright (c)1982-2000 Amstrad plc
and is distributed with their kind permission.

I would like to thank Cliff Lawson and Amstrad for making this
project possible, Phillip Kendall for the Spectrum ROM page, Ian
Collier for documenting the changes he made to the ROM and giving me
additional advice, Dr Ian Logan and Dr Frank O'Hara for the invaluable
Complete Spectrum ROM Disassembly, and whoever it was that sold the
book to me and contributors to comp.sys.sinclair for keeping me
constantly amused and informed.

-Andrew Owen, 24-2-2000


Introducing the Spectrum +4.

Remember when Apple promised its customers a whole new computer for
$99. What they meant was they hoped their new operating system would
change the experience of their users so profoundly it would make them
feel as if they had a new machine. Well now you can have a whole new
Spectrum for FREE!


What is the idea behind this?

I've taken the original 48K machine as my starting point and tweaked
it until the point where I don't think there is any further room for
improvement without adding extra hardware. Now if someone wants to
build a new machine at least they have a place to start.


How compatible is it?

The Spectrum +4 ROM is very similar to the one in the 48 and so it
should be 90% compatible or better with machine code. BASIC programs
may require minor modifications but should then run without problems.


What are the changes?

There are so many changes that it is impossible to summarize them all.
Only the important changes have been detailed with the exception of
the new NMI routine which is self explanatory.


THE KEYBOARD

The keyboard layout has been completely redesigned, based on the
standard international English keyboard, to make it quicker to use and
easier to remember which keys are where. This is made possible by
replacing the keyword entry system.

All the SHIFT functions on the number keys are retained, as are the
EXTEND and SHIFT-EXTEND attribute functions. But that is where the
similarity to the old keyboard ends.

All but a few symbols are accessed by holding down SYMBOL shift and
the relevant key, while the remainder are accessed using EXTEND mode.
Pressing either SHIFT or SYMBOL shift in EXTEND mode will give the
same result as if SYMBOL shift alone had been pressed. In addition to
the characters shown below, the 16 pre-defined graphics characters are
accessible using SYMBOL shift or EXTEND mode and keys Q-R and A-F.

 ---------------------------------------
| ! | @ | £ | $ | % | ^ | & | * | ( | ) |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |
 ----------------------------------------
 |   |   |   |   |   |   | { | } | : | " |
 |   |   |   |   |   |   | [ | ] | ; | ' |
 | Q | W | E | R | T | Y | U | I | O | P |
  ---------------------------------------
   |   |   |   |   |   |   | | | _ | + |
   |   |   |   |   |(c)|   | \ | - | = |
   | A | S | D | F | G | H | J | K | L |
    -----------------------------------
     | ~ |   |   |   | ? | < | > |
     | # |   |   |   | / | , | . |
     | Z | X | C | V | B | N | M |
      ---------------------------

SYMBOL = Lower symbols
EXTEND = Upper symbols and attributes on number keys
SHIFT  = Upper case letters and functions on number keys


BASIC EDITOR

The most noticeable change is that all commands must be typed in full.
Instructions are converted into tokens automatically when you press
ENTER. It is also possible to use the cursors to move up and down
while editing a line. Instructions can be entered in both capital and
lower letters. No space is required between commands such as DEF FN or
after a command unless the argument begins with a letter.


BASIC COMMANDS

CAT, when entered without parameters, calls up the built-in monitor.

The PLOT, DRAW and CIRCLE commands have been modified to use the whole
screen.

ERASE "i" erases extra Interface 1 variables, extended channels and
such without affecting the BASIC program in memory.

The GO SUB, GO TO and CONTINUE commands have been replaced by GOSUB,
GOTO, and CONT, to replicate other BASIC interpreters.

MOVE can be used to shift data around in memory. For example, the
command MOVE "r0,6144","r16384" would copy the first 6144 bytes of ROM
to the screen area of memory.

The COPY command has been replaced by the FREE command which reports
the amount of free memory below RAMTOP.


THE MONITOR PROGRAM

The Spectrum +4 features a built-in monitor which can be accessed with
the CAT command or holding down SYMBOL shift, SPACE and B while
interrupts are enabled. The following commands are then available:

B             Return to BASIC (if possible)

D<hex_num>    Displays entered hex number in decimal notation

G<hex_addr>   Execute a subroutine at address G
              (RET will return to the monitor).

H<dec_num>    Displays entered decimal number in hex notation

M<hex_addr>   Hex and ASCII dump from given address
              (SPACE to exit).

R             View and/or change registers
              AF, BC, DE, HL, IX and SP.

S<hex_addr>   Patch memory from given address using hex editor
              (SPACE to exit editor).


BUG FIXES

Every effort has been made to fix all the bugs mentioned in The
Complete Spectrum Rom Disassembly and a few others besides as follows:

Fixed a bug the CLOSE # bug. eg CLOSE #4

Fixed the forwardspace (CHR$ 9) bug. e.g. PRINT "A";CHR$ 9;"B"

Fixed the backspace (CHR$ 8) bug. e.g. PRINT AT 0,0;CHR$ 8;"A"

Fixed the STR$ bug. e.g. PRINT "BUG"+STR$ 0.5

Fixed the division bug. e.g. IF 1/2<>0. 5 THEN PRINT "BUG"

Fixed the -65536 bug. e.g. PRINT INT -65536

Fixed the SCREEN$ bug. e.g. IF "X"=SCREEN$ (0,0) THEN PRINT "BUG"

Fixed the "scroll?" bug. Try pressing True Video at the request.

Fixed the syntax check error.

Fixed the double store bug at 257Dh.

Resolved the K-MODE bug. There is no 'K' mode.

Resolved printer buffer error. There is no COPY command.

Resolved the NMI bug. There is a different routine.

Fixed the 'lock up if interrupts are disabled on error report' bug


LEGAL NOTICE FOR THE CURIOUS

Just to make sure it was 100% okay to do this I wrote to Amstrad's
Cliff Lawson on 23/02/00. Here's what followed.

ME: I know it's okay in principle to distribute modified Spectrum
    ROMs as long as the copyright message is unchanged. However,
    I've just finished a very major overhaul of the ROM and would
    like to use an alternative message.

CL: Well you can't really associate a name such as "+4" with
    "Amstrad Consumer Electronics" because it makes it look as if
    it's an "official" development.

ME: Would this be acceptable?

      AMSTRAD CONSUMER ELECTRONICS PLC
       (C)1982-2000 unofficial +4 48K

CL: Yup, sounds OK but you do realize that the company was only
    called "Amstrad Consumer Electronics" for a few years in the
    early..mid 80's then the company name was shortened to
    "Amstrad plc" so it's a bit "out of date" to use it but I
    guess that probably describes the "Spectrum" too! :-)

ME: Mind if I quote you in the "readme" just so no one accuses me
    of violating copyrights?

CL: No problem.

 Visit the Amstrad website at http://www.amstrad.com

                   Amstrad plc. Registered in England No. 955321
Registered Office: Brentwood House, 169 Kings Road, Brentwood,
                   Essex CM14 4EF, England


$end

#---------------------------------------------------------------------------------------------#

$info=spectrum
$bio
Sinclair ZX Spectrum (and clones)


Usage Notes (TK90X/TK95):

TK90X/TK95 add two commands to the Sinclair BASIC: TRACE 1/0 (E cursor, Symbol Shift+P) 
turns on/off the display of the line currently executed. UDG 0/1/2 (K/L/C cursor, 
Symbol Shift+X) controls the behavior of the (guess what?) UDGs: when the parameter is 0/1 
they restore their shape to accented letters used in the Portuguese language (still haven't 
discovered the difference between 0 and 1) while the UDG 2 command activate the built-in 
character editor: you can use the keys 5,6,7,8 +CAPS or Symbol Shift to plot/move the 
cursor, the A-U keys to select the UDG to edit or copy (with the shift keys), INVERSE 
VIDEO key to reverse the character. Maybe there are yet more command-keys, but I haven't 
discovered them yet. Curiously, the BEEP command has been renamed to SOUND: who knows why... 
[JoJo Priore]


Known Issues:

Requires full keyboard emulation. At startup, full keyboard emulation mode is enabled by 
default.  Whilst in full keyboard emulation mode, some key associated functionality may be 
disabled (like the ESC key for EXIT). The keyboard emulation mode is toggled using the 
scroll_lock key.   

$end

#---------------------------------------------------------------------------------------------#

$info=srdm5fd5
$bio
Sord M5 with PI-5 parallel interface and FD-5 disc interface


This computer used cartridges. You can insert game cartridges, or if you want
to use basic, you can insert one of 3 basic cartridges:
"BASIC-I" a integer based basic, "BASIC-G" a basic for graphics, "BASIC-F" a basic
for floating point operations.

To use the disc interface, use the floating point basic "BASIC-F". This has support
for the disc interface built-in.

This driver consists of:
- a Sord M5 computer
- a Sord FD-5 disc interface
- a Sord PI-5 parallel interface

The Sord M5 computer communicates with the FD-5 through the parallel interface.

The parallel interface has:
- a Intel 8255 parallel peripheral interface chip
Communication with the FD-5 is done using mode-2 operation. i.e. port A is
a bi-directional 8-bit port, port C upper is a control port.

The floppy disc interface:
- Z80
- 16k ROM
- RAM
- NEC765 compatible disc controller
- internally the disc interface uses interrupts to transfer data into it's own
ram.

The floppy disc drives are 3" and are believed to use 40 track, double density, double sided discs,
giving 360K per disc.

The M5 sends 3 character commands, with parameters to the disc interface using the following
command:

fx 0,<command>

<command> can be:

TDA
TRA
WBI
RBI
WTX
RTX
WBL
RBL
WMM
RMM
EXC
SDR
WDR
RDR
RDC
OPN
CLS
CHN
MAP
SAP
CAP
ATR
NAM
DEL
FMT	- Format disc
CPY
GEN
VPR
RVI
IDV
FNM
RDB
WDB
WHO
DOM

Known issues:
- See sordm5 description


$end

#---------------------------------------------------------------------------------------------#

$info=ssystem3
$bio
Super System III/MK III


early chess computer

sold in Germany as MK III


Features:

LCD display with 4 digits and several symbols
integrated speaker
connection for external power supply
connection for printer
connection for board display


MESS Emulation State:

not working
low priority for me because it uses features not implemented in via6522 emulation
(pin b6 timer counting!)


$end

#---------------------------------------------------------------------------------------------#

$info=studio2
$bio
RCA Studio II


early console for TV connection

sold from several firms under different names


Features:

mono display of 64x128
integrated speaker
Controls for 2 Player2
Cartridge port


Notes:

build in rom expects selection of game
without printing something to screen! (keys 1 to 5)


2 Keypads: Player 1 left, Player 2 right

Keypads have following Layout
 1 2 3
 4 5 6
 7 8 9
   0


The console has 5 Built in programs. Without a cartridge inserted, the screen stays black 
after turning on. Player 1 selects game.

1 Paint? not working now
2 Not sure what game 2 is; it's not working currently
3 Bowling, working
4 Rally, not working now
5 Math (calculate the sum of the 3 digits, and enter it), working


Emulators:

Paul Robson's stem for DOS at www.classicgaming.com/studio2


Mess Emulation State:

no support for st2 cartridges


$end

#---------------------------------------------------------------------------------------------#

$info=svi318
$bio
Spectravideo SVI-318 (1983)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=svision
$bio
Watara Supervision


non-color handheld

sold from several firms under different names
Quickshot Supervision
Hartung SV-100
...

There are several designs, but all have the same functionality.
*(knickable screen)
*GB2000 (game boy style, no comm port)


Features:

160x160 in 4 greys LCD display
4? stereo voices (integrated mono speaker, port for stereo speaker)
Controls for 1 Player
Serial port
Cartridge port
Batterie port
Connector for external power supply


Optional features:

tv adapter


Notes:

Cartridge must be in for operation
Pinout of cartridge is in mess/messroms/svision.txt


MESS Emulation State:

very preliminary support
preliminary sound support
no serial port
no tv adapter support
work stopped until more cartridges are available


$end

#---------------------------------------------------------------------------------------------#

$info=sym1
$bio
Synertek SYM-1/SY-VIM1


very early computer


Features:

6 digit 7segment display
connector for tty input/output
tape interface


MESS Emulation State:

display, keyboard working
Work on it stopped. For me it is much to cryptic to operate and therefore not interesting
for me anymore.


$end

#---------------------------------------------------------------------------------------------#

$info=t1000hx
$bio
Tandy 1000HX


IBM PC Junior compatible


Features:

basically the same features as ibmpcjr
setup memory
integrated serial port
integrated parallel port
integrated game port with unique connectors (but software compatible with ibm joysticks)
integrated 3 1/2 inch 720 kb disk drive
connector for external disk drive
support for msdos with multilanguage support in rom


Keyboard notes:

The Tandy 1000 series computers have 12 function keys (analogous to modern PC keyboards) 
whose functions depend on the program you are running. 
Some function keys have special functions during boot up, if you press them right after the 
startup "beep", while MS-DOS loads:
* F1 = Switches the computer into monochrome video mode.
* F2 = Switches the computer into composite/TV video mode (40 Column/200 scanline mode). 
This can also be achieved by issuing a MODE command from DOS.
* F3 = Reverses the drive references so B: becomes the primary drive, 
and A: becomes the secondary drive, this lets you start the
computer from the B Drive.
* F4 = Starts the computer in slow (4 mhz) mode. 
This is useful if a program runs too fast or not at all in normal (8 mhz) mode.


Notes:

get the setup utility for msdos at tandy's web side 
to change setup


MESS Emulation State:

basically the same as ibmpcjr
special setup memory emulated
work stopped until dump of character rom available


$end

#---------------------------------------------------------------------------------------------#

$info=telstrat
$bio
Oric Telestrat


This system is a update to the Atmos.

Known Issues:

- disc emulation is not correct so it fails to boot! 


$end

#---------------------------------------------------------------------------------------------#

$info=ti74
$bio
Texas Instruments TI74 Basicalc


Pocket Computer

TI74S is a variant
TI95 Procalc seams to be related
Compact Computer CC40 seams to be related


Features:

31 5x7 character LCD display
32+4kb rom
8 kb ram
ram/rom memory expansion port
hexbus port
place for 4 micro batteries


Peripherals:

Texas Instruments PC-324 thermo? printer
(how to dump the C70016 integrated rom? (tms7000 family))
24 characters per line
hexbus port
place for 4 mignon batteries
port for power supply



$end

#---------------------------------------------------------------------------------------------#

$info=ti81
$bio
Texas Instruments TI-81 (1990)


The TI-81, TI's first graphing calculator, was designed for algebra and
precalculus. It has since been replaced by newer models which have faster
processors, more memory, and popular features such as linking capability and
flash upgradability. The TI-81 drew little in the way of third-party games and
other programs, since the code must be typed into the calculator by hand. 
(note taken from www.ticalc.org)


Features:

CPU: Z80 2 MHz
Memory: RAM 32kB(?), ROM 128kB
Screen: 96x64 pixels, 16x8 characters
Known ROM versions: 1.1, 1.8, 2.0


Emulator:

Texas Instruments TI-81 simulator (http://www.ti.com)

Links:

Texas Instruments Homepage
http://www.ti.com
ticalc.org
http://www.ticalc.org
TI-Files
http://www.ti-files.org


MESS Emulation State:

driver for rom versions:  1.8
grayscale effects emulated
200Hz(?) timer and ON key interrupts emulated
there are bugs in port 3 emulation (ON/OFF)

Notes:

1. After start TI-81 waits for ON key interrupt, so press ON key to start
   calculator.
2. Video engine (with grayscale support) based on the idea found in VTI source
   emulator written by Rusty Wagner.

To do:

- port 3 and 4
- nvram
- better artworks
- drivers for other rom versions

Needed:

1. Any hardware info.
2. High quality artwork.
3. Dumps of other rom versions.


$end

#---------------------------------------------------------------------------------------------#

$info=ti85
$bio
Texas Instruments TI-85 (1992)


The TI-85 was designed as a powerful engineering and calculus calculator.
It was the first TI calculator to have a link port and assembly programming
capability (through an unintentional loophole). It has since been eclipsed by
the TI-86, which features TI-85 compatibility along with more advanced features.
(note taken from www.ticalc.org)


Features:

CPU: Z80 6 MHz
Memory: RAM 32kB, ROM 128kB
Screen: 128x64 pixels, 21x8 characters
Known ROM versions: 1.0, 2.0, 3.0A, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0
Link port


Emulator:

TI-85 Emulator by David Ellsworth and others (ftp://users.aol.com/davidells/TI-Calc/)
TI86EMU by Steve Gordon (http://www.dogtech.com/cybop/ti86)
TI-8X emulator by Randy Gluvna (http://ti8xemu.home.ml.org)
TIGraph by Rene Doss & Joerg Sander
Virtual TI by Rusty Wagner (http://vti.acz.org)


Links:

Texas Instruments Homepage
http://www.ti.com
ticalc.org
http://www.ticalc.org
TI-Files
http://www.ti-files.org


MESS Emulation State:

drivers for rom versions:  3.0A, 4.0, 5.0, 6.0, 8.0, 9.0, 10.0
sound emulated (speaker connected to link port)
link port emulated
grayscale effects emulated
nvram emulated
200Hz timer and ON key interrupts emulated
snapshot loading (Virtual TI 2.0 save state files)


Notes:

1. After start TI-85 waits for ON key interrupt, so press ON key to start
   calculator.
2. Video engine (with grayscale support) based on the idea found in VTI source
   emulator written by Rusty Wagner.
3. NVRAM is saved properly only when calculator is turned off during MESS
   exiting.
4. To receive data from TI press "R" immediately after TI starts to send data.
5. To send data to calculator start receiving on TI and choose file from
   Built-in File Manager.
6. To request screen dump from calculator press "S".


To do:

- port 3 and 4
- better artworks
- drivers for rom versions: 1.0, 2.0, 7.0


Needed:

1. Info about ports 3 (bit 2 seems to be always 0) and 4.
2. High quality artwork.
3. Dumps of rom versions: 1.0, 2.0, 7.0


$end

#---------------------------------------------------------------------------------------------#

$info=ti86
$bio
Texas Instruments TI-86 (1997)


Just as the TI-83 succeeded the TI-82, the TI-86 followed up on the TI-85's
advanced functionality while adding a stylish new case, assembly support
similar to that of the TI-83, and greater memory capacity, while still
maintaining compatibility with TI-85 programs. 
(note taken from www.ticalc.org)


Features:

CPU: Z80 6 MHz
Memory: RAM 128kB, ROM 256kB
Screen: 128x64 pixels, 21x8 characters
Known ROM versions: 1.2, 1.3, 1.4, 1.5, 1.6
Link port


Emulator:

Emulator86 by Kirk Meyer
TI86EMU by Steve Gordon (http://www.dogtech.com/cybop/ti86)
TI-8X emulator by Randy Gluvna (http://ti8xemu.home.ml.org)
Virtual 86 by Daniel Foesch (http://www.geocities.com/Area51/Station/7142/?startpage=v86.html)
Virtual TI by Rusty Wagner (http://vti.acz.org)


Links:

Texas Instruments Homepage
http://www.ti.com
ticalc.org
http://www.ticalc.org
TI-Files
http://www.ti-files.org


MESS Emulation State:

drivers for rom versions: 1.3, 1.4, 1.5, 1.6
driver for ti86grom (homebrew rom by Daniel Foesch)
sound emulated (speaker connected to link port)
link port preliminary emulation
grayscale effects emulated
nvram emulated
200Hz timer and ON key interrupts emulated
snapshot loading (Virtual TI 2.0 save state files)


Notes:

1. After start TI-86 waits for ON key interrupt, so press ON key to start
   calculator.
2. Video engine (with grayscale support) based on the idea found in VTI source
   emulator written by Rusty Wagner.
3. NVRAM is saved properly only when calculator is turned off during MESS exiting.
4. To receive data from TI press "R" immediately after TI starts to send data.
5. To send data to calculator start receiving on TI and choose file from
   Built-in File Manager.
6. Homebrew rom by Daniel Foesch does nothing but showing charset.


To do:

- many corrections of existing code
- port 3 and 4
- better artworks
- driver for rom version 1.2


Needed:

1. Info about ports 3 (bit 2 seems to be always 0) and 4.
2. High quality artwork.
3. Dumps of rom version 1.2


$end

#---------------------------------------------------------------------------------------------#

#$info=ti99_2
#$bio
#Texas Instruments TI-99/2 BASIC Computer


#Known Issues:

#This TI99/2 driver is preliminary and could not be tested. (It may work,
#it may not work.) It is commented out in the source code distribution.


#History and Trivia:

#The TI99/2 BASIC Computer was an attempt at producing a cheap ($100)
#computer.  TI started designing it in the summer of 1982, it was first
#introduced in January 1983, and it was abandoned, before entering
#production, by April 1983.

#It featured a TMS9995 microprocessor (with on-line timer and 256-byte RAM),
#4kb of RAM, 24kb (or 32kb) of ROM, a B&W character-based display.  There
#was no sound generator.  It was mostly incompatible with TI99/4(a), but
#it used the same Basic syntax and file format.

#The computer was obviously unattractive. On the other hand, it would have
#been cheap, fairly fast for its time, and easy to program in both BASIC and
#assembly.

#Moreover, the expansion port of TI99/2 carried every bus signal, and even
#allowed to disable the system ROMs and use one's own ROMs instead, so this
#computer could have been a hobbyist's dream.


#Wanted (dead or alive):
#If you have an actual TI99/2 or TI99/2 ROM image at hand, please mail me at
#pytheas@club-internet.fr

#$end

#---------------------------------------------------------------------------------------------#

$info=ti99_4
$bio
Texas Instruments TI-99/4 Home Computer


Known Issues:

Requires full keyboard emulation.  At startup, full keyboard emulation mode is
enabled by default.  Whilst in full keyboard emulation mode, some key
associated functionality may be disabled (like the ESC key for EXIT).
The keyboard emulation mode is toggled using the scroll_lock key.

A TI99/4 is not a TI99/4a.  Most programs are compatible with both /4 and /4a,
but some programs require a /4a.

The BwG disk controller has display bug which causes it to change the character
definitions for no appearent reason, but, out of this, it seems to work fine.
If this is an issue, you may revert to the TI disk controller.


Usage:

See sysinfo for the ti99/4a driver.


History and Trivia:

The TI99/4 Home Computer was designed and built by Texas Instruments.  About
200 prototypes were built in 1978, it was first shown in June 1979, and TI
started shipping it in October 1979.  It was replaced with TI99/4a in the
summer of 1981.  It was first sold in US, then was available in Europe in
early 1981.

This computer was easy to use.  It displayed nice color graphics, and
played sound.  It was highly expandable, too.  One expansion enabled the
computer to speak.  Programs were generally on cartridges.  TI, which always
tried to keep the control of program production, put an emphasis on games,
education, and home utilities (home finance, etc.).  Incidentally, it was
the first 16-bit home computer.

The general architecture was odd.  The computer had only 256 bytes of CPU
RAM, the remaining 16kb of RAM were attached to the video processor.  It
had been designed to use some slow "GROM" cartridges, written in an
interpreted language, "GPL".

Due to these poor designing and programming choices, the computer was slow.
The keyboard was uneasy to use, and there was serious bugs in ROMs.  Also,
it wasn't until November 1980 that TI could build a TV modulator to attach
the computer to a TV instead of a monitor.  Worse, the computer was awfully
expensive for a home computer (more than $1000 with the monitor, more than
$500 with the modulator).  Unsurprisingly, it is estimated that only a few
dozen thousand units were sold.

The design of TI99/4 caused many headaches to TI engineers.  It was first
designed as a console, then an inexpensive home computer (which explains
its slowness and kludgy design), then a hybrid (with remote I/R joysticks
and keypads - which were abandoned at the last minute - and a cartridge
port).  It was intended to use a TI-designed microcontroller, tms9985, but the
processor was never actually produced, so engineers had to use a
software-compatible, high-end (in 1979) tms9900 with tons of glue logic.
Note that the processor software design was remarkably weird (no stack, no
on-chip data register).

$end

#---------------------------------------------------------------------------------------------#

$info=ti99_4a
$bio
Texas Instruments TI-99/4a Home Computer


Known Issues:

Requires full keyboard emulation.  At startup, full keyboard emulation mode is
enabled by default.  Whilst in full keyboard emulation mode, some key
associated functionality may be disabled (like the ESC key for EXIT).
The keyboard emulation mode is toggled using the scroll_lock key.


Usage:

This TI99/4a driver offers a high level of compatibility.  It currently
supports V9t9-format cartridge images, sampled tapes in wave format
(CS1 and CS2), and up to 3 SSSD or DSDD disk images.  Speech synthesis should
now emulated completely.  Both TI and BwG disk controllers are supported.
TI, Super AMS and Foundation memory expansion cards are supported.  Serial port
and PIO emulation is incomplete, but it enables you to redirect PIO output to a
file and save listings to this file by "printing" them to PIO.

Loading a cartridge:

You do not need a cartridge image to run the computer, since TI99/4a has
a small built-in basic interpreter.

V9t9-format cart images are typically split into up to 3 files.  You MUST load
all individual files.  Loading a single zip archive containing all the
cartridge files will NOT work, you must uncompress the archive and select every
file instead.  These files can be loaded in any order, as long as all necessary
files are loaded.

Setting up the system configuration:

A few dip switches enable or disable computer extensions. These switches are
only read at reset. Therefore, if you edit them, you must reset the emulator
(press F3 in partial keyboard emulation mode) for the changes to be taken
into account.


History and Trivia:

The TI99/4a Home Computer was a TI99/4 with improved keyboard, revised
ROMs, and an additional graphics mode.  It was officially introduced in
June 1981, and was retired in late 1983.

TI99/4a was quite successful in Europe and US (possibly hundreds of
thousand units built).  In 1983, though, competition on the home computer
market was so harsh that TI had to cut down the price of TI99/4a to less
than $100, while suffering heavy losses.  So, by the end of 1983, TI had
abandoned TI99/4a, its prototype successors, and withdrawn from the home
computer market.

$end

#---------------------------------------------------------------------------------------------#

$info=ti99_4ev
$bio
Texas Instruments TI-99/4a Home Computer with SNUG EVPC video card


See the TI99/4a driver for non-EVPC information.


Known Issues:

EVPC emulation is not complete.  The palette chip is not emulated.
Also, TI BASIC will not run under this driver, though it might be normal
(I know there are some bugs in the TI's system ROMs which prevent them
from running with a v9938).


History and Trivia:

A common hack on the ti99/4a is replacing the old tms9918/9928/9929a with
a higher-end, upward-compatible v9938. This enhanced vdp supports true 16-
and 256-color graphic modes, high-res 512*192 graphic and 80-column text
modes, accelerated 2D graphics, etc. The only drawback is that some programs
(including TI's system ROMs) will not run with the v9938.

The EVPC card does just that: it includes a v9938 with 128kb of VRAM, 64kb of
extended RAM, an additional palette chip to program the palette in 256-color
mode, and a DSR ROM with various useful subroutines.


$end

#---------------------------------------------------------------------------------------------#

$info=ti990_10
$bio
Texas Instruments Model 990/10 Minicomputer System


Known Issues:

The controller panel is not emulated yet.

The computer seems to lock when running various installation scripts, and
rebuilding the system.


Usage:

This driver emulates a TI990/10 CPU with mapping option, 1Mbyte of RAM,
a generic disk controller at TILINE base >1ff800, a generic tape controller
at TILINE base >1ff880, and a 911 VDT at CRU base >0100.

This is enough to build DX10 or DNOS. I have been able to build a working DX10
3.7 or 3.6 system from the relevant build and backup tapes. (Tape loaded as
tape unit #1 and a blank disk image as disk unit #1 (with the SCOSTA flag
at offset >A4 set to >0002, so that the build tape does not try to format the
disk)). I have even managed to install the fun and games tape, and play pacman.


History and Trivia:

Texas Instruments has been building minicomputers since the late 1960s through
the 1980s.

Around the summer of 1973, they started to design the TI990 as a successor to
the 960 and 980 computers they were building at the time. In 1974, TI started
to build the prototype of the TI990 series, the TI990/9.

In 1975, they released the first commercial system, the TI990/10. It was
a minicomputer built with TTL logic. Although it was a 16-bit CPU,
it supported an optional mapper to expand address space from 64kbytes
to 2Mbytes.

The TI990 series development continued. In 1975 or 1976, TI started shipping
the TMS9900 microprocessor, which implemented a subset of the TI990/10 feature
set. Two CPU boards were built around the TMS9900: the TI990/4 (1976) and
the improved TI990/5 (date unknown). These boards were much cheaper than the
TI990/10, but they could only address 64kbytes, did not implement the memory
bus fully (no DMA support), and could not run the DX10 OS.

Around 1978, TI released the TI990/12, a higher-end TTL implementation, which
was faster, and supported many additional instructions and features when
compared to TI990/10. It was replaced with a revised but similar TI990/12LR
computer in 1982 or 1983.

In 1981, TI released the new TMS99000 microprocessor. In 1982, they replaced
the TI990/10 CPU with a cheaper, smaller, faster, and more energy-efficient
TI990/10A board built around the TMS99000 CPU. Additionally, they released
an all-in-one Business System 300 (1982), later replaced with the Business
System 300A (1984). Both computers included the CPU, RAM, video terminal, and
hard disk/tape interface in a terminal case.

The TI990 series must have been abandoned around 1985, when TI introduced
the S1500 series built around a 68020.

The TI990 computers were primarily used for business applications.

Two disk-based OS were available. DX10 was a multi-tasking, multi-user OS.
DNOS (released around 1981) was similar to DX10 and mostly compatible with it:
it supported extra features but it was bigger and slower. Neither OS could run
on the lower-end 990/4 and /5 systems, but a kernel and various OS utilities
were available as static-link libraries for embedded applications.

$end

#---------------------------------------------------------------------------------------------#

$info=trs80
$bio
Tandy/Radio Shack TRS-80 Model I


Usage:

keyboard - relatively close to the original layout.

Take a look into the "Options" menu, accessible by hitting TAB, and choose "Keys (This 
Machine)" to  find out more about the key mapping.


cassette - emulation of virtual tapes supported.

Use SYSTEM or CLOAD commands to read images.

SYSTEM supports 6 character filenames and loads the corresponding FILENM.CAS image.

CLOAD loads a file named BASIC(N).CAS, where (N) is the character you supplied 
(e.g. CLOAD"M" loads BASICM.CAS)


floppies - emulation of virtual floppy discs supported. 

Use a NEWDOS/80 boot disk for drive 0 and set up correct PDRIVE parameters for the other drives. If only drives 0 to 2 are used they can be double sided by interpreting drive select 3 as head select bit.


Under the "Options" menu, accessible by hitting TAB, there are three settings.

"Floppy Disc Drives"  - enable or disable floppy disc controller.

"Video RAM"           - enable upper case only or upper/lower font.

"Virtual E000-EFFF"   - enable 4K Extension ROM or make it RAM.


The TRS-80 driver should run most of the known programs out there. It supports a WD 179x 
floppy disc controller with up to four virtual floppy disc drives contained in image files.


History and Trivia:

The Tandy TRS-80 model 1, released in August 1977 at a US retail price of $399 for just the 
keyboard/computer or $599 including display and cassette storage unit, was the first member 
of one of the most famous computer families.The earliest models used a poor BASIC interpreter 
called Basic Level 1 (the interpreter and the OS fit in the 4 KB ROM) which had no instruction 
to save the program! It was replaced later with the Basic Level 2 which needed a 12 KB ROM. 
To offset its poor characteristics, Tandy developed a device called the Expansion Interface 
which brought a lot of new features: 16, 32 or 48 KB RAM, two tape unit connectors, a printer 
port, a floppy disk controller, a serial port and a real time clock.


When it was connected to a floppy disk unit, the TRS 80 used the TRS DOS operating system, it 
was pretty bugged and most of the TRS80 users preferred NEW DOS, it is an operating system 
done by a third-party company called Apparat. This OS was the real TRS 80 operating system.


The Model 1 was followed with the TRS 80 model II and model III (the model III had almost the 
same characteristics as the model I).



$end

#---------------------------------------------------------------------------------------------#

$info=uk101
$bio
Compukit UK101 (1979)


Features:


MESS Emulation State:

$end

#---------------------------------------------------------------------------------------------#

$info=vc4000
$bio
Interton VC4000


Console for tv connection (PAL only?)

seams to be prequel of the arcadia 2001
technical something between channel f and odyssey2

sold from several firms with different names
grundig super play computer 4000
acetronic mpu1000/mpu2000
prinztronic vc6000?
radofin 1201?
fountain 1392?
hanimex?

Features:

grid 
4 8x10 single color sprites
single channel sound
special << load/reset button (must be pressed after power up)
special > select button
special start button
2 controller with analog joystick and 14 key keypad

controller keypad:

(keys do not have a label)
a   b
c d e
f g h
i j k
l m n

a,b,d are the same: fire


Dumping Cartridges:

9316 type roms are commonly used in these cartridges
(a little bit different to 2716)
look into messroms for a pinout of it

MESS Emulation State:

Based on info by Paul Robson, Christian Windler
sponsored by Andreas W.


$end

#---------------------------------------------------------------------------------------------#

$info=vcg
$bio
Palladium Video - Computer - Game


Console

emerson arcadia clone with different cartridge connector/pinout
and 4 additional keys per controller

look into messroms for cartridge pinout

german version known with PAL video

controller layout:

(no labels)

   2/fire
x1   x2   x3
 1   x4    3
 4    5    6
 7    8    9
Del   0  Enter


MESS Emulation State:

sponsored by Ward Shrake, Stefan P.
same as arcadia
additional keys supported

$end

#---------------------------------------------------------------------------------------------#

$info=vectrex
$bio
GCE Vectrex


Usage:

Though the Vectrex emulation can be loaded with a cartridge image, starting without one will
allow you to access the built-in game Minestorm (provided the system.img bios is present).


Known Issues:

No light pen support.


Almost every cartridge is playable, except those requiring the light pen. See vectrex.crc for 
a current compatibility list. Overlays are supported in .png format, using the same name as 
the cartridge image being loaded. Place overlays in the artwork directory. The overlay for
the built in minestorm game must be named "mine.png" to load when no image is selected.

Current Bug -- The vectrex overlays have not worked in the 37 beta cycle. This is being 
looked into.


History and Trivia:

The Vectrex was released in the US late in 1982 by General Consumer Electric (GCE) at a 
suggested retail price of $199. The Vectrex differed from other consoles in that it had 
it's own built in nine inch by eleven inch vector monitor, and thus didn't require (or 
even allow) the use of a television set. The system even contained a built in game, the 
Asteroids-like "Minestorm". 


The monochrome Vectrex used screen overlays to give the illusion of colour, and also to 
reduce the severity of the inherent flickering caused by the vector monitor.


In 1983, GCE was merged into Milton Bradley, who expanded the Vectrex's market to include 
Europe. As the video game market declined and then crashed, the Vectrex exited the market 
in early 1984. The rights to the system reverted to it's developers, Smith Engineering. 


Smith Engineering briefly considered designing a handheld version of the device in 1988, 
though the success of the Nintendo Game Boy made such a project too risky. In the mid-1990s, 
Smith Engineering condoned the duplication of the Vectrex system image and cartridges for 
non-commercial uses.


$end

#---------------------------------------------------------------------------------------------#

$info=vic20
$bio
Commodore VIC20 and VC20


Cartridge Usage:

Cartridges may have any of the following extensions: .bin .rom .a0 .20 .40 .60 .prg
Files with boot-sign in it are recognized as roms. Some cartridges require more than one 
image (for example, defender.60 defender.a0).


.20 files loaded at 0x2000 

.40 files loaded at 0x4000

.60 files loaded at 0x6000

.a0 files loaded at 0xa000

.prg files loaded at address in its first two bytes

.bin and .rom files are loaded at 0x4000 when 0x4000 bytes long, 
otherwise they are loaded at 0xa000

Note that .prg files are assigned to the quickloader (so you have to use 
the -cart switch when loading rom images).


Cassette Usage:

Cassette images with the .wav or .prg extensions as well as multiple .prg files 
contained within a zip file can be loaded. Zip files must be placed in the current directory, 
and the contained prg files are played in sequential order.


The format for WAVs are: 
8 bit (16 bit may work, but hasn't been tested), mono, 12500 Hz minimum. This has the same 
problems as an original Datasette tape drive (the tone head must be adjusted to get working 
(no load error...) wav-files)


Note that tape volume is DAC1 volume within the MESS UI On Screen Display Options (accessed
with the tilde (~) key in the DOS version.


Within the emulation, use LOAD or LOAD"" or LOAD"",1 for loading normal programs. Use 
LOAD"",1,1 for loading programs to a special address.


Diskette Usage:

Disk drives are simulated at the moment, and only file loads from drive 8 and 9 
are implemented. You can load a program file from the rom directory (*.prg,*.p00)
(This must NOT be specified on command line, start the vc20 emulation with no images specified)
 

You can also load a file from a d64 image (The directory command LOAD"$",8 is supported when 
using d64 images).


Within the emulation, basic programs can be loaded with: 

LOAD"filename",8 


Machine language programs can be loaded to their address with: 

LOAD"filename",8,1


When a program is loaded, type RUN or the appropriate SYS call to start it. 


Note that several programs rely on more features not currently emulated (such as 
loading other file types, writing...) Some games also rely on starting programs in the 
floppy drive's processor (and therefore CPU level emulation of the 1541 is needed).


Quickloader Usage:

A quickloader is available via the f8 key. It supports program image files 
with the .prg extension. This loads the program into memory and sets the program end 
pointer. It works with most programs. The program can be started by entering "RUN" in 
the emulation.


Miscellaneous Usage Notes:

Note that the pixel ratio for the PAL version is about 13/10 ! Resolution 1024x768 is good, 
but only part of the screen is filled. 800x600 is acceptable. Better to define own display 
mode (when the graphic driver supports this). For an acceptable display under XMESS, you can 
use the following switches: 

-scalewidth 3 -scaleheight 2


If you run into difficulty, be sure to start the emulation with the -log switch, and look into
the error.log file that is created in your mess directory.


See "Keys (This Machine)" in the TAB/Options menu for key assignments. Some key usages of note: 

stop-restore in many cases will cause the prompt to reappear.

shift-cbm switches between upper-only and normal character set (if wrong characters are on 
screen this often can help)

run (shift-stop) load and start program from tape.


The emulated light pen uses Paddle 3 x-axe and Paddle 4 y-axe.


While a normal or well written program will work regardless of the video system (PAL or 
NTSC), if the screen is too wide right or low, or the screen doesn't fit in visible 
area or gameplay is too fast try using the PAL (vc20) version, instead.


Known Issues:

Some PC-Keyboards do not behave well when two or more special keys are pressed at the same 
time (with my keyboard printscreen clears the pressed pause key!)

The timer system only 98% accurate.

The serial bus allows simple disk support, but no printer or other devices at present.

No userport, no rs232/v.24 interface.

No special expansion modules like ieee488 interface are supported in the expansion port.


Image compatibility is quite high, see vic20.crc for a partial list. The emulation features a
rasterline based video system which should be enough for all vic20 games and programs. The 
emulation supports the keyboard, as well as joysticks, paddles and lightpen, via the emulated
gameport, and simple Disk and Tape support. The expansion slot supports ram and rom 
cartridges, though not special expansion modules (see known issues). For a more complete vic20 
emulation, take a look at the very good vice emulator.


History and Trivia:

The Commodore VIC 20 was the successor of the CBM PET. It was designed by Bob Yannes at CBM, 
he later designed the SID chip for the C64 and then went to Ensoniq to design synthesizers. 
The VIC 20 used the same microprocessor and the same Basic language as the PET. It was very 
popular in the early 80's. Commodore sold more than 1 million of this computer! A great range 
of peripherals were developed for this computer as well as a lot of software. When it became 
obsolete, Commodore replaced it by the Commodore 16 which had no success.

Note that its name came from the name of its video chip VIC (Video Interface Chip) and 
its memory size : 5 KB RAM + 15 KB ROM = 20 KB ! The European VC20 stands for VolksComputer.


$end

#---------------------------------------------------------------------------------------------#

$info=vip
$bio
RCA Cosmac VIP


very early computer for tv connection


Features:

tape interface
tv output
integrated speaker


MESS Emulation State:

display, keyboard working
Stopped. For me it is much too cryptic to operate and therefore not interesting.
( I did it because it is the same hardware as in the studio2)


$end

#---------------------------------------------------------------------------------------------#

$info=z88
$bio
Acorn Z88


The Z88 is a portable system, with a LCD screen display and good sized keyboard.

$end

#---------------------------------------------------------------------------------------------#

$info=zx80
$bio
Sinclair ZX 80


History and Trivia:

The Sinclair ZX 80 is the ancestor of the Sinclair ZX 81. It had a short life (less than one 
year) and was replaced with the ZX 81 which was more integrated and cheaper.


$end

#---------------------------------------------------------------------------------------------#

$info=zx81
$bio
Sinclair ZX 81 / Timex Sinclair 1000


History and Trivia:

The Sinclair ZX 81 was the successor of the ZX 80. It had the same characteristics as the 
ZX 80, it's main difference (except for the colour) was its higher level of integration: the 
ZX 80 used about 12 chips which had been replaced with a ULA in the ZX 81. This computer was 
very successful in Europe at the beginning of the 80's. A large range of peripherals were 
developed for the ZX-81, among them: 3.5" floppy disk units, high resolution graphic cards, 
RS232 or Centronics interfaces, and RAM extensions. The ZX 81 was sold as the Timex-Sinclair 
1000 in the USA. 


$end
