Atom Nieuws 2001 nummer 1
../../../images/back.gif ../../../images/exit.gif ../../../images/forward.gif
pagina 2
BeebEm
een BBC emulator: van samenwerking word je groot!

BeebEm, één van de oudste BBC emulatoren voor PC is in de afgelopen 7 à 8 jaren tamelijk volledig gegroeid. Er is inmiddels een hele lijst van auteurs ontstaan die elk in zijn eigen specialiteit verbeteringen en/of aanvullingen aangebracht heeft.

De diverse programmeurs zijn:
David Gilbert (Emulator en UNIX/X)
Nigel Magnay (Windows port)
Marcus Goodman (DOS port)
Mike Wyatt (verder gewerkt aan
UNIX/Windows versies)
Jonathan Belson (BeOS port)
Richard Gellman (verder met de Windows
versie, M128 support)

BeebEm is freeware en mag vrij verspreid worden, mits de sources (de broncodes) er bij zitten. Iedereen is dan ook vrij iets aan het programma toe te voegen of te veranderen en men mag gebruik maken van de (stukjes) code.

Stamvader van BeebEm is David Allen Gilbert, die de eerste versie in 1994 voor UNIX/X schreef. Het had zijn beperkingen wat te lezen viel in de 'to do' lijst, de lijst met bugs, benodigde veranderingen en aan te brengen verbeteringen. Het meest opvallend was het trage geheel, je had een snelle PC nodig wilde je enig resultaat kunnen zien.

De volgende versie werd overgenomen door Nigel Magnay met een Win32 port, opgevolgd door Mike Wyatt, die op zijn homepage schreef: "... I have added a load of new features to make BeebEm one of the best BBC Micro emulators around."

Er kwam ook een DOS port (= omzetting) geschreven door Marcus Goodman, maar die heb ik nog niet werkend gehad, wel op het scherm doch niet in staat tot het inladen van diskimages.

In 1997 verscheen versie 0.79/0.81, besproken in Atom Nieuws, jaargang 16, nummer 3, pagina's 9-18 door L. Bijnagte, die zoals hij aan het eind van zijn artikel schreef: 'graag op de hoogte gehouden wilde worden met verdere ervaringen.'

Er is daarna veel veranderd en bijgekomen, doch niet qua uiterlijk.

BeebEm maakt nog steeds gebruik van pulldown-menu's, waar 1 extra aan toegevoegd is: Comms. Hier worden de instellingen gezet van de printer:
Output naar File, LPT 1 t/m 4 of COM 1 t/m 4.
Printer aan/uit
RS423 = nog in bewerking

Op het gebied van
Geluid:
keuze uit een toonhoogte van 44.1 kHz, 22.05 kHz (standaard) of 11.024 kHz en uit een geluidssterkte van full, high, medium (standaard) of low volume;

Snelheid:
real time (werkelijke snelheid), halve snelheid, 50-1 FPS (frame per seconde) opbouw;

Schermgrootte:
afmetingen van 160 x 128 t/m 1024 x 768, zijnde de ruimte
voor de Emulator waarin de grootte van het BBC scherm bepaald wordt;
is er niets veranderd, maar wel in opbouw van het geheel.

In het File menu zijn een paar commando's bijgekomen: New Disc 0, die een lege diskimage aanmaakt, en een Write Protect (schrijfbeveiliging) van DIsc 0 en Disc 1. Ook is er AMX-mouse support toegevoegd.

Een volledig scherm selecteren voor de Emulator gaat niet op de Windows manier (aanklikken van het vierkantje), maar dit moet geselecteerd worden bij View -> Full screen.
Na lange tijd van stilstand bracht Robert Schmidt met de versies 1.03/1.04 diverse verbeteringen aan, waaronder de keuze uit verschillende soorten monitor types. Gemaakt omdat sommige programma's - de Star Wars animatie oa - beter tot hun recht komen in zwart/wit. Te vinden bij: View-> Monitor type

Ook wordt er sindsdien gebruik gemaakt van DirectX drivers, als DirectSound en DirectDraw, die in- en uitgeschakeld kunnen worden. Inschakeling van DirectDraw zou de prestaties van bepaalde video-kaarten kunnen verbeteren. Er is keuze uit 3 modes.

En nu dan Richard Gellman (versie 1.30/1.32) die het geheel uitbreidde met een Master128 emulatie en dus gebruik van ADFS (Advanced Disc Filing System).

Dit alles laat de Emulator wel weer trager werken, aangezien alle hardware softwarematig wordt opgebouwd.

In versie 1.30 bestond al de mogelijkheid om een Master128 te emuleren. Dat ging nogal omslachtig door in een beebem.ini file , die in de Windows directory gezet moest worden, op te geven of je een BBC of Master emulatie wilde:

[Model]
MachineType = 0 voor een BBC
MachineType = 1 voor een Master
Alleen werkte het niet...

In versie 1.32 is het aangepast en kan men via het menu Options de keuze tussen BBC en Master selecteren door aanvinken bij -> BBC Model van BBC Model B of BBC Master 128.

Plaats rom-images in de BeebFile directory en disk-images in de DiscImg directory. De benodigde roms voor de emulator zelf zijn al aanwezig.

Als de BBC Model B gekozen is (+DFS):

Ga naar het menu File en klik aan 'Load Disc 0', vervolgens verschijnt een overzicht van de disk-images die op schijf staan. Klik de naam aan en wacht. Tik nu een *CAT in (of afgekort *.) om te zien wat er in de image staat. Met een !Boot file en rechtsboven Option 03 (Exec) - wat betekent dat de !Boot optie ingeschakeld is - kan met SHIFT+F12 de schijf automatisch gestart worden; staat het er niet, maar wel een !Boot file, tik dan *EXEC !Boot in, zo start het programma op de schijf ook op... Anders een file laden met CHAIN"<naam>" of *RUN <naam>.

Als de BBC Master 128 gekozen is (+ ADFS):

Eerst de ADL image inladen met 'Load Disc 0'. Het is beter om AUTO te kiezen bij de diverse soorten file types, dan wordt de image tenminste herkend. Het omschakelen van DFS naar ADFS gaat dmv A + BREAK (F12) Met *. zie je wat er op de schijf staat... in geval van een !Boot, zie boven bij de BBC.

De Master Emulatie maakt inderdaad gebruik van de roms die ook in een echte Master zitten, zoals Basic4, DFS/ADFS, Edit, Terminal, View, Viewsheet en de MOS rom die allemaal moeten worden ingeladen. Zonder werkt niet. Er is een rom-manager toegevoegd die zorgt dat de geselecteerde roms op de juiste plaats ingeladen worden. Daarvoor is behalve de Beebem132.zip ook nog vcl50.zip nodig.

Extra roms die je in wilt laden, zet je in het roms.cfg file met een tekstverwerker. Je hoeft alleen de naam maar in te tikken en te zorgen dat deze roms in de BeebFile directory staan.

Wat wel even vermeld moet worden, dat Mode 7 ook aangepast is. Daardoor is het nu mogelijk bugvrij te gaan genieten van een Arabische View reclame!

E‚n ding in het File menu 'Load Tape' - bedoeld om de mogelijkheid te bieden UEF tape images in te kunnen lezen (UEF Tape File Support), werkt nog niet. Als de tape optie wordt aangevinkt, gebeurt er niets. *)

*) Inmiddels is begin mei versie 1.35 van BeebEm uitgekomen met daarin een wel werkende Tape optie.

Klik 'Load Tape' aan in het File menu, dan opent zich een nieuw venster. Er wordt allereerst gezocht in de Tapes directory naar .uef files. Klik het gekozen file aan en wacht tot het (in)geladen is. Hou er wel rekening mee, dat je je standaard in het Disk Filing System (DFS) bevindt en dus moet overschakelen naar het Cassette Filing System (CFS) door intikken van *TAPE.

Ook het laden van files gaat nu anders. Het is niet nodig om een naam in te geven, maar CHAIN"" of *RUN "" voldoet. Vervolgens moet je geduld hebben, want de tape optie gaat nog weer veeeeeel langzamer ...

In het Comms menu is een Rewind Tape optie toegevoegd en in het Options menu gebruik van de Tube. Dit laatste heb ik nog niet uitgeprobeerd.

Nieuwe BBC Emulator.

Sinds eind maart 2001 is er een nieuwe BBC emulator (voor DOS) bij, 'B-EM', geschreven door Tom Walker. Deze ondersteunt behalve de gewone .ssd images ook de 'allernieuwste' UEF (Unified Emulator Format) files, file types die speciaal voor ElectrEm - een Electron emulator - uitgevonden werden. B-EM is nog in ontwikkeling en er wordt door de auteur om samenwerking verzocht.

Meer gegevens over de Electron Emulator en de techniek van het UEF formaat is te vinden op de Electron Emulator Homepage :
http://electrem.emuunlim.com/

B-Em is te downloaden van: The BBC Lives!
http://bbc.nvg.org/
Hier vindt u bovendien allerlei rom- en diskimages.

Probeer ook eens een BBC emulator en kom weer in de ban van Acht Bit!

Janny Looyenga.
Aconet email: 77:8500/302.25
Internet email: janny@catslair.demon.nl
../../../images/back.gif ../../../images/exit.gif ../../../images/forward.gif