Carmelo Maiolino's blog

Android developer, developer of Combian64, Dosbian, Amstrian

Distro – Dosbian

IMPORTANT, about lack of Raspberry Pi from market

News: Dosbian 2.0 is coming 😉

It’s been awhile since Dosbian 1.5 was released and I hope you had fun with it. This 2023 will bring you a brand new Dosbian rebuilt from scratch. Dosbian 2.0 will be updated with the wonderful Dosbox-X, a super modern version of Dosbox light years ahead any other Dosbox version.

It will run on Raspberry Pi 4 / 400. It’s highly probable that the current Dosbox versions of Dosbian 1.5 (Dosbox-SVN and Dosbox-ECE) will be discarded to let room to the wonderful Dosbox-X. As you can see from the teaser picture above, you have a tons of customizable options that will allow you to emulate your preferite machine.


A 486DX machine in the palm of your hand

Dosbian is the first Raspberry Pi distro totally dedicated to the DOS world. It boots straight to Dosbox, from there, you can install whatever you want and building your retro-pc 🙂
Whether you love DOS games or you’re just fond of all the DOS retro software, this is the distro for you.

Just switch on your Raspberry Pi and in few seconds your Dos prompt will be ready to use. No configuration needed, just an old school command like based machine to enjoy!

Based on DosBox-SVN and DosBox-ECE, It guarantees you a decent speed in games and good performances in software emulation.

What you can do with your Dosbian distro:

  • Run all retro Pc Sofware (DOS / Win 3.1 / Win 95 / Win98)
  • Run most of 90’s retro games
  • Run games from LaunchBox frontend
  • Networking operations and bridging with real LAN
  • Create empty floppy of size: 320KB, 720KB, 1,44MB
  • Create empty HDDs of size: 256MB, 512MB, 1GB, 2GB
  • Mount Floppy disk, CD-ROM or HDD using a GUI driven utility
  • Keep Dosbian system file updated


Dosbian doesn’t contains any copyrighted material.
It’s up to you to install games/software or the operating system.

I knew someone on the web is selling my distro with OS pre-installed (that’s illegal). I’m not involved in this, so please, if you want a genuine free Dosbian image, download the distro only from my blog.

The images below are just examples on what you can run on Dosbian, but nothing is included inside the distribution.

Example games running on Dosbian

Some software Dosbian is able to run

What’s new in Dosbian 1.5?

  • Added patch NE2000 network adapter to Dosbox-SVN
  • Added downloadable optional package MT-32 Roland
  • Added Dosbox ECE (Enhanced Community Edition), this new version, allow to:
    – Reserve more memory (max 384MB) for all Win9x;
    – Increase Video memory to 4MB
    – Have a better Pc speaker emulation
    – Editing MT-32 emulator settings from config
    – Emulate correctly Tandy, CGA, EGA
  • Removed Dosbox splash screen (all versions)
  • Fixed menu shortcut not working
  • Fixed ImageCreator tool not creating hdd greater than 512MB

Retro-software?, yes please!

Dosbian is not only for games, it’s also an environment for new software development.


A Dos games frontend developed in Quickbasic by Daniel Hofmann. Visit the author page for further details

How to run games on Dosbian?

Here some video showing the game Diablo running on Windows 95 and Red Alert on Windows 98 / Raspberry Pi 4 2GB, of course with Dosbian 🙂

( Video courtesy of Daniel Řepka )

Terms of use and distribution

Dosbian is a donationware project, this means you can modify, improve, customise it as you like for your own use.

Dosbian Facebook group

Join the official Facebook group, a place where you can meet other friends and discuss about games, configurations, issues, etc.


Please note: The distro doesn’t contain any copyrighted material.

Dosbian is compatible with the following Raspberry Pi models:

  • Raspberry Pi 1 (Slow, need to edit configuration)
  • Raspberry Pi Zero (Slow, need to edit configuration)
  • Raspberry Pi 2B (Slow, need to edit configuration)
  • Raspberry Pi 3B
  • Raspberry Pi 3B+
  • Raspberry Pi 3A+
  • Raspberry Pi 4B
  • Raspberry Pi 400

Do you like the project? Please consider to make a free donation using the button below


For Raspberry Pi 3B/3B+ /4B / 400 only
Download Dosbian 1.5 – Pi 400

Note: Unzip the image with 7Zip and use Win32DiskImager or Balena Etcher to flash it.

Did you like Dosbian?
Try Combian64, a dedicated distro that boots straight in to one of the old glory Commodore machines (64,128, Vic 20, PET, ecc).

Where to start from?

Here you can find some useful guide, link and tutorial:

Need a 3D case for your Dosbian PC?

This wonderful case was designed and developed by Jimmy Johansson and you can find it on Thingiverse

Do you have anything to tell? Write a comment 🙂

