Release Version 1.0.17 Notes

This program is provided AS-IS and has absolutely NO warranty of any kind. You must accept any and all responsibility for any and all problems encountered while you use this program. you MUST indemnify the author for any and all consequences pretaining to your use of this program.  If the Laws in your area (or You) disagree, then you are NOT permitted to use this program. 

WARNING - the juno server used by juno client 4 does not use Secure logins (SSL)... as a result, anyone with access to the data going into the server can acquire the password.  Do NOT send me e-mail..someone else has my account now.. i have terminated internet service, and have no presence on the internet , that i control... do not let yourself be cheated... someone wants money .. none of their claims are true... this emulator does not lock your data or surrepticiously watch you, or steal info about you... it is developed on a computer that has NEVER been connected to the internet... you should NOT send them money to anyone  as they demand... anyone who claims that this emulator has done anything to their computer (as described above) is a liar.. they are most likely part of the scam (or just in need of attention)... report them to the authorities.. ever since i released my fisrt emulator, a Z80 emulator, someone has been bad-mouthing it , in an attrempt to make you buy their emulator... my emulators are free and i never charge for anything associated with any of the programs i have written. Since i am old, i have decided to simply not be availible... this is best... after i die, i do not want to give thieves a tool to cheat you ... so never try to contact me... unless you understand what i just said. Only snail-mail is available..

Installation-

The easiest way of getting the runtime installed, is to install the VME10 Emulator using the installation program, however newer Windows (>7) may not install properly. 

Alternately, you may copy all files in the cabinet files to a directory. they are self-registering.

I do not know what compatability flags need to be set to run the emulator on windows 7,8 or 10. if you have another VB6 program, chances are that the same compatability flags for it can work with the emulator. If the emulator is installed on an older windows, and you upgrade to a newer windows, the migration program will probably detect the VB runtime and set compatability flags appropriately, but if you try a fresh install on a new windows, the compatibility flags are not set. You might need to find someone who has upgraded to find what flags are needed. 

also, you probably should uninstall an old version of the emulator before installing a new one.  The only problem caused by failing to uninstall, is that the unistall program does not remove the entries in the add/remove software page in the control panel. Otherwise everything else is fine.

NOTE - sometimes, it is best to move the emulator's executable to an aplication path with no SPACES. It is best to avoid using any path containing SPACES. Not sure why spaces somtimes fail; sometimes don't.

The VME10 emulator uses the same runtime and binary objects as the Z80 Emulator for Windows. If the Z80 emulator is installed, then you need only unzip the VME10 emulator into a directory of your choosing and extract the executable from the CAB file. The executable should find the runtime, if the runtime was installed in the SYSTEM folders. If not, then you can place a copy of the runtime files in the same directory as the executable. 

When you run the emulator for the first time, you should initialize Defaults. You MUST specify the location of the DEFAULT ROM and the Initial Font (font required, if not using TENBUG). 

Use menu->Boot->defaults->ROM to set default ROM location. Use TENBUG22.mx
Use menu->Boot->defaults->FONT to set default Font location. Use CharRam.S19 or Font.S19

Begining with v 1.0.6, the setting and saving of defaults works. Previously a fixed path and filename was used and was immutable. No-One told me, so it was broken for a long time. Please send me an snail-mail if you find bugs. It took less time to fix this bug (once i found it), than it took to re-compile.

NOTE- turns out that someone may have tried to tell me, but someone else has been checking my e-mail, so i never saw what they checked...no more e-mail access... 

The VME10 Emulator auto-loads the FONT and the ROM at startup, if the defaults are defined. 

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)

NOTE - Even though TENBUG does not use the Default FONT file, you should set a default font to prevent complaints from the emulator as it initializes. 

The VME10 Emulator starts-up with the OPCode map initialized to be  MC68010.  Afterwards, you may change the CPU type, via menu-> Options-> . (should use MC68010, only, but can use others for fun)

It is Unknown as to whether the VME10 emulator or the Z80 emulator will run properly or even install on Windows greater than eight and, for W8, might require professional version. Most likely, needs compatability flags set. I don't know which flags are needed, since i don't have w7,8 or 10.

