After a long delay (it's hard to make big release-worthy improvements after
19 years of development), Ersatz-11 V6.1 is done.
The free demo/hobby version is at:
http://www.dbit.com/demo.html
This release's additions are mostly about weird LSI-11-based microcomputers:
- Terak 8510/a. This is a desktop machine with a standard LSI-11 CPU card
and non-standard everything else. The highlight is the 320x240 graphics
display. Runs RT-11/85 and UCSD p-System. Works in the DOS, Win32, OS/2,
and stand-alone versions of E11, but not Linux (due to linker problems).
Probably has plenty of rough edges since I've never even seen a Terak
machine in real life. For one thing it only works with QX:-bootable disks
(no QB: FDC emulation yet).
- DEC PDT-11/130. LSI-11 chipset in a busless machine built into a modified
VT100, with two TU58 tape units below the monitor. Runs RT11 SJ or FB,
with more free memory than other MMU-less machines since it has a reduced
I/O page (so 60 KB of main memory instead of 56 KB), and the guts of the
TU58 driver are in ROM. DEC's PD.SYS driver is very small since it's just
a shim. A reimplementation of the ROM code is supplied (since the original
is copyrighted by DEC).
- DEC PDT-11/150. As above but in a big desktop cube with two RX01s for
storage. Again, comes with replacement ROM code to make PD.SYS work.
The manual has an appendix that shows how to write "E11.INI" config files
for all three of these micros.
There's also a new built-in text editor; see the EDIT command in the
manual. This was kind of an insane amount of work for just one new page
of documentation! You already know how to use it (press PF2 for the keypad
help screen if there isn't already a hardcopy scotch-taped to your monitor).
It's mainly for editing your E11.INI w/o having to leave the emulation
(or boot an OS in stand-alone E11), but it's an adequate basic text editor
(it's a VT100ified 32-bit port of the DOS editor I've used for everything
since 1983, including writing E11 itself).
Another new feature that's just a rough cut is that the SET THROTTLE
DELAY=d INTERVAL=i command can now take FILE=foo[.TIM] instead of DELAY=d.
This way you can feed it a file (e.g. foo.tim) which contains 65536
little-endian 32-bit longwords, each of which is the average execution
time of the corresponding PDP-11 opcode in nanoseconds. So now instead
of adding a fixed d-microsecond delay every i instructions, E11 maintains
a running total of execution time, and every i instructions it checks
the actual current time and delays as needed to match. There's a lot
of overhead in banging on the timer chip so often though, so for now the
execution speed comes out slower than it should. The main fetch/dispatch
loop is recompiled at runtime when the SET THROTTLE command is issued,
so at least the overhead from this code vanishes when it's not enabled.
Other new stuff: ASSIGN xxx /MAC:aa-bb-cc-dd-ee-ff works for *all*
Ethernet devices (was just UDP:) so you can override the real port's default
MAC address. And there's a new keyscript command that should have been
there eons ago: "LASTSIMILARYEARBEFORE 2000" (you can use other years but
why would you?) converts the current year captured by GETTIME to the last
one before 2000 that had all the same days of the week, so you can kludge
your way around non-Y2K-compliant PDP-11 OSes (this is for entering the
current time/date with one keystroke at boot time if that's not obvious).
John Wilson
D Bit