100 risposte a "Distro – Dosbian"

  1. Hi,

    I just bought a brand new Pi 4B and have flashed dosbian 1.5 onto the card, however its telling me that the start.elf file is out of date and the hardware requires a newer form. Could you help guide me in the right direction?

    1. Hi,
      Unfortunately new version of Raspberry Pi OS installed on the current devices can’t boot the older version of OS (Dosbian was built on Buster version and the current one is BullsEye).

      Dosbian needs to be ported to newer OS version :/

    2. Hello if you have an older revision pi4 1.4 or 1.2 etc put the card there do a full upgrade

      Eg sudo apt update && sudo apt -y upgrade

      And when its finish put the card in pi4 rev1.5

      1. Or if you have an older pi3 or pi2 do the upgrade there and after put the card in pi4 rev1.5

    3. Hi all,

      Thanks so much for your replies, I appreciate you all taking the time to respond.

      Sadly I don’t have any of these options, the only Pi I have is a 1B (which I already tried Dosbian with, with predictable results)

      I don’t suppose there are any other ideas?

      1. I think you don’t need to run Dosbian on Pi 1, just do the software upgrade from there. After that, just move the microSD to your Pi 4 🙂

      2. Update dosbian from pi1 it will take a long time though,do a soft overclock at 800mhz first to speed up things

  2. Hi merry Christmas

    Are there any updated/easy instructions to install windows 98 ??

    The instructions from Daniel Řepka about How to install Windows 98 on Raspberry Pi 4B are very complicated

    I tried windows 98 on dosbox-x that its very easy to install but its performing very slow on a Raspberry Pi 4

    Thank you

    1. Good day
      I downloaded Dosbian and installed it on the Pi. With Raspian I have access to the USB ports. Unfortunately not with Dosbian. Otherwise I would have been able to load the programs onto the SD card. I couldn’t connect the Raspery Pi to the computer. It’s a great project. Unfortunately everything is a bit complicated. Is it the same with other people that UBS is not recognized? Thanks for your answer.

      1. Hi,
        Here the solution
        Go to Dosbian terminal and type sudo nano /lib/systemd/system/systemd-udevd.service
        change the item PrivateMounts from yes to no
        Save and reboot
        Your USB will be now visible (only Fat32)


    1. don’t forget the “dot” between “daniel.the-hofmanns” and “de” and a “forward slash” between “de” and “dload.php” This comment section wouldn’t let me add a proper link…

  3. hi to all! please some advices to how activate mt32 emulation? already have the roms in correct format….miss the others steps! thanks in advance

  4. Hi, my Raspberry Pi 4 is giving me an error when I try to boot, the error code is “start4.elf is not compatible, please update to the newest software”. Do you know how to resolve this issue?

  5. Hi, I tried Dosbian and looks superb. However, seems the repository for Munt is down:

    So Dosbian now does not install Munt, hence MT32 emulation is not working. Can you please put the repo online again or provide a workaround? Thank you!

  6. I like Dosbian very much.
    Is there bluetooth support so that it would be possible to use a 8bitdo gamepad as a controller?

  7. Hi! How do I modify the path?
    By default it’s set to Z:\ only and I’d like to add C:\TOOLS to it by default.
    I tried editing Z:\AUTOEXEC.BAT by adding the line SET PATH=Z:\;C:\TOOLS, but the file is read only.

  8. Is it possible to SSH into dosbian from another computer?
    I can SSH into my Raspberry Pi’s no problem but so far I have been unsuccessful trying to SSH into Dosbian after setting the SSH in raspi-conifg. Any suggestions?

  9. Hi I’m running Dosbian 1.5 for Pi 400 on a Pi 3B+ and could not get the wifi work. I know older Pi’s are no longer supported but can anyone confirm that the wifi works or not on the 3B+? Thanks.

  10. Hi, I’m trying to run the classic Lode Runner game but it is too fast. How do you slow it down in Dosbian. Thanks.

  11. I was able to follow the Windows 98 install guide to success until you need to restart into windows for the second round of installations (Plug and Play and Device installation). I then get errors that change slightly every time I try this (RunDLL is common). When I boot Windows 98 for the first time explorer either fails or going to control panel fails (Exception occurs). I am running a PI400 with the corresponding image. Any guidance would be appreciated.

    Config File:
    # This is the configuration file for DOSBox SVN-Daum. (Please use the latest version of DOSBox)
    # Lines starting with a # are comment lines and are ignored by DOSBox.
    # They are used to (briefly) document the effect of each option.

    # fullscreen: Start dosbox directly in fullscreen. (Press ALT-Enter to go back)
    # fulldouble: Use double buffering in fullscreen. It can reduce screen flickering, but it can also result in a slow DOSBox.
    # fullresolution: What resolution to use for fullscreen: original, desktop or a fixed size (e.g. 1024×768).
    # Using your monitor’s native resolution with aspect=true might give the best results.
    # If you end up with small window on a large screen, try an output different from surface.
    # windowresolution: Scale the window to this size IF the output device supports hardware scaling.
    # (output=surface does not!)
    # output: What video system to use for output.
    # Possible values: surface, overlay, opengl, openglnb, openglhq, ddraw, direct3d.
    # autolock: Mouse will automatically lock, if you click on the screen. (Press CTRL-F10 to unlock)
    # sensitivity: Mouse sensitivity.
    # waitonerror: Wait before closing the console if dosbox has an error.
    # priority: Priority levels for dosbox. Second entry behind the comma is for when dosbox is not focused/minimized.
    # pause is only valid for the second entry.
    # Possible values: lowest, lower, normal, higher, highest, pause.
    # mapperfile: File used to load/save the key/event mappings from. Resetmapper only works with the default value.
    # pixelshader: Pixelshader program (effect file must be in Shaders subdirectory).
    # usescancodes: Avoid usage of symkeys, might not work on all operating systems.
    # overscan: Width of overscan border (0 to 10). (works only if output=surface)


    # language: Select another language file.
    # machine: The type of machine DOSBox tries to emulate.
    # Possible values: hercules, cga, cga_mono, tandy, pcjr, ega, vgaonly, svga_s3, svga_et3000, svga_et4000, svga_paradise, vesa_nolfb, vesa_oldvbe, amstrad.
    # vmemsize: Amount of video memory in megabytes.
    # The maximum resolution and color depth the svga_s3 will be able to display
    # is determined by this value.
    # 0: 512k (800×600 at 256 colors)
    # 1: 1024×768 at 256 colors or 800×600 at 64k colors
    # 2: 1600×1200 at 256 colors or 1024×768 at 64k colors or 640×480 at 16M colors
    # 4: 1600×1200 at 64k colors or 1024×768 at 16M colors
    # 8: up to 1600×1200 at 16M colors
    # For build engine games, use more memory than in the list above so it can
    # use triple buffering and thus won’t flicker.
    # captures: Directory where things like wave, midi, screenshot get captured.
    # memsize: Amount of memory DOSBox has in megabytes.
    # This value is best left at its default to avoid problems with some games,
    # though few games might require a higher value.
    # There is generally no speed advantage when raising this value.
    # memsizekb: Amount of memory DOSBox has in kilobytes.
    # This value should normally be set to 0.
    # If nonzero, overrides the memsize parameter.
    # Finer grained control of total memory may be useful in
    # emulating ancient DOS machines with less than 640KB of
    # RAM or early 386 systems with odd extended memory sizes.
    # memalias: Memory aliasing emulation, in number of valid address bits.
    # . Many 386/486 class motherboards and processors prior to 1995
    # suffered from memory aliasing for various technical reasons. If the software you are
    # trying to run assumes aliasing, or otherwise plays cheap tricks with paging,
    # enabling this option can help. Note that enabling this option can cause slight performance degredation. Set to 0 to disable.
    # Recommended values when enabled:
    # 24: 16MB aliasing. Common on 386SX systems (CPU had 24 external address bits)
    # or 386DX and 486 systems where the CPU communicated directly with the ISA bus (A24-A31 tied off)
    # 26: 64MB aliasing. Some 486s had only 26 external address bits, some motherboards tied off A26-A31
    # forcerate: Force the VGA framerate to a specific value(ntsc, pal, or specific hz), no matter what
    # cgasnow: When machine=cga, determines whether or not to emulate CGA snow


    # frameskip: How many frames DOSBox skips before drawing one.
    # aspect: Do aspect correction, if your output method doesn’t support scaling this can slow things down!.
    # linewise: Draw the display line by line. Needed for certain special graphics effects in games and demos. Can be changed at runtime but will be put in effect at the next mode switch.
    # char9: Allow 9-pixel wide text mode fonts.
    # multiscan: Set this value to true to allow zooming gfx effects used in demos. It will disable several options such as scalers though.
    # scaler: Scaler used to enlarge/enhance low resolution modes. If ‘forced’ is appended,
    # then the scaler will be used even if the result might not be desired.
    # Possible values: none, normal2x, normal3x, normal4x, normal5x, advmame2x, advmame3x, advinterp2x, advinterp3x, hq2x, hq3x, 2xsai, super2xsai, supereagle, tv2x, tv3x, rgb2x, rgb3x, scan2x, scan3x, hardware_none, hardware2x, hardware3x, hardware4x, hardware5x, xbrz.
    # autofit: Best fits image to window
    # – Intended for output=direct3d, fullresolution=original, aspect=true


    # vsyncmode: Synchronize vsync timing to the host display. Requires calibration within dosbox.
    # Possible values: off, on, force, host.
    # vsyncrate: Vsync rate used if vsync is enabled. Ignored if vsyncmode is set to host (win32).
    # Possible values:.


    # core: CPU Core used in emulation. auto will switch to dynamic if available and
    # appropriate.
    # Possible values: auto, dynamic, normal, full, simple.
    # cputype: CPU Type used in emulation. auto emulates a 486 which tolerates Pentium instructions.
    # Possible values: auto, 386, 486, pentium, 386_prefetch, pentium_mmx.
    # cycles: Amount of instructions DOSBox tries to emulate each millisecond.
    # Setting this value too high results in sound dropouts and lags.
    # Cycles can be set in 3 ways:
    # ‘auto’ tries to guess what a game needs.
    # It usually works, but can fail for certain games.
    # ‘fixed #number’ will set a fixed amount of cycles. This is what you usually
    # need if ‘auto’ fails (Example: fixed 4000).
    # ‘max’ will allocate as much cycles as your computer is able to
    # handle.
    # Possible values: auto, fixed, max.
    # cycleup: Amount of cycles to decrease/increase with keycombos.(CTRL-F11/CTRL-F12)
    # cycledown: Setting it lower than 100 will be a percentage.
    # isapnpbios: Emulate ISA Plug & Play BIOS. Enable if using DOSBox to run a PnP aware DOS program or if booting Windows 9x.
    # Do not disable if Windows 9x is configured around PnP devices, you will likely confuse it.


    # aux: Enable emulation of the 8042 auxiliary port. PS/2 mouse emulation requires this to be enabled
    # auxdevice: Type of PS/2 mouse attached to the AUX port
    # Possible values: none, 2button, 3button, intellimouse, intellimouse45.


    # voodoo: Enable VOODOO support.
    # Possible values: false, software, opengl, auto.


    # nosound: Enable silent mode, sound is still emulated though.
    # swapstereo: Swaps the left and right stereo channels.
    # rate: Mixer sample rate, setting any device’s rate higher than this will probably lower their sound quality.
    # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
    # blocksize: Mixer block size, larger blocks might help sound stuttering but sound will also be more lagged.
    # Possible values: 1024, 2048, 4096, 8192, 512, 256.
    # prebuffer: How many milliseconds of data to keep on top of the blocksize.


    # mpu401: Type of MPU-401 to emulate.
    # Possible values: intelligent, uart, none.
    # mididevice: Device that will receive the MIDI data from MPU-401.
    # Possible values: default, win32, alsa, oss, coreaudio, coremidi, mt32, synth, timidity, none.
    # midiconfig: Special configuration options for the device driver. This is usually the id of the device you want to use.
    # or in the case of coreaudio, you can specify a soundfont here.
    # When using a Roland MT-32 rev. 0 as midi output device, some games may require a delay in order to prevent ‘buffer overflow’ issues.
    # In that case, add ‘delaysysex’, for example: midiconfig=2 delaysysex
    # See the README/Manual for more details.
    # mt32.reverse.stereo: Reverse stereo channels for MT-32 output
    # Possible values: off, on.
    # mt32.verbose: MT-32 debug logging
    # Possible values: off, on.
    # mt32.thread: MT-32 rendering in separate thread
    # Possible values: off, on.
    # mt32.dac: MT-32 DAC input emulation mode
    # Nice = 0 – default
    # Produces samples at double the volume, without tricks.
    # Higher quality than the real devices
    # Pure = 1
    # Produces samples that exactly match the bits output from the emulated LA32.
    # Nicer overdrive characteristics than the DAC hacks (it simply clips samples within range)
    # Much less likely to overdrive than any other mode.
    # Half the volume of any of the other modes, meaning its volume relative to the reverb
    # output when mixed together directly will sound wrong. So, reverb level must be lowered.
    # Perfect for developers while debugging 🙂
    # GENERATION1 = 2
    # Re-orders the LA32 output bits as in early generation MT-32s (according to Wikipedia).
    # Bit order at DAC (where each number represents the original LA32 output bit number, and XX means the bit is always low):
    # 15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 XX
    # GENERATION2 = 3
    # Re-orders the LA32 output bits as in later geneerations (personally confirmed on my CM-32L – KG).
    # Bit order at DAC (where each number represents the original LA32 output bit number):
    # 15 13 12 11 10 09 08 07 06 05 04 03 02 01 00 14
    # Possible values: 0, 1, 2, 3, auto.
    # mt32.reverb.mode: MT-32 reverb mode
    # Possible values: 0, 1, 2, 3, auto.
    # mt32.reverb.time: MT-32 reverb decaying time
    # Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
    # mt32.reverb.level: MT-32 reverb level
    # Possible values: 0, 1, 2, 3, 4, 5, 6, 7.
    # mt32.partials: MT-32 max partials allowed (0-256)


    # sbtype: Type of Soundblaster to emulate. gb is Gameblaster.
    # Possible values: sb1, sb2, sbpro1, sbpro2, sb16, sb16vibra, gb, none.
    # sbbase: The IO address of the soundblaster.
    # Possible values: 220, 240, 260, 280, 2a0, 2c0, 2e0, 300.
    # irq: The IRQ number of the soundblaster.
    # Possible values: 7, 5, 3, 9, 10, 11, 12.
    # dma: The DMA number of the soundblaster.
    # Possible values: 1, 5, 0, 3, 6, 7.
    # hdma: The High DMA number of the soundblaster.
    # Possible values: 1, 5, 0, 3, 6, 7.
    # sbmixer: Allow the soundblaster mixer to modify the DOSBox mixer.
    # oplmode: Type of OPL emulation. On ‘auto’ the mode is determined by sblaster type.
    # All OPL modes are Adlib-compatible, except for ‘cms’. sbtype=none
    # together with oplmode=cms will emulate a Gameblaster.
    # Possible values: auto, cms, opl2, dualopl2, opl3, none, hardware, hardwaregb.
    # oplemu: Provider for the OPL emulation. compat might provide better quality (see oplrate as well).
    # Possible values: default, compat, fast.
    # oplrate: Sample rate of OPL music emulation. Use 49716 for highest quality (set the mixer rate accordingly).
    # Possible values: 44100, 49716, 48000, 32000, 22050, 16000, 11025, 8000.
    # hardwarebase: base address of the real hardware soundblaster:
    # 210,220,230,240,250,260,280
    # goldplay: Enable goldplay emulation.


    # gus: Enable the Gravis Ultrasound emulation.
    # gusrate: Sample rate of Ultrasound emulation.
    # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
    # gusbase: The IO base address of the Gravis Ultrasound.
    # Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
    # gusirq: The IRQ number of the Gravis Ultrasound.
    # Possible values: 5, 3, 7, 9, 10, 11, 12.
    # gusdma: The DMA channel of the Gravis Ultrasound.
    # Possible values: 3, 0, 1, 5, 6, 7.
    # ultradir: Path to Ultrasound directory. In this directory
    # there should be a MIDI directory that contains
    # the patch files for GUS playback. Patch sets used
    # with Timidity should work fine.


    # innova: Enable the Innovation SSI-2001 emulation.
    # samplerate: Sample rate of Innovation SSI-2001 emulation
    # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
    # sidbase: SID base port (typically 280h).
    # Possible values: 240, 220, 260, 280, 2a0, 2c0, 2e0, 300.
    # quality: Set SID emulation quality level (0 to 3).
    # Possible values: 0, 1, 2, 3.


    # pcspeaker: Enable PC-Speaker emulation.
    # pcrate: Sample rate of the PC-Speaker sound generation.
    # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
    # tandy: Enable Tandy Sound System emulation. For ‘auto’, emulation is present only if machine is set to ‘tandy’.
    # Possible values: auto, on, off.
    # tandyrate: Sample rate of the Tandy 3-Voice generation.
    # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.
    # disney: Enable Disney Sound Source emulation. (Covox Voice Master and Speech Thing compatible).
    # ps1audio: Enable PS1 audio emulation.
    # Possible values: on, off.
    # ps1audiorate: Sample rate of the PS1 audio emulation.
    # Possible values: 44100, 48000, 32000, 22050, 16000, 11025, 8000, 49716.


    # joysticktype: Type of joystick to emulate: auto (default), none,
    # 2axis (supports two joysticks),
    # 4axis (supports one joystick, first joystick used),
    # 4axis_2 (supports one joystick, second joystick used),
    # fcs (Thrustmaster), ch (CH Flightstick).
    # none disables joystick emulation.
    # auto chooses emulation depending on real joystick(s).
    # (Remember to reset dosbox’s mapperfile if you saved it earlier)
    # Possible values: auto, 2axis, 4axis, 4axis_2, fcs, ch, none.
    # timed: enable timed intervals for axis. Experiment with this option, if your joystick drifts (away).
    # autofire: continuously fires as long as you keep the button pressed.
    # swap34: swap the 3rd and the 4th axis. can be useful for certain joysticks.
    # buttonwrap: enable button wrapping at the number of emulated buttons.


    # serial1: set type of device connected to com port.
    # Can be disabled, dummy, modem, nullmodem, directserial.
    # Additional parameters must be in the same line in the form of
    # parameter:value. Parameter for all types is irq (optional).
    # for directserial: realport (required), rxdelay (optional).
    # (realport:COM1 realport:ttyS0).
    # for modem: listenport (optional).
    # for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
    # transparent, port, inhsocket (all optional).
    # Example: serial1=modem listenport:5000
    # Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
    # serial2: see serial1
    # Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
    # serial3: see serial1
    # Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.
    # serial4: see serial1
    # Possible values: dummy, disabled, modem, nullmodem, serialmouse, directserial.


    # printer: Enable printer emulation.
    # dpi: Resolution of printer (default 360).
    # width: Width of paper in 1/10 inch (default 85 = 8.5”).
    # height: Height of paper in 1/10 inch (default 110 = 11.0”).
    # printoutput: Output method for finished pages:
    # png : Creates PNG images (default)
    # ps : Creates Postscript
    # bmp : Creates BMP images (very huge files, not recommend)
    # printer : Send to an actual printer (Print dialog will appear)
    # multipage: Adds all pages to one Postscript file or printer job until CTRL-F2 is pressed.
    # docpath: The path where the output files are stored.
    # timeout: (in milliseconds) if nonzero: the time the page will
    # be ejected automatically after when no more data
    # arrives at the printer.


    # parallel1: parallel1-3 — set type of device connected to lpt port.
    # Can be:
    # reallpt (direct parallel port passthrough),
    # file (records data to a file or passes it to a device),
    # printer (virtual dot-matrix printer, see [printer] section)
    # Additional parameters must be in the same line in the form of
    # parameter:value.
    # for reallpt:
    # Windows:
    # realbase (the base address of your real parallel port).
    # Default: 378
    # ecpbase (base address of the ECP registers, optional).
    # Linux: realport (the parallel port device i.e. /dev/parport0).
    # for file:
    # dev: (i.e. dev:lpt1) to forward data to a device,
    # or append: appends data to the specified file.
    # Without the above parameters data is written to files in the capture dir.
    # Additional parameters: timeout: = how long to wait before
    # closing the file on inactivity (default:500), addFF to add a formfeed when
    # closing, addLF to add a linefeed if the app doesn’t, cp:
    # to perform codepage translation, i.e. cp:437
    # for printer:
    # printer still has it’s own configuration section above.
    # parallel2: see parallel1
    # parallel3: see parallel1
    # dongle: Enable dongle


    # glide: Enable glide emulation: true,false,emu.
    # lfb: LFB access: full,full_noaux,read,read_noaux,write,write_noaux,none.
    # OpenGlide does not support locking aux buffer, please use _noaux modes.
    # splash: Show 3dfx splash screen (requires 3dfxSpl2.dll).



    # xms: Enable XMS support.
    # ems: Enable EMS support. The default (=true) provides the best
    # compatibility but certain applications may run better with
    # other choices, or require EMS support to be disabled (=false)
    # to work at all.
    # Possible values: true, emsboard, emm386, false.
    # umb: Enable UMB support.
    # automount: Enable automatic mount.
    # int33: Enable INT 33H (mouse) support.
    # biosps2: Emulate BIOS INT 15h PS/2 mouse services
    # Note that some OS’s like Microsoft Windows neither use INT 33h nor
    # probe the AUX port directly and depend on this BIOS interface exclusively
    # for PS/2 mouse support. In other cases there is no harm in leaving this enabled
    # keyboardlayout: Language code of the keyboard layout (or none).
    # files: Number of file handles available to DOS programs. (equivalent to “files=” in config.sys)


    # ipx: Enable ipx over UDP/IP emulation.


    # ne2000: Enable Ethernet passthrough. Requires [Win]Pcap.
    # nicbase: The base address of the NE2000 board.
    # nicirq: The interrupt it uses. Note serial2 uses IRQ3 as default.
    # macaddr: The physical address the emulator will use on your network.
    # If you have multiple DOSBoxes running on your network,
    # this has to be changed for each. AC:DE:48 is an address range reserved for
    # private use, so modify the last three number blocks.
    # I.e. AC:DE:48:88:99:AB.
    # realnic: Specifies which of your network interfaces is used.
    # Write ‘list’ here to see the list of devices in the
    # Status Window. Then make your choice and put either the
    # interface number (2 or something) or a part of your adapters
    # name, e.g. VIA here.


    [ide, primary]
    # enable: Enable IDE interface


    [ide, secondary]
    # enable: Enable IDE interface


    [ide, tertiary]
    # enable: Enable IDE interface


    [ide, quaternary]
    # enable: Enable IDE interface


    # Lines in this section will be run at startup.
    # You can put your MOUNT lines here.
    #mount g /home/pi/dosbian/IMG
    mount g g:\
    imgmount c hdd-2gb.img -size 512,63,64,1023 -fs fat
    #REM imgmount d win98.img -size 512,63,64,1023 -fs fat
    #REM imgmount e swap.img -size 512,63,64,1023 -fs fat
    #REM imgmount v heroes.iso -t iso
    #REM imgmount h win981.iso -t iso

  12. Hello, thank you so much for this. I was wondering what happened to the versions that supported RPi-3 and below? And is it possible to build it myself to get it running on older Raspberry Pi’s?

  13. hi, how do I add/format disk. I noticed it the w32diskimager auto creates 4gb partition , but don’t know how to present it to OS. When I format to fat32 in windows dosbian gets kernal panic, how do I present this disk and add another 4gb partition
    dosbian is the best!

  14. Hello i tried installing windows 98 and 95 but i got some virus error in the installer. And now the installer doesn’t start at all. (this happened after reinstalling dosbian)

  15. HI,your guide ” installing Windows 95 on Raspberry Pi 3B/4B” is not working with latest image of dosbian i tried in both RPi3 and RPi4 it crashes/stuck in configuring hardware devices,i went to safe mode after first reboot and removed the S3 driver but it did no difference,i tried many versions of windows 95 osr1/osr2 etc.
    can you help me?


  16. Has anyone tried using a touch screen with dosbian? I have tried, but the calibration is completely wrong. I can not calibrate it with dosbian because xinput_calibration gives “unable to connect to X server” error, but it works perfectly in normal raspbian.

  17. hi i downloaded your dosbian image but it doesn’t work for me. i have an rpi4 with 4gb. i wrote your image in a 64gb sd when i turn on the raspberry i have a black screen. Initially there were writings that last very little I can not even read the writings then black screen

      1. I took a sd that I used in the gopro. sd brand kingstom class 10. in the sd I had loaded retropie and it worked. do you think it could depend on the sd?

      2. I don’t think it can depends by the SD if you say Retropie works w/out any issue.
        Are you using the microSD with a microSD extender? Someone claimed that using long cable the distro didn’t boot at all.

      3. yes i am using an extender cable. I immediately try to remove it I did not think it could create problems … I’ll let you know

      4. incredible !!! you were right it depended on that extender cable. now it starts … the fun begins.

  18. Trying to understand how to set up Munt with this, I do have the rom files, and I’ve selected option 5 to install it, however, from here it’s a mystery, any help? 😀

    Also, amazing work!

    1. Hi, after the installation from menu, the only thing to do is to enable it 🙂

      Just go in the configuration of Dosbox-ECE and you have to enable it right from its section.


      1. Hmm, maybe some issue with the Munt install then? There is no munt section in the Dosbox-ECE config file, there’s a lot of stuff in the MIDI though, I think I’ve set them correct (mt32.romdir set to C:\ROMS with the correct name for MR32_CONTROL.ROM and MT32_PCM.ROM). I’m using the Pi 400 1.5 dosbian btw. When starting, if I go mixer /listmidi it just returns a empty line.

      2. I solved it, seems it added the correct config to the SVN one, but not for the ECE one, so to fix, just set: midiconfig = 128:0

  19. Hello Carmelo 😉
    First of all, well done for all this beautiful work!
    I try Dosbian and it works fine 🙂
    I would like a little help from you, if possible.
    I am trying to use Dosbox on raspbian, as you did if I understood correctly, but unlike you, I have big problems with the keyboard 😦
    I use a small usb qwerty keyboard, which works fine with your Dosbian.
    I tried to configure .dosbox / dosbox-0.74-2.conf, but nothing works, the keyboard responds erratically!
    It’s not a problem of QWERTY vs AZERTY, the keys give anything, even Shift and Ctrl!
    Did you encounter this problem at the beginning? If so, how did you correct it?
    Thank you very much in advance for your help 😉

  20. Thanks so much for this cool distro! I’ve been running DOSBOX under Linux for awhile now. I have a YouTube Page.. GEO TECH & MORE! Really having fun with this! Debian under the hood and DOSBOX on top in fullscreen! Fantastic! I have DOSBOX videos uploaded on my YouTube and will do one on DOSBIAN!

  21. Hi, after trying this on pi400 I’m unable to access usb while in midnight commander. Working fine with retropie MC but Dosbian doesn’t pick them up. Doom runs a treat but I’d also like to play something else. Many thanks

    1. Hi, if you updated the distro, some settings has been changed, that’s why probably your USB is not seen in MC.

      You solve changing one param in /lib/system/system/system-udev-service

      changing in the [service] section the followin param:


      Reboot and you’ll see USB is seen again from MC. Of course, be sure that USB is formatted Fat32.


  22. I have been trying out DOSbian for a little while now. It is a very useful emulation package. Well done Carmelo!
    I have one feature request if possible… Can an option be added to dosbox so that a safe shutdown cab be performed from within the emulator? Currently I ‘exit’ from dosbox then shutdown from the menu. It would be nice to maybe add a ‘shutdown’ command within the dosbox environment to exit and shutdown cleanly.


    1. You can have 2 HDD configured, one with W3.1 and the other one with W95. You can prepare a batch file that boots and ask you whether to run W3.11 or W95 🙂

  23. I seem to be having a little trouble getting networking to work. My steps were as follows –
    Burn image and boot raspberry pi 3.
    Exit from DOSBOX
    Localisation Options – set correct country
    Network Options – WiFi – Set SSID and password
    wlan0 does not show an ip address, neither does the pi show on my network.

    Have I messed a step?

  24. Hello a few questions;

    Do I need to donate to get the newest/best version of dosbian? Covid has hurt my business badly, but If so I’ll try to swing a small payment.

    Using mTCP, can I link to the pi’s WiFi Internet? My Ethernet is far away, and I mainly want to try getting old bbs software working. Terminals, even ole renegade! I’ve done this just using dosbox and modifying it myself so… I’m sure I could figure something out. Any tips tho..

    Thanks for releasing this! I came from dos, and want to go back!!!

    1. Hi,
      Altough a donation would be appreciated 🙂 it’s not mandatory, you can get Dosbian for free from my blog.
      In any case, there’s no a minimum amount, you can donate whatever you want with the advantage that as reward you get the latest version of my Commodore 64 distro Combian64.

      Have fun 🙂

      1. Ok I’m gonna hit your paypal; I do want the commodore version. I’m really still hunting for a good amiga emulator on pi 4. Amibian doesn’t seem to have any good software for the 4 yet.

  25. Hi. Thank you for developing a great piece of software. Can the launchbox be used to run old pc software (eg Imagine3D) without the need of windows OS overlay?

  26. Thanks for your work!

    I’m curious about running dosbian on older RPi’s – it is stated above that some config is required, but what configuration is required? Is this documented somewhere?

    1. Hi Christian,

      on older Pi’s it works pretty well, not for 3d games of course.

      If you try to flash the Dosbian 1.5 distro on a old pi, you get a black screen. To solve, you have to connect via SSH with your PC to Raspberry Pi, locate the file dosbox-SVN.conf and change the param “core” from dynamic to auto.

  27. Dear Carmelo,
    Thank you so much for Dosbian and Combian 64. I wish I could pay somehow for your work. Today we decided to close our shop after 57 years. I live in Argentina and if I’m not wrong today we “celebrate” 90 days in quarantine, and they’re going to be 115 if our president does not extend it once more. During these days we have been eating our savings, but everything comes to an end.
    Please excuse me.
    Best wishes,

    1. Hi Jorge,
      I’m very sorry for your situation, this epidemic arrived suddendly and left everyone shocked. Here in Italy we’ve had 2 full months of lockdown.
      Unfortunately quarantine is the only weapon we have to fight against this virus…

      I hope all this nightmare comes to an end, stay strong, wish you all the best to you and your family.


  28. Hi ! Very interesting ! I have the vanilla DOSBox 0.74.2 from the repo currently happily running Windows 95 (A-build 950) on the Rpi-4 but I’ll certainly be trying your build, with networking and other additions. Just a question: did you compile with the /dynamic/ core for Arm enabled ? I’ve seen mentions on the internets that it is possible, and that would be great if it did work. T.Y. for the sharing !

    1. Hi, if you have Dosbox Vanilla running on Raspberry Pi 4, i highly suggest to move to Dosbian 😉
      Of course it has Dynarec enabled, it was the first thing i enabled when i compiled :))
      Enter in to the Facebook group, overthere you can see what people was able to run with Dosbian on Raspberry Pi 4 🙂


  29. Hello
    I see that we must make a donation for the latest version of dosbian
    I agree to do it, but will you have to pay after each update?

    1. Hi,
      absolutely not, if there’s a new update and you previously donated, you can request the update and i will send you the download link to the email specified in your Paypal.

  30. Hi, I just installed Dosbian in a RPI4 and I’m enjoying it, good work.
    Side note/alert: There is one of your login info inside /etc/wpa*.conf in the current build.

    1. Thank you very much 🙂
      Yes, i forgot 😀 anyway, no problem, it’s just a hotspot temporary connection, anyway, thanks for reporting it to me 🙂

  31. Hello, how is it with COM / USART (RS232 with TTL levels) support for programming old Motorola radios, that needs very only old and slow PC?
    Thank you.

    1. Hi, it should work w/out any problem.
      In the config you have to specify something like:

      serial1=directserial realport:com1

      Speed emulation can be lowered as you like reducing cpu cycles.

      1. Ciao, hai mai pensato di fare una versione “bare-metal” di DOSBIAN con le librerie Circle? Come BMC64 o altri progetti analoghi, anche solo DOSBOX-SVN senza altri optional sarebbe comunque fantastico…

      2. Ciao, si, ci ho pensato 🙂 Dovrei riuscire a trovare tempo, anche io penso sarebbe un qualcosa di eccezionale 🙂

      3. Infatti! Ho avuto occasione di contribuire al progetto BMC64 (nel mio piccolo: non sono uno sviluppatore, più che altro ho effettuato dei test e delle ricerche per una modalità pixel-perfect con la VGA666) e ti posso assicurare che l’esperienza è diversa rispetto alla “classica” emulazione. Un bare-metal DOSBIAN con VGA666 su monitor VGA… hmmmm! 😀
        P.S. è già di prossimo rilascio un bare-metal MT-32 tra l’altro, il progetto si chiama mt-32pi


Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di

Stai commentando usando il tuo account Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: