Date : Thu, 15 Sep 1994 14:36:27 +0100 (BST)
From : clr1@...
Subject: Emulator Under Progress - The List
Okay, here is the list *with* updates. I'll post it to newsgroups right
after this.
+-------------------+-------------------------------------------------+
| /-- |_| /-- | (~ | "And the driving is like the driving of Jehu, |
| \-- | | | | _) | the son of Nimshi, for he drives furiously." |
+-------------------+-------------------- Second Book of Kings 9 v20 -+
| Wanted: 486DX2-66 VLB M/board; 400+MB IDE/SCSI; VLB graphics card |
+---------------------------------------------------------------------+
- cut here ------------------------------------------------------------
This is a list of all BBC B emulators currently under progress, to the
best of my knowledge. Any updates, alterations or additions should be
mailed to me, clr1@... For those of you already on the list;
while I was compiling it I thought of a couple of extra things to put in.
Could you please mail me with version number, latest release date and any
hardware requirements if you want them to be included.
Thanks,
Chris Rae
Emulator: Beeb
Author(s): James Bonfield (jkb@... ) and
Steve Youell (8271 emulation) (wgc-e@... )
Platform: Unix, with or without X11
Language: C
Implementation (core emulator):
Currently has good 6502 and reasonable 6522 support. The keyboard is
handled correctly by generating the necessary 6522 interrupts and letting
the "hardware" do the work. Graphics support is dodgy. Sideways RAM and
ROMS work fine too. I have minimal 6845 support, but this currently does
work for modes 0, 1 and 2. It even provides some semblance of hardware
scrolling (but only in the Y direction). I'll rewrite the 6845 again from
scratch though as I've got better ideas now which should allow for split
screen modes.
Implementation (8271 emulation):
The idea is to emulate the 8271 rather than OSWORD &7F as in effect all
OSWORD &7F does is to give the 8271 all the data in the argument block.
There will also be the Disk Box which is an X program for selecting disks
and giving them to the drive. It's quite easy really, I don't have to
worry about particularly tight programming as anything I write will be
faster than the beeb disk drive. The idea is to have a program on the beeb
which will take a disk and make an image from it containing all the sector
id's and data. The final goal which would truly show off the beeb emulator
and the disk drive I am writing would be to be able to have a disk image
of exile, to be able to load it, protection 'n' all and then for the
emulator to run it. [SY]
Emulator: untitled as far as I know
Author(s): Mike Borcherds (borchrds.teaching@... )
Platform: Archimedes
Language: ARM Assembler
Implementation:
It supports all the standard graphics modes (and some that are odd
widths/heights - such as Repton). It does beeb sounds quite well.
Emulates the palette. Has a disk operating system. All in all it is
fairly well developed. However, it cheats somewhat on keyboard emulation
and does not really emulate much of the system/user vias.
Still, it runs a lot of games - Arcadians,Repton,ChuckieEgg, etc. It does
not handle split screens/palette yet. [MC]
Emulator: BPC
Author(s): Mark Cooke (ee2015@... )
Platform: PC DOS
Language: Assembler
Implementation:
Final stages - sound/ADC left to do. A bit of tweaking of the screen
update loop for speed.
Emulator: Xbeeb
Author(s): James Fidell (jfid@... )
Platform: Unix / X Windows
Language: C
Implementation:
MODE 7 teletext works, near enough complete 6502 and 6522 emulation, some
CRTC emulation, no sound, no graphics. [JF]
Emulator: MacBeebEm
Version: 12 September 1994
Author(s): Chris Lam, Aston University, UK (lamcw@... )
Platform: Apple Macintosh
Language: Think C 6.00
Implementation:
6502 CPU - some invalid opcodes included.
6522 system via - 100Hz (T1) ints, 50Hz video sync ints, asynchronous
keyboard
ints.
6522 user via - timers T1 & T2 working.
6845 CRTC - graphics modes 0 to 6 are fully supported. a reasonable TELETEXT
mode is available (but no fancy graphics or colours). MODE 8 (in AUG) also
works.
ULA video - flashing colours and PALETTE are working.
runs BASIC, Wordwise Plus, Sphinx Adventure, Arcadians, Chuckie Egg,
Planetoids, Snapper, White Knight II, Zalaga. These all work very reliably.
This may give the impression that MacBeebEm is near completion but this is
not the case!
All editing works and a copy cursor is present.
Speed is slower than a real beeb but it's acceptable (on an LC475).
Future plans:
some form of saving and loading programs. multi-mode graphics screens.
[CL]
Emulator: BBC386
Author: Stephen Quan (quan@... )
Platform: MS-DOS, Unix
Language: 386+ and C
Implementation:
I am currently working on both a C version and a 386 (assembly) version of
an emulator for a bbc model-b. The C version will actually run on any
platform with a C compiler (no graphics yet...), but it is terrible slow
since I have not implemented any optimisations. Rather, I use the C
version to verify my ideas before I dive into deep water with assembly
code.
The current status is, I have implemented 6502 without BCD and have hacks
for OSWRCH and OSRDCH.
I am now working on the keyboard and other shiela functions in FE40-FE4F.
When this is completed, I can remove the hack for OSRDCH. Later on I will
work on some of the 6845 (sheila functions in FE00-FE0F, I think) so I can
remove the hack for OSWRCH.
Overall, the hardware side, Fred, Jim & Sheila seems a bit more complex
than I thought, and reading the AUG, studying (2nd semester started) and
working, will mean I might be forced to a snail's pace. [SQ]
Emulator: My6502
Version: 2.7 (5 August 1994)
Author(s): Chris Rae (clr1@... )
Platform: IBM PC
Language: 80286 assembler under Turbo Pascal 6 IDE
Requires: 286+ processor
Implementation:
6502 instruction set working okay; still some minor bugs. No SHEILA I/O
implemented, OSWRCH and OSRDCH trapped and not implemented. Boots into
BASIC okay. [CR]
Future plans:
To implement &FE30 ROM switching, keyboard, then screen.
Emulator: BBCEm
Author(s): Nigel Something; sorry - no surname! (apm1001@... )
Platform: Acorn Archimedes
Language: ARM Assembler
Implementation:
Has no hardware poking as yet, can read keyboard boot up state on "switch
on", takes input by blasting key presses into the 16byte keyboard buffer.
Output is done after processing as the monitor is not yet connected. Can
boot up to BASIC prompt in 1.5 secs Can execute BASIC programs and draw
graphics. There are some OPcode bugs that cause it to crash occasionally. [N]