/****************************************************************************/ /* Beebem - (c) David Alan Gilbert 1994 */ /* ------------------------------------ */ /* This program may be distributed freely within the following restrictions:*/ /* */ /* 1) You may not charge for this program or for any part of it. */ /* 2) This copyright message must be distributed with all copies. */ /* 3) This program must be distributed complete with source code. Binary */ /* only distribution is not permitted. */ /* 4) The author offers no warrenties, or guarentees etc. - you use it at */ /* your own risk. If it messes something up or destroys your computer */ /* thats YOUR problem. */ /* 5) You may use small sections of code from this program in your own */ /* applications - but you must acknowledge its use. If you plan to use */ /* large sections then please ask the author. */ /* */ /* If you do not agree with any of the above then please do not use this */ /* program. */ /* Please report any problems to the author at gilbertd@cs.man.ac.uk */ /****************************************************************************/ /* 6502 core - 6502 emulator core - David Alan Gilbert 16/10/94 */ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ Instructions ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Run program beebdos.exe in the SAME directory as any .SSD .DSD disc image files and three rom files called 'BASIC', 'OS12' and 'DNFS'. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ History ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ v1.2 3 Sept 97 -------------- Screen Saver Added! Press CTRL F12 and the screen will be saved as a BMP file Source cleaned up and added to archive Sound quality improved Game menu accessed via TAB key from disc menu page 'beebdiscdir' environment variable now works Type 'set beebdiscdir=c:\discdir' to set the directory containing disc images v1.1b 22 feb 97 -------------- Ctrl-Break works Mode7 clears the bottom of the screen Game load menu option with -g v1.1 4 feb 97 ------------- Screen mode changed to 376x282 modex mode Menu recoded in graphics mode All opcodes supported Cout prints removed from disc8271.cpp v1.0 BeebemDOS by MHG V1.0 25 Dec 1996 -------------------------------------- This version of Beebem is based on Beebem by David Alan Gilbert The changes are: (1) Compiled with Watcom C compiler uses dos4gw.exe dos extender (2) Dos Keyboard support (3) Sound Blaster 8 bit support (4) Sound Emulation tweaked and set to 22,000 Hz (5) Disc Menu front end - loads files with .SSD and .DSD extensions of acorn 31 file or watford 62 file (with a watford dfs rom) format discs (5) Uses dos modeX 320*240 VGA mode (6) Some undoucumented opcode support (Zalaga works!! - sort of) ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ Keys ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ The keys are mapped to roughly their relative positions on the BBC keyboard rather than their symbols BBC KEYBOARD f0 f1 f2 f3 f4 f5 f6 f7 f8 f9 BRK 20 71 72 73 14 74 75 16 76 77 xx ! " # $ % & ' ( ) = ~ | ESC 1 2 3 4 5 6 7 8 9 0 - ^ \ LFT RGT 70 30 31 11 12 13 34 24 15 25 27 17 18 78 19 79 { p TAB Q W E R T Y U I O P @ [ _ UP DWN 60 10 21 22 33 23 44 35 26 36 37 47 38 28 39 29 + * } CPS CTL A S D F G H J K L ; : ] RET 40 1 41 51 32 43 53 54 45 46 56 57 48 58 49 < > ? SLK SHF Z X C V B N M , . / SHF DEL CPY 50 00 61 42 52 63 64 55 65 66 67 68 00 59 69 SPACEBAR 62 with the exception of ShiftLock (mapped to ALT), Pound Sign (mapped to F11) and }] (mapped to ~`) IBM BBC ------------------------- F1-F10 F0-F9 F11 _ & pound ALT ShiftLock ~ ` } ] DEL COPY _ - = - + = | \ { [ @ } ] { [ : ; + ; " ' * : F12 goto menu pause/break break ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ The Game Select menu ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ The Game select menu can be found by pressing the TAB key on the disc select menu screen. Pressing TAB again will bring you back to the disc selection screen. The game select menu will very probably NOT work first time on your machine. This is because you have to set it up to work with the disc files that you have. At the moment it is set up only as an example of how to do it. The game select menu is driven from the file 'games.txt' which you are free to edit. To disable the game menu delete the games.txt file Each line in this text file corresponds to a game. e.g. 'rocket raid' acornsoft acorn1.dsd 0 $ C rocket There are 7 fields to fill in as follows: (1) The title of the game displayed in the menu (enclosed in quotes if it contains a space). (2) The name of the publisher of the game. (3) The name of the discfile that the game is present on e.g. GAMES12.SSD. (4) The side of the disc that the game is present on 0 or 2. (5) The directory that the game file is in (normally $ the default). (6) An R or an C which means CHAIN"" or *RUN the gamefile. (7) The name of the gamefile on the disc e.g. ROCKET The game menu may fail to load a game if any of the above fields are incorrect for the actual disc images YOU have. Discovering what the gamefile is called can be done by cataloging the files present on a disc by typing *CAT 0 or *CAT 2 A list of files present will be shown. Then try *RUN filename or CHAIN "filename" to run a file. Some files will hang the machine. Filenames that cause a game to be loaded can be considered 'gamefiles' and can be added to games.txt Directories are indicated by a letter and a dot before a file name so if a file appears as D.BIGGAME the filename is BIGGAME and the directory is D ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ Common Problems ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ THE GAME MENU ------------- See explanation above. DISC IMAGES ----------- These should be named .SSD for single sided images and .DSD for interleaved doubled sided images. ROM FILES --------- The emulator needs three rom files from an origanal BBC computer to run which should be renamed to 'BASIC' 'OS12' and 'DNFS'. BASIC is the 16K bbc basic rom. OS12 is the 16K operating system rom. DNFS is the 16K disc filing system rom needed for the disc drive emulation. The DNFS ROM ------------ Some disc images with large >31 file directories only work only with a Watford DFS rom. If the DNFS rom is working and the disc image is good then after the menu page you should be able to type *CAT at the BBC prompt > and see the directory of the disc. Then you can try *RUN filename or CHAIN "filename" with any file names you can see. If *CAT doesn't work then the DNFS image is bad or the disc image is bad. DISC COMMANDS ------------- *INFO *.* will show you the sizes and load and execution addresses of the files You can try pressing SHIFT-BREAK_SHIFT which will cause the bbc to run the !BOOT file on a disc image which often runs a menu program. Although not all discs will work this way. CHAIN "MENU" can also bring a menu program up , but not always. *RUN !BOOT will run the disc boot file if present. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ Any Comments ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ marcus@player1.com ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ ³ ³ ³ ³ Acknowledgements ³ ³ ³ ³ ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ David Alan Gilbert ------------------ The code for this emulator is 99.5% that of David Alan Gilbert's Alex Hornby ----------- 6502 opcode additions modified from the x2600 emulator by Alex Hornby which he modified from the 6507 CPU emulation Originally from X64. Themie Gouthas -------------- 376x282 modex mode David Welch ----------- Sound Blaster Stuff