Some things may not work properly. It is NEW and still in development, so, obviously, problems are expected. 

This program is provided AS-IS and has absolutely NO warranty of any kind. You must accept any and all responsibility for any and all problems encountered while you use this program.  If the Laws in your area (or You) disagree, then you are NOT permitted to use this program. 

CRT, TTY and NET Emulation Devices are implemented.
LPT Emulation Device is implemented.

CPM

UC1 (Screen/Keyboard)  (NOT supported in the FAKE BOS)
TTY (device 0, first 400 port) 
CRT (device 1, second 400 port).
LPT (first 410 port) 
UL1 (second 410 port)

VersaDOS

#CNSL (4.3) OR #CN00 (4.4, 4.5 AND 4.6) is the screen/Keyboard
#CN01 (device 0, first 400 port) 
#CN02 (device 1, second 400 port).
#PR   (first 410 port) 

UNIX

/dev/TTY00 is screen
/dev/TTY400 is port 0 on 400 card 0
/dev/TTY401 is port 1 on 400 card 0
/dev/TTY402 is port 0 on 400 card 1
/dev/TTY403 is port 1 on 400 card 1
/dev/lp0 is printer on 410 card



SN2661-

Loop back mode does not work properly.

KeyBoard Screen-

The keyboard looses some inputed key presses during scrolling. Use BREAK KEY instead of Cntrl-C.

The Screen is unbelievably slow. 

The Pixel RAM does not responed properly during SCM.SY, due to mapping. This is OK for normal programs, but the SCM.SY seems to want to test unused Pixel access locations. 

The implementation supports both the OLD keyboard, and the NEW keyboard. The OLD KB does not support the status or Beep commands. However, in this implementation the OLD keyboard does support the Beep, but is not used in drivers. 


MVME400-

The NEC7201 is not completely implemented. Only enough for the CPM drivers, VersaDOS Drivers and UNIX drivers to work are done. No Synchonous is implemented.

MVME410-

The MVME410 is not completely implemented. Only enough for the CPM drivers, VersaDOS Drivers and UNIX drivers to work are done. It always does what a printer needs. Can not reprogram it. 


MC1468HC18 Realtime Clock-

The clock does not respond as the SCM.SY diagnostic requires. 

Setting a new time, via accesses to the Registers, will fail if the system's Time Format is NOT US. Fixed it so that the fail is harmless. (seems that no-one (CPM, VersaDOS, and UNIX) cares if the clock is wrong)

To address a bug in VersaDOS 4.3, where the clock driver fails to read UIP bit before reading the clock, a work-a-round was implemented. Normally, in the emulator, the clock's registers are updated when the UIP or the UP interrupt pending is read. However to accomodate 4.3, the registers are also updated when the HOURS is read. 


TENBUG-

TenBug runs. The garbage spewn onto the screen during Tenbug startup, is due to the implementation of the screen. The screen does NOT work exactly as the real one. (see memory.txt) Tenbug tests the graphics ram and the character display ram and the character genrator ram and the character attributes ram, during start up. This is where the garbage spewn onto the screen comes from... a real vme10 does not attempt to display anything until the hardware is initialized, but the emulator displays characters even before the character hardware is initialized.


CPU32 Instruction Set-

The Table lookup and Interpolate intstructions are not implemented and act as F-line exceptions. The CHK2 and CMP2 instructions may not be right. 

The Beta Version (1.0.0) did not initialize the Opcode Map. This was to save time while debugging. Before using the Emulator, you had to initialize the Opcode Map. During this initialization, the pointers to the microcode for each instruction is setup, along with the decoding required to execute instructions. Also, the infomation required for dissassembly is initialized. 

This Release Version  initializes the Op code Map at start-up to be a MC68010.

There is a VME30 beta available it does everything that the vme10 emulator does plus can be set to emulate a MC68010/mc68030 hybrid.. basically a vme10 that executes 030 instruction and addressing modes. 
