Versados 4.2x, 4.3, 4.4, 4.5, 4.51 and 4.6 have been tested with the emulator. All boot and run, however, there are some things to watch out for. 


Cntrl-C vs. BREAK KEY

Cntrl-C and BREAK key are equivalent; however, during the Screen/Keyboard, scrolling, the keyboard emulation has a tendency to loose the Cntrl key.. so best to use the BREAK KEY with the screen/Keyboard.

You must use the BREAK KEY or Cntrl-C to get the attention of the EET task, so it can create a session controller (SCT). In other words, type Cntrl-C or BREAK to login.

The Break / cntrl-C is also used to interrupt a task. The session controller will abort or suspend a task if a BREAK/Cntrl-C is typed.

the emulator and a real vme10, buffers serial characters. a real serial port usually has more than one input buffer(usually 1 to 16). The emulator has 4096 character buffer (queue). A cntrl-c is placed in the buffer, and will not be seen until all characters prior to it are read. A break will flush the buffer and immediately manifest a break condition and a break interrupt. 


Wrap VS. NoWrap

Some Versados programs expect the CRT and TTY to be 80 columns with wrap enabled. (DEBUG and SYMBUG)
The logic for Wrap is strange... Nowrap unchecked is wrap enabled.


CapsLock

Many versados programs only accept uppercase. Including the IPL.SY for 4.3 and lower and the source files for the Assembler (but not 020 asm) 


RWIN

The RWIN can be delayed by a number of instructions before issueing a command complete and an interrupt.

When initializing the Hard Drive 40mb, it takes a long time for the INIT program to validate sectors. Be patient. The validation can NOT be turned off for HDs.


UpLoad and DownLoad	

Transfering files between Windows and VersaDOS is problematic. VersaDOS implements various types of files, none of which are equivalent to a windows/dos/unix file. They can be Converted.


DLTXT / DLSA / DLLO / DLRO / DLMX / ULTXT / ULBIN / DZ (dropzone)

To transfer TEXT files from windows to Versados, programs, a Versados 5.25 inch disk image WD01:, is provided. This disk contains source and binaries for programs to allow the user to transfer a text file as Source Ascii (.SA), Relocatable Object Modules (.RO) and Load Modules (.LO) from windows to versados. 

=DLSA filespec;A|C|F|P|W

Download Source Ascii, converts the windows stream into versados records, and writes them to a file (ID, RL=0, KL=0). It processes tabs. Tabs are expanded to the columns specified by the option A|C|F|P|W. (A=ASM, C=COBOL, F=FORTRAN, P=Pascal, W=Wordpad/notepad, and no option, which sets tabs at every tenth column) The Versados file is foramted as ASCII, which means that spaces are compressed (so, TABS become compressed spaces.) and  EOL tokens are removed. ( note - records can be as large as Data Block Size minus two, however the Download programs only allow 200 bytes)

=DLTXT filespes;A|C|F|P|W

Download Text, simular to DLSA except it refences a table of text file types and attempts to create the appropriate file type (ID or SQ). Listing text files are SQ files while source ascii files are typically ID type. 

WARNING - DLV1.LO thru DLV4 are not perfect. They are only intended as the first generations of the DOWNLOAD program. This allowed the next generation to be edited in windows and downloaded to Versados. It is much easier to edit in windows rather than with the Versados editor. 

=DLRO filespec    creates a SQ RL=256 file
=DLLO filespec    creates a CN Size=size of dload file
=DLMX filespec    creates a SQ variable length record ascii formatted file

DROPZONE, for Versados, allows the user to drag-n-drop files from windows to the emulator. DZ (dropzone) will try to copy the dropped files to vesadsos, creating the appropriate file type. Some file types are NOT supported and will be skipped.. DZ can transfer both text and binary files. 

Also, included are programs to transfer files from Versados to windows.

=ULTXT filespec   transfers a ASCII formatted text file to windows. (ID KL=0 RL=0) (SQ RL=0)
=ULBIN filespec   transfers a file as unformatted to windows. (ID, SQ  Max RECLEN=256) (CN)

ULTXT will work on Source, MX and Listing files; on most text files  (ID KL=0 RL=0) (SQ RL=0)
ULBIN will work on .RO and .LO files, and many other binary files (ID, SQ Max RECLEN=256) (CN)

The VDOSFS program for windows can also be used to get files from Versados to windows, by using an intermediary disk. (for instance, a pascal code file ( ID, RL=1024) can be transferred.)
 
The support program, VDOSFS, which is availible in the separate package DISK IMAGE BUILDER (a set of support programs for the Z80 emulator for windows and the VME10 emulator for windows) can be used to convert and transfer versados files, directly from a VME10 5.25 inch disk image( in IMD format) to windows. There are several options for how a file is converted. Most Versados files can be transfered to windows and converted to some form that is reasonable. Some files, even after conversion are not usable. 

Initial Boot Floppies

