Visual Technology Visual 1050 Emulation

Visual Technology Logo

Visual Technology, Inc.

Visual Technology Visual 1050 Emulation

Overview

Emulation of the Visual 1050 is supported through the MAME/MESS project. Traditionally MAME targeted arcade system emulation and MESS targetted computer system emulation. I refer to MESS within these pages.

Version 0.133 of MESS (July 2009) was the first release to support Visual 1050 emulation. This release did not support emulation of the Visual 1050 Winchester hard drive. Emulated hard drive support will be available once MESS version 0.148 is released (it was added to the code base in September 2012).

Currently there is no available dump of the keyboard ROM. The 1050 keyboard schematic specifies either an Intel 8049 MCU with internal ROM or Intel 8039 with Intel 2716 external ROM. A dump of these ROMS would complete emulation.

Additional versions of the BOOT and DISPLAY ROMs (currently only 1.1 is dumped) may be available. The imaging of all versions of 1050 system disks is also partial and incomplete (have 1.0, 1.3, 1.4).

If you can help provide additional rom dumps, disk images, or any other information, please contact me.

What You Need

  • MESS version 0.133 (0.148 for hard drive support) or above
  • System Disks
  • ROMs
    • BOOT ROM (Z80)
    • DISPLAY ROM (6502)
    • DISK CONTROLLER ROM (XEBEC S1410 - for hard drive support)

If you cannot make a set of system disk images, you can find a set from Dave Dunfield's Disk/Software Image Archive.

If you cannot dump your own ROMs, you can find a set here. (If you can dump your own ROMs, please send me a copy so that we can be sure the MESS project has all available 1050 ROM versions. A dump of the ROM for the keyboard controller would also be especially helpful).

If you use the system disks from Dave Dunfield, you will find that they are in ImageDisk format. In order to use these images with MESS, you will need to convert them back into 'raw' format using the ImageDisk imdu utility, e.g.:

imdu /b v1050a.imd v1050a.dsk

ImageDisk and its associated utilities are available from Dave's site as well.

If you are using Linux, you can use DOSBox to run the imdu utility instead of needing to gain access to a DOS or Windows system as imdu.com will run just fine under DOS emulation (the same cannot be said for actually attempting to read/write images to/from the floppy).

Once you have disk images, you can use cpmtools to import and export files between your emulated Visual 1050 and your host system. If the distribution on cpmtools does not have the disk definition for the 1050 already included, you can use the following:

diskdef v1050
  seclen 512
  tracks 80
  sectrk 10
  blocksize 2048
  maxdir 128
  skew 0
  boottrk 2
  os 3
end

Now you can browse disk images

cpmls -f v1050 V1050A.DSK

Copy files from a disk image to your host system

cpmcp -f v1050 V1050A.DSK 0:PROG.ASM PROG.ASM

or copy files from your host system to a disk image

cpmcp -f v1050 V1050A.DSK PROG.ASM 0:PROG.ASM

You can also do some other useful things with cpmutils, so check it out.

Fire up MESS and away you go:

mess v1050 -window -flop1 V1050A.DSK -flop2 V1050B.DSK

What's Missing

  • Proper keyboard support (see above)
  • Writing "through" the ROM at 0x0000-0x1fff is unimplemented
  • Might possibly need some interrupt handling cleanup

Screenshots

The following are some screenshots of the emulated 1050 running in MESS. Most of the shots are from the 1050 demonstration program that was included on the CBASIC disk. This looks like it was probably originally a sales tool but it shows some of the system capabilities pretty well.

Clicking on an image should bring up a larger view.

Initial CP/M boot ROM diagnostics main menu ROM diagnostics visual attributes test
Initial CP/M boot ROM diagnostics main menu ROM diags visual attributes test
Galpat memory diags Disk format Demo load
Galpat memory diags Disk format Demo load
Demo hardware Demo system unit Demo system unit back
Demo hardware Demo system unit Demo system unit back
Demo display Demo keyboard Demo software
Demo display Demo keyboard Demo software
Demo WordStar Demo Utility Manager Demo DR Graph
Demo WordStar Demo Utility Manager Demo DR Graph
Demo Data Transfers Zork I
Demo Data Transfers Zork I