DOSBox MorphOS
==============
DOSBox is a DOS emulator capable of running a large collection of classic
DOS games and applications on modern systems.
This edition is a substantially extended MorphOS port based on DOSBox 0.74.
The original SDL platform layer has been replaced by native MorphOS
components. PowerSDL.library is not required.
The port uses native MorphOS APIs for:
- Intuition windows and input
- CyberGraphX display output
- CGXVideo overlay output
- TinyGL/OpenGL accelerated output
- AHI audio
- MUI configuration GUI
- timer.device and Exec synchronization
- SANA-II networking
Main features
=============
- Native SDL-free MorphOS frontend.
- PowerPC dynamic recompilation/JIT.
The optimized PPC JIT can reach up to 150% of the performance of the
previous MorphOS version, depending on the emulated program, selected
CPU settings and host hardware.
- CPU emulation for 286/386 real mode and protected mode software.
- XMS, EMS, DOS memory, directory-mounted drives and disk images.
- Hercules, CGA, Tandy, EGA, VGA, SVGA and VESA graphics.
- Native display backends:
surface
CyberGraphX software presentation.
overlay
CGXVideo hardware overlay.
opengl
MorphOS TinyGL/OpenGL output with linear filtering.
openglnb
MorphOS TinyGL/OpenGL output with nearest-neighbour filtering.
- 3dfx Voodoo Graphics SST-1 emulation.
Voodoo rendering can use either the complete software rasterizer or a
native MorphOS TinyGL/OpenGL backend. The TinyGL backend translates the
emulated SST-1 operations directly to MorphOS TinyGL without using SDL.
Supported Voodoo functions include triangle rendering, texture mapping,
depth buffering, blending, chroma and alpha tests, fog, framebuffer
operations, clears, swaps and LFB access.
- Native AHI sound output.
- Sound Blaster, Gravis UltraSound, MIDI, PC speaker and related DOS audio
hardware emulation.
- Windows 3.1 and Windows 95 absolute mouse integration.
The matching DOSBox-X pointer integration driver must be installed inside
the guest Windows system. After installation, the pointer can move between
MorphOS and the emulated desktop without capturing the mouse.
- Selectable pointer display modes:
Windows only
Show the pointer drawn by the guest Windows system and hide the
MorphOS pointer over the emulation display.
Both
Show both the guest Windows pointer and the MorphOS pointer.
MorphOS only
Show the MorphOS pointer and suppress the emulated S3 hardware
cursor used by Windows.
The MorphOS-only mode can suppress the normal S3 hardware cursor. A
software cursor drawn directly into the Windows framebuffer by an
application or another display driver may still remain visible.
- Native NE2000 networking through a MorphOS SANA-II device.
- Native MUI configuration editor and keyboard mapper.
- Full-screen, windowed, overlay and TinyGL operation.
Installation
============
Copy the DOSBox directory to a location of your choice and start the DOSBox
executable.
TinyGL is optional for normal DOSBox use, but is required for:
- output=opengl
- output=openglnb
- Voodoo card=tinygl
If TinyGL acceleration is unavailable, use a CyberGraphX output mode and the
software Voodoo renderer.
Configuration GUI
=================
Starting DOSBox without command-line arguments opens the native MUI
configuration GUI.
The GUI can also be opened explicitly with:
DOSBox -gui
or:
DOSBox -editconf
To bypass the GUI and start directly with the current configuration:
DOSBox -nogui
A specific configuration file can be loaded with:
DOSBox -conf Work:DOSBox/myconfig.conf
The configuration window contains five main tabs.
Core
----
General emulator and display configuration, including:
- machine type
- memory size
- windowed or full-screen operation
- display output backend
- full-screen and window resolution
- frame skipping and rendering options
- mouse autolock and sensitivity
- general DOSBox options
Recommended display choices:
surface
Safe native CyberGraphX output.
overlay
Fast CGXVideo overlay output when supported.
opengl
TinyGL output with linear filtering.
openglnb
TinyGL output with sharp nearest-neighbour pixels.
CPU
---
CPU and PowerPC JIT configuration, including:
- CPU core
- CPU type
- cycle mode and fixed cycle count
- PPC JIT register cache
- PPC JIT aggressive flags
- JIT statistics and diagnostic options
For the highest performance, use the dynamic core and tune the cycle setting
for the selected game. Compatibility-sensitive programs can be tested with
the normal core.
The maximum JIT gain depends on the program. The quoted result of up to 150%
means up to one and a half times the speed of the previous MorphOS build, not
a guaranteed improvement for every title.
Audio
-----
Audio configuration, including:
- native AHI mixer output
- mixer rate and block size
- MIDI
- Sound Blaster
- Gravis UltraSound
- PC speaker
- additional emulated sound devices
If audio breaks up, first try a larger mixer block size. Larger values improve
stability but also increase audio latency.
I/O
---
Input and communication devices, including:
- joystick
- mouse integration
- serial ports
- IPX settings
Mouse integration setup
-----------------------
1. Open the I/O tab.
2. In the Mouse Integration group select:
none
Standard captured DOSBox mouse.
win31
DOSBox-X pointer integration for Windows 3.1.
win95
DOSBox-X pointer integration for Windows 95.
3. Select the Pointer mode:
Windows only
Both
MorphOS only
4. Use Save && Run.
5. Install the matching DOSBox-X pointer integration driver inside the guest
Windows system.
Without the guest driver, Windows continues to use the ordinary emulated PS/2
mouse and mouse capture may still be required.
PCI
---
PCI-related and accelerated device configuration.
Voodoo setup
------------
1. Open the PCI tab.
2. In the Voodoo group set Voodoo card to one of:
false
Disable Voodoo emulation.
software
Use the complete CPU software rasterizer.
tinygl
Use the native MorphOS TinyGL/OpenGL renderer.
3. For normal TinyGL use, the recommended initial settings are:
TinyGL submission: arrays
TinyGL tuning: fast
State capture cache: enabled
Shader support: disabled
Debug: disabled
4. Try vbo or vbo-indexed only when supported reliably by the installed
TinyGL driver and graphics hardware.
5. Shader support is optional. If shader creation or capability checks fail,
the fixed-function renderer is used as a fallback.
6. Most Voodoo options require restarting DOSBox.
NE2000 / SANA-II setup
----------------------
1. Enable NE2000 in the PCI tab.
2. Select the MorphOS SANA-II device, for example:
DEVS:Networks/rtl8139.device
3. Select the correct device unit.
4. Configure the emulated NE2000 base address and IRQ if the guest software
requires non-default values.
The host network stack can remain active. The backend uses the station address
of the selected SANA-II unit.
Autoexec editor
===============
The lower part of the GUI contains the Autoexec editor.
Commands entered there are executed after DOSBox starts. It can be used to
mount directories, select drives and launch a game automatically, for example:
mount c Work:DOSGames
c:
cd DOOM
DOOM.EXE
GUI buttons
===========
Save
Save the current settings to the active configuration file and keep the
configuration window open.
Run
Apply the settings for the current session and start DOSBox without saving
the configuration file.
Save && Run
Save the settings and start DOSBox.
Cancel
Close the configuration window without starting DOSBox.
Project menu
============
Load config...
Load another DOSBox configuration file.
Save config...
Save the current configuration under a selected filename.
Keyboard mapper...
Open the native keyboard mapper while keeping the configuration window
available.
About...
Display program and port information.
Exit
Close the configuration GUI.
Useful keys
===========
The default mapper contains the usual DOSBox control shortcuts:
Ctrl-F9 Quit DOSBox
Ctrl-F10 Capture or release the mouse
Alt-Enter Toggle full-screen mode
Ctrl-Alt-Home Restart DOSBox
The mappings can be changed with Project -> Keyboard mapper.
Notes
=====
Some configuration properties can only be changed during program startup.
Use Save && Run or restart DOSBox after changing CPU, Voodoo, networking or
mouse integration settings.
Voodoo TinyGL performance and compatibility depend on the MorphOS graphics
driver, graphics card, selected submission mode and game.
The PPC JIT performance result is workload-dependent. Some programs are
limited by graphics, sound, memory access or emulated hardware rather than by
CPU execution.
DOSBox emulates historical PC hardware. It does not provide a complete modern
virtual machine and is intended primarily for DOS software and supported
Windows 3.x/9x configurations.
About DOSBox
============
DOSBox emulates a DOS-compatible computer with CPU, memory, graphics, sound,
input and storage hardware. It can run many classic games and applications
which no longer work directly on modern computers.
You can re-live the classic DOS era without keeping the original PC hardware.
DOSBox is free and open-source software released under the GNU General Public
License.
Credits
=======
Original DOSBox:
The DOSBox Team
MorphOS port:
Michal Zukowski
Selected Voodoo and compatibility work is based on open-source DOSBox-X and
Aaron Giles implementations and has been adapted for the native MorphOS
backend.
All trademarks and product names are the property of their respective owners.
|