home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / documentation / documents / bbcemul < prev    next >
Internet Message Format  |  1999-04-27  |  8KB

  1. From: clr1@st-andrews.ac.uk (Chris Livingston Rae)
  2. Newsgroups: comp.sys.acorn,comp.sys.acorn.tech,comp.emulators.misc,comp.emulator.misc
  3. Subject: BBC Emulators
  4. Date: 18 Sep 1994 14:55:27 GMT
  5. Message-ID: <35hkcv$t3g@calvin.st-and.ac.uk>
  6.  
  7. This is a list of BBC emulators currently under progress, as far as I 
  8. know. These people are all on my BBC emulator development mailing list 
  9. (mail me for details). It's really just a reference for all of the people 
  10. who have mailed me (and the authors) asking about the emulators.
  11.  
  12. Enjoy!
  13.  
  14. Chris
  15.  
  16.  
  17.  
  18. - cut here ------------------------------------------------------------
  19.  
  20. This is a list of all BBC B emulators currently under progress, to the 
  21. best of my knowledge. Any updates, alterations or additions should be 
  22. mailed to me, clr1@st-and.ac.uk. For those of you already on the list; 
  23. while I was compiling it I thought of a couple of extra things to put in. 
  24. Could you please mail me with version number, latest release date and any 
  25. hardware requirements if you want them to be included.
  26.  
  27. Thanks,
  28.  
  29. Chris Rae
  30.  
  31. --------------------------------------------------------------------- 1
  32. Emulator:  Beeb
  33. Author(s): James Bonfield (jkb@mrc-molecular-biology.cambridge.ac.uk) and 
  34.            Steve Youell (8271 emulation) (wgc-e@rx.xerox.com)
  35. Platform:  Unix, with or without X11
  36. Language:  C
  37. Implementation (core emulator):
  38.  
  39. Currently has good 6502 and reasonable 6522 support. The keyboard is
  40. handled correctly by generating the necessary 6522 interrupts and letting
  41. the "hardware" do the work. Graphics support is dodgy. Sideways RAM and
  42. ROMS work fine too. I have minimal 6845 support, but this currently does
  43. work for modes 0, 1 and 2. It even provides some semblance of hardware
  44. scrolling (but only in the Y direction). I'll rewrite the 6845 again from
  45. scratch though as I've got better ideas now which should allow for split
  46. screen modes. 
  47.  
  48. Implementation (8271 emulation):
  49.  
  50. The idea is to emulate the 8271 rather than OSWORD &7F as in effect all
  51. OSWORD &7F does is to give the 8271 all the data in the argument block.
  52. There will also be the Disk Box which is an X program for selecting disks
  53. and giving them to the drive. It's quite easy really, I don't have to
  54. worry about particularly tight programming as anything I write will be
  55. faster than the beeb disk drive. The idea is to have a program on the beeb
  56. which will take a disk and make an image from it containing all the sector
  57. id's and data. The final goal which would truly show off the beeb emulator
  58. and the disk drive I am writing would be to be able to have a disk image
  59. of exile, to be able to load it, protection 'n' all and then for the
  60. emulator to run it. [SY]
  61.  
  62. --------------------------------------------------------------------- 2
  63. Emulator:  untitled as far as I know
  64. Author(s): Mike Borcherds (borchrds.teaching@physics.oxford.ac.uk)
  65. Platform:  Archimedes
  66. Language:  ARM Assembler
  67. Implementation:
  68.  
  69. It supports all the standard graphics modes (and some that are odd
  70. widths/heights - such as Repton).  It does beeb sounds quite well. 
  71. Emulates the palette.  Has a disk operating system.  All in all it is
  72. fairly well developed.  However, it cheats somewhat on keyboard emulation
  73. and does not really emulate much of the system/user vias. 
  74.  
  75. Still, it runs a lot of games - Arcadians,Repton,ChuckieEgg, etc.  It does
  76. not handle split screens/palette yet. [MC]
  77.  
  78. --------------------------------------------------------------------- 3
  79. Emulator:  BPC
  80. Author(s): Mark Cooke (ee2015@mail.bristol.ac.uk)
  81. Platform:  PC DOS
  82. Language:  Assembler
  83. Implementation:
  84.  
  85. Final stages - sound/ADC left to do.  A bit of tweaking of the screen
  86. update loop for speed. 
  87.  
  88. --------------------------------------------------------------------- 4
  89. Emulator:  Xbeeb
  90. Author(s): James Fidell (jfid@micro-focus-ltd.co.uk)
  91. Platform:  Unix / X Windows
  92. Language:  C
  93. Implementation:
  94.  
  95. MODE 7 teletext works, near enough complete 6502 and 6522 emulation, some
  96. CRTC emulation, no sound, no graphics. [JF]
  97.  
  98. --------------------------------------------------------------------- 5
  99. Emulator:  MacBeebEm
  100. Version:   12 September 1994
  101. Author(s): Chris Lam, Aston University, UK (lamcw@sun.aston.ac.uk)
  102. Platform:  Apple Macintosh
  103. Language:  Think C 6.00
  104. Implementation:
  105.  
  106. 6502 CPU - some invalid opcodes included.
  107.  
  108. 6522 system via - 100Hz (T1) ints, 50Hz video sync ints, asynchronous 
  109. keyboard
  110. ints.
  111.  
  112. 6522 user via - timers T1 & T2 working.
  113.  
  114. 6845 CRTC - graphics modes 0 to 6 are fully supported. a reasonable TELETEXT
  115. mode is available (but no fancy graphics or colours). MODE 8 (in AUG) also
  116. works.
  117.  
  118. ULA video - flashing colours and PALETTE are working.
  119.  
  120. runs BASIC, Wordwise Plus, Sphinx Adventure, Arcadians, Chuckie Egg,
  121. Planetoids, Snapper, White Knight II, Zalaga. These all work very reliably.
  122. This may give the impression that MacBeebEm is near completion but this is
  123. not the case!
  124.  
  125. All editing works and a copy cursor is present.
  126. Speed is slower than a real beeb but it's acceptable (on an LC475).
  127.  
  128. Future plans:
  129.  
  130. some form of saving and loading programs. multi-mode graphics screens.
  131. [CL]
  132.  
  133. --------------------------------------------------------------------- 6
  134. Emulator:  BBC386
  135. Author:    Stephen Quan (quan@sol.surv.utas.edu.au)
  136. Platform:  MS-DOS, Unix
  137. Language:  386+ and C
  138. Implementation:
  139.  
  140. I am currently working on both a C version and a 386 (assembly) version of
  141. an emulator for a bbc model-b.  The C version will actually run on any
  142. platform with a C compiler (no graphics yet...), but it is terrible slow
  143. since I have not implemented any optimisations.  Rather, I use the C
  144. version to verify my ideas before I dive into deep water with assembly
  145. code. 
  146.  
  147. The current status is, I have implemented 6502 without BCD and have hacks
  148. for OSWRCH and OSRDCH. 
  149.  
  150. I am now working on the keyboard and other shiela functions in FE40-FE4F.
  151. When this is completed, I can remove the hack for OSRDCH. Later on I will
  152. work on some of the 6845 (sheila functions in FE00-FE0F, I think) so I can
  153. remove the hack for OSWRCH. 
  154.  
  155. Overall, the hardware side, Fred, Jim & Sheila seems a bit more complex
  156. than I thought, and reading the AUG, studying (2nd semester started) and
  157. working, will mean I might be forced to a snail's pace. [SQ]
  158.  
  159. --------------------------------------------------------------------- 7
  160. Emulator:  My6502
  161. Version:   2.7 (5 August 1994)
  162. Author(s): Chris Rae (clr1@st-and.ac.uk)
  163. Platform:  IBM PC
  164. Language:  80286 assembler under Turbo Pascal 6 IDE
  165. Requires:  286+ processor
  166. Implementation:
  167.  
  168. 6502 instruction set working okay; still some minor bugs. No SHEILA I/O 
  169. implemented, OSWRCH and OSRDCH trapped and not implemented. Boots into 
  170. BASIC okay. [CR]
  171.  
  172. Future plans:
  173.  
  174. To implement &FE30 ROM switching, keyboard, then screen.
  175.  
  176. --------------------------------------------------------------------- 8
  177. Emulator:  BBCEm
  178. Author(s): Nigel Something; sorry - no surname! (apm1001@phx.cam.ac.uk)
  179. Platform:  Acorn Archimedes
  180. Language:  ARM Assembler
  181. Implementation:
  182.  
  183. Has no hardware poking as yet, can read keyboard boot up state on "switch
  184. on", takes input by blasting key presses into the 16byte keyboard buffer.
  185. Output is done after processing as the monitor is not yet connected. Can
  186. boot up to BASIC prompt in 1.5 secs Can execute BASIC programs and draw
  187. graphics. There are some OPcode bugs that cause it to crash occasionally. [N]
  188.  
  189. -----------------------------------------------------------------------
  190.  
  191.  
  192.  
  193. -- 
  194. +-------------------+-------------------------------------------------+
  195. | /-- |_| /-- | (~  | "And the driving is like the driving of Jehu,   |
  196. | \-- | | |   | _)  | the son of Nimshi, for he drives furiously."    |
  197. +-------------------+-------------------- Second Book of Kings 9 v20 -+
  198.  
  199.