The initial boot floppy for Versados 4.4, 4.5 and 4.51 must be writable. This is due to the fact that Versados must create an account file and a password file to work.  4.3 will boot from a write protected disk, but 4.4,4.5 and 4.51 will NOT (4.3's boot floppy already has the files needed). 

The IMD disk image files for Versados are made with compression of unused sectors. The emulator always opens disk images with compressed sectors as READ ONLY. So, to boot the disk images , you MUST decompress IMD files that need to be accessed as Read/write. 

There is a function in the menu of the NEW DISK window that allows the user to decompress an IMD file.

You can use also IMDU to convert the compressed sectors into uncompressed sectors. 

IMDU BT01.IMD BT01E.IMD /E

The /E, is the option to decompress a file. IMDU will create a new disk called BT01E.IMD from BT01.IMD.

IMDU by Dave Dunfield is available at dunfield.com.


Initial run

The Default rom should have been loaded automatically at start up. If not, use a menu item to set defaults for the location of the BSOD rom (ROM.S19) or TENBUG (recommended) rom and the default FONT (CHARRAM.S19 or Font.S19).  Restart the emulator. 

You can load the ROM at anytime by using File->Load Rom

You can load the Font at anytime by using File->Load Memory
  (WARNING - Font MUST be org'ed at the address of the Character Generator RAM)

After the ROM and FONT defaults are set, each time the emulator starts, they will be loaded for you. 

At this point you can select which cards are plugged in and how much memory. You should make sure that the MVME400 Card 0 is inserted and that the MVME410 is inserted.  Treat the emulator the same way you would a real VME10. NEVER insert or remove cards with the power on. Never change Jumpers with the power on. Effectively, you can consider Power to be Off before you push the Power On Reset. (restarting the emulator might be a good idea.) ( It is possible to STOP then make changes and then POR; but, may not work in all situations)

NOTE - Never Reset or POR the emulator without first stopping the emulator. 

Select IO devices. Open the VME10 Keyboard/Screen. Select a TTY or CRT or NET device for the first port on the MVME400. (the BSOD rom outputs messages on the first MVME400, not the VME10 Screen)

If you select a NETWORK (TELNET Server) , you must also, start the Main Server and the Child Server. Then, use a TELNET Client to connect to the IP address of your machine using port 23. (LOCAL HOST 127.0.0.1 is fine, if you are runing the client on the same machine as the server. 

The Network Device only supports IPV4.


To install versados

Do a POWER ON RESET 

Insert the floppy into drive FD02 (open the image file) (BT01 for 4.3 and 4.4; BT06 for 4.5)

do a boot using either tenbug(preferable) or the bsod.

During the BOOT, you may or may not see much. 4.3 silently boots. The IPL.SY program for 4.4 and 4.5 prints messages using the firmware (BOOT in PROGRESS and BOOT COMPLETE). The BSOD rom supports messages from the IPL program. 

The real VME10, does not have a Front Panel LED, however, since Versados writes to a panel LED anyway, i added a panel LED (TO ADDRESS 0X500 (a reserved location in TENBUG) - write only - reads are treated as normal RAM). 

The BSOD program will write "DB" to the FPLED when it first starts, and then "D0" when Done.

TENBUG does not use the Front Panel.

If the IPL.SY could use the LED, it writes "B0" when it completes, or "BF" if it fails. (But, IPL.SY only uses the FP if it is on an EXORMACS)

IPL.SY detects the panel LEDs differently and will not use the FP LEDs on the emulator. 

VersaDOS writes "C0" which means the system booted. "AF" means failure. Other Codes may be displayed.

NOTE - even after the message BOOT COMPLETE is printed and the FP-LED is "C0", it may take a while for the system to issue a prompt to login. System parameters need to be initialized, including finding all memory and adding to the MEMORY MAP tables. NO need to Cntrl-C or BREAK for the first login while booting. 

After booting from a floppy, you probably want to install Versados on a Hard drive. 

Versados 4.3 for the VME10 is pre-configured to use a 15 MD HD. You should make a fresh 15 MB RAW image file, using the emulator's create disk menu item. The emulator puts the right fill bytes on a disk (for Motorola disks), to make it appear as though it has been formated perfectly. The file VMES10.XPATCH.CF can be used to change the size of the HD that is supported by Versados 4.3.

The new Disk Image file MUST be initialized. You MUST use the V option. Name the Volume, "SYS", owned by user 0.  DO NOT FORMAT! DO NOT USE ALTERNATE SECTOR HANDLING! You may add entries to the SLT, but since the emulated HD is perfect, there's no need to specify defective areas on the disk.  

=INIT #HD00;V

YOU MUST USE THE V OPTION for disks to be used with the VME10 (load address of IPL.SY is 0x10000). IPL.SY will be added to the disk during initialization (V option and answer Y to "Want BOOT"). A dump area and a diagnostic area can be optionally added at your discresion. WARNING - the emulator has lots of memory--the dump file MUST be large enough for ALL memory.(probably best to omit the DUMP)

Before rebooting, you must Copy the Versados.sy file to the HD, along with the utilities needed to finish the installation. 

COPY BT01:*.*.*.*,SYS:*.*.*.*;NC   (you can omit the verify option since the HD works better than a real one.)  (BT06 for 4.5)

You could rename VMES10.VERSADOS.SY to the default name used by IPL.SY, BUT i recommend booting 0.vmes10.versados.sy until you do a sysgen and create a new 0.&.versdos.sy (note - TENBUG and the boot simulation allows you to pass a file name on a command line to the IPL.SY program. If no command line is passed (blank), the default is 0.&.VERSADOS.SY. (during normal boots (like a real vme10) after installation to an HD, the command line should be blank to make IPL.SY use the default 0.&.VERSADOS.SY). i leave the original in catalog VMES10, then do a SYSGEN to make my default 0.&.Versados.sy

RENAME 0.VMES10.VERSADOS.SY,0.&.VERSADOS.SY  (if desired)

(note the emulator has a dropdown list to fill the CMD line with commonly used boot lines, so easy to  leave un-re-named. TENBUG will require you type the filespac)

TENBUG 2.2> BO ,,0.VMES10.VERSADOS.SY

TENBUG 2.2> BO

defaults to 0,0,0.&.VERSADOS.SY

After initializing the HD with the files from the first disk, you can copy all the rest of the files on the floppy disk set onto the HD, by doing the following...

Reboot from the HD. (set boot disk to HD00)

(HINT - rename the UPSYTEM.CF, USER.CF, and BULLETIN.NW files; and then, with the Editor (E.LO) create new, smaller files. You can not prevent those files from being displayed, during boot.

For some reason, you can not Dismount a disk if it is in the drive. You must remove the disk (Close the disk image file) from the drive before dismounting.  Apparently, VersaDOS keeps drives sync'ed using immediate writes. No Cache.(There is a buffer used while a file is OPEN, and data may be lost if the system is terminated with files open. Terminate the Spooling System if running)

remove the floppy from #FD02

DMT #FD02

insert new floppy

MT #FD02

COPY BTxx:*.*.*.*,SYS:*.*.*.*;NC (where xx is 02 thru 11 for 4.3 - skip BT01, since already copied)

repeat for each disk in the disk image set until all files have been copied. 



Procedure to install 4.4 or 4.5.


4.4 and 4.5 seem to be able to dynamically detect the size of the HD, so there's no XPATCH.CF, as with 4.3. Otherwise, the installation steps are simular to 4.3.

Probably best to use a 40MB HD.

=INIT #HD00;V

DO NOT FORMAT

DO NOT use ALT SECTOR feature

Cylinders = 306 for 5mb, 10mb, 15mb 
Cylinders = 830 for 40mb
SPT = 32

Y for boot loader

Load address for IPL.SY should be $10000. Use the ;V option with the INIT program.

VersaDOS 4.5 also has a chain file to install. Or, you can do as in 4.3.

HINTS - change the contents of the files PRIV.BULLETIN.NW, PRIV.USER.CF, and PRIV.UPSYSTEM.CF so they are smaller, since displaying them on the screen/keyboard is So Slow.

IF using BSOD and SIMULATED BOOT, REMEMBER TO WAIT FOR THE BSOD DONE MESSAGE ON MVME400 CONSOLE BEFORE BOOTING. 


-------

The Power ON Reset must be used to initialize hardware. If you skip the POR you might see a internal error and then the system double bus faults. Normally a real VME10 always does a POR, but the emulator waits till you think you are ready to POR. This gives you a chance to reconfigure hardware before POR.

The BSOD rom (or TENBUG, or your own machination) must also be used to initialize hardware, after a POR. 

Recommend using TENBUG 2.2

HINT - since versaDOS uses the graphics memory as regular memory, it is wise to SET the IG bit. Use the menu option to set IG bit AFTER the BSOD rom initializes (for CPM ). 

The rom clears IG. So does TENBUG. Versados seems to also clear the IG, so need to SET when initial system login prompt occurs.

You can STOP the emulator and then SET the IG bit, (wait) then RUN.

You can also use the programs GSEG and IG to disable graphics (found on the floppy, WD01:). 

=GSEG G   to lock the display ram up so it can not be allocated to other tasks. 

=GSEG D   to unlock

=IG 1     to set the IG bit  (takes a few seconds to execute)

=IG 0     to clr the IG bit

place one method in your UPSYSTEM.CF file... so that each boot will disable graphics.. 

(it appears that Versados will clear the IG bit during its IO initialization, so the IG 1 needs to be done in UPSYSTEM.CF...)  (also GSEG is a system task, so must be run by user 0)


HOWTO use Hot Patch

Any S-Rec file can be loaded at anytime into memory. If the S-Rec file contains a patch, it is loaded directly into memory. Hot patches are provided to fix the Time Loss in Versados. Versados thinks it is interrupted every 15.625ms, but since the VB runtime can not support periodic events except in 55ms increments, the timer's interrupt service routine can be patched to add 55mm instead of 15.625ms.

You must be certain that the code to be patched is already loaded. This is simple. Just wait for the initial login request, and then apply the patch. 

WARNING - if the CPU is executing the code that is being replaced by the HOT patch, things will go badly. If you STOP in the code being replaced, same bad results.

WARNING.... MAKE SURE THAT YOU APPLY THE RIGHT PATCH.. THE VDOS4.4 PATCH WILL ONLY WORK WITH VDOS 4.4. IT WILL CRASH OTHERS.