• Re: DOS DOOR games on a Raspi with Raspian

    From goto_KCM@21:1/218 to All on Sunday, April 25, 2021 15:51:25
    Ok, i manage to get qemu and freedos starting. There is actual a bug in the seabios package on raspbian that keeps you from installing freedos with a CD image. But ok, fixed that.

    Now in the manual the command is DG to run the doorgame, but DG no longer exists. So i choose DD and hope this is the right one.

    When i then enter the door menu and i choose the door game, i get a message that the TERM environment variable is not set and then just some rubbish
    chars.

    Nothing else happens.

    Some thoughts about that?

    Regards
    Andreas

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From paulie420@21:2/150 to goto_KCM on Sunday, April 25, 2021 10:32:12
    Ok, i manage to get qemu and freedos starting. There is actual a bug in the seabios package on raspbian that keeps you from installing freedos with a CD image. But ok, fixed that.

    Nothing else happens.

    Some thoughts about that?

    So I just got local door games working on a Raspberry Pi with Mystic BBS software.

    APAM released a package called dosbox_rpi.zip that helps his Talisman sysOps get local door games running. I had to do a few extra steps; like I had to add the line:

    cp $HOME/mystic/temp${NODE}/DOOR.SYS $HOME/mystic/temp${NODE}/door.sys

    To all .shim.sh scripts... Mystic saves as DOOR.SYS and APAMs setup wants door.sys... also, in your menu commands you have to run a (DD) Run External with data like this:

    ~/doors/lisa.sh %3 /DOS

    It needs the /DOS so that Mystic creates the correct DOS version of the DOOR.SYS file.

    And I'm planning on creating a text file with ALL the additional steps I took listed out... you can find dosbox_rpi.zip on my BBS, or I can email it to you. And this is current info, 4/25/21, to get DOS door games running using DOSBox and APAMs helper scripts. Its a really nice setup; with different /dirs for nodes... I'd suggest this route and I've been trying to get local doors running under RPi for a while and this was by far the easiest and most put together method/package that I've found.

    Sorry I didn't answer your actual question - but I wanna make sure you know about this option.



    |07p|15AULIE|1142|07o
    |08.........

    --- Mystic BBS v1.12 A47 2021/04/20 (Raspberry Pi/32)
    * Origin: 2o fOr beeRS bbs>>>20ForBeers.com:1337 (21:2/150)
  • From Sneaky@21:1/152.2 to paulie420 on Monday, April 26, 2021 08:51:00
    Hi Paul420

    And I'm planning on creating a text file with ALL the additional steps
    I took listed out... you can find dosbox_rpi.zip on my BBS, or I can
    email it to you. And this is current info, 4/25/21, to get DOS door
    games running using DOSBox and APAMs helper scripts. Its a really nice setup; with different /dirs for nodes... I'd suggest this route and
    I've been trying to get local doors running under RPi for a while and
    this was by far the easiest and most put together method/package that
    I've found.

    Thank you for this, I will be looking out for this text file with ALL the additional steps
    You took listed out

    Ian S 2nd Choice Core Mystic NZ

    --- MultiMail/Win v0.52


    --- Talisman v0.8-dev (Linux/armv7l)
    * Origin: 6th Choice Core (21:1/152.2)
  • From bcw142@21:1/145 to goto_KCM on Sunday, April 25, 2021 17:35:09
    On 25 Apr 2021, goto_KCM said the following...

    Now in the manual the command is DG to run the doorgame, but DG no longer exists. So i choose DD and hope this is the right one.

    No, "D3 Exec DOOR32 program" is the right one for the Pi or Linux.
    DD is correct for Linux programs like /usr/bin/cal and /usr/games/adventure Hard to say what using DD will do with DOS, DOS shouldn't be case sensitive.
    DD is case sensitive as well as needing full paths generally.

    --- Mystic BBS v1.12 A47 2021/04/08 (Raspberry Pi/32)
    * Origin: Mystic Pi BBS bcw142.zapto.org:23 (21:1/145)
  • From Avon@21:1/101 to paulie420 on Monday, April 26, 2021 11:51:29
    On 25 Apr 2021 at 10:32a, paulie420 pondered and said...

    APAM released a package called dosbox_rpi.zip that helps his Talisman sysOps get local door games running. I had to do a few extra steps; like

    Where is this available? I'd be happy to distribute it around fsxNet if that helps others / is permitted by the author?

    --- Mystic BBS v1.12 A46 2020/08/26 (Windows/32)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From apam@21:1/182 to paulie420 on Monday, April 26, 2021 10:25:09
    APAM released a package called dosbox_rpi.zip that helps his Talisman

    I didn't really "release" anything lol, it was just a thing I did up as
    tgf asked for help setting up doors.

    cp $HOME/mystic/temp${NODE}/DOOR.SYS $HOME/mystic/temp${NODE}/door.sys

    You probably don't need to do that, just rename the occurances of
    door.sys to DOOR.SYS in the scripts (I think the only occurance is where
    it copies into the node directory).

    Also, re your %WCNODE% question in discord (sorry don't have access to
    discord right now) That's just an environment variable that particular
    door requires to get the node number. So, for other doors it's safe to
    just delete that and use %1

    I've been trying to get local doors running under RPi for a while and
    this was by far the easiest and most put together method/package that
    I've found.

    Thanks! I've been using DOSBOX for quiet some time now for doors, as it
    runs on just about anything. ie, raspberry pi, freebsd, linux, even
    windows 64 bit (though setup for that is a bit different).

    The only catch is, only one instance of the door can run at once, so no
    having 3 nodes playing lord at once, but then that's a limitation of QEMU
    doors too.

    Andrew

    --
    |03Andrew Pamment |08(|11apam|08)
    |13Happy|10Land |14v2.0|08!|07


    --- Talisman v0.20-dev (Linux/x86_64)
    * Origin: HappyLand v2.0 - telnet://happylandbbs.com:11892/ (21:1/182)
  • From apam@21:1/182 to Avon on Monday, April 26, 2021 10:28:04
    Where is this available? I'd be happy to distribute it around fsxNet
    if that helps others / is permitted by the author?

    I put it up here:

    https://happylandbbs.com/files/dosbox/dosbox_rpi.zip

    Though, perhaps it would be more useful to wait until paulie's made a
    list of changes for mystic.

    Andrew

    --
    |03Andrew Pamment |08(|11apam|08)
    |13Happy|10Land |14v2.0|08!|07


    --- Talisman v0.20-dev (Linux/x86_64)
    * Origin: HappyLand v2.0 - telnet://happylandbbs.com:11892/ (21:1/182)
  • From Avon@21:1/101 to apam on Monday, April 26, 2021 12:53:09
    On 26 Apr 2021 at 10:28a, apam pondered and said...

    I put it up here:
    Though, perhaps it would be more useful to wait until paulie's made a
    list of changes for mystic.

    Thanks Andrew. Yep agreed. Paulie can you let me know when done and I'm happy to send it around. Also if you would like to place any of those notes on the fsxNet wiki for others to read that would be great too (if interested).

    Best, Paul

    --- Mystic BBS v1.12 A46 2020/08/26 (Windows/32)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From paulie420@21:2/150 to Avon on Sunday, April 25, 2021 22:52:53
    Thanks Andrew. Yep agreed. Paulie can you let me know when done and I'm happy to send it around. Also if you would like to place any of those notes on the fsxNet wiki for others to read that would be great too (if interested).

    i posted my txt on your talisman discord; but sounds like 2 things i didn't need to suggest; but i'll change that txt if it helps anyone. i thought this was on your download pages.



    |07p|15AULIE|1142|07o
    |08.........

    --- Mystic BBS v1.12 A47 2021/04/20 (Raspberry Pi/32)
    * Origin: 2o fOr beeRS bbs>>>20ForBeers.com:1337 (21:2/150)
  • From apam@21:1/182 to paulie420 on Monday, April 26, 2021 21:43:11
    i posted my txt on your talisman discord; but sounds like 2 things i
    didn't need to suggest; but i'll change that txt if it helps anyone. i thought this was on your download pages.

    I put it on my webserver as the file was too big to send directly via
    discord. I don't mind other people using it at all, and am glad you found
    it helpful.

    I'm just not super keen on doing the support work, ie answering all the messages from people who need help with it.. I know that sounds kind of
    cold, but I do have a lot of projects already.

    If you want to take it and add your scripts, re tar things up (looks like
    I did it wrong to compress with xz) etc and distribute it yourself,
    you're more than welcome to.

    It doesn't really lend itself to a wiki page though, as it includes a
    compiled version of dosbox, SDL and some more specific utilities. Dosbox
    is a particular SVN version (they broke something with doors after that
    commit) and SDL is compiled to have the dummy SDL video driver so it can
    run headless (debian in their infinite wisdom decided to disable that in
    their packages it seems)

    So yeah, feel free to tweak it for mystic etc.

    Andrew

    --
    |03Andrew Pamment |08(|11apam|08)
    |13Happy|10Land |14v2.0|08!|07


    --- Talisman v0.20-dev (Linux/x86_64)
    * Origin: HappyLand v2.0 - telnet://happylandbbs.com:11892/ (21:1/182)
  • From goto_KCM@21:1/218 to goto_KCM on Monday, April 26, 2021 16:19:51
    So i managed to get LORD run when i call the script from a terminal.
    It seems that the redirection over the serial interface does not work.
    Maybe the commandlines changed for socat or qemu.

    Ok, will try to dig me a little bit into it.
    Looking forward to get the Zip plus the TXT for APAM.

    Regards
    Andreas

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From paulie420@21:2/150 to apam on Monday, April 26, 2021 07:45:59
    I put it on my webserver as the file was too big to send directly via discord. I don't mind other people using it at all, and am glad you found it helpful.

    Ok.. I was worried last night; I do hear your other suggestions about just setting 'DOOR.SYS' in the .sh file directly... but most importantly understand your abundance of other projects.

    Thanks for sharing, and THIS is an option that works for Mystic sysOps running 32bit RPOS.



    |07p|15AULIE|1142|07o
    |08.........

    --- Mystic BBS v1.12 A47 2021/04/20 (Raspberry Pi/32)
    * Origin: 2o fOr beeRS bbs>>>20ForBeers.com:1337 (21:2/150)
  • From goto_KCM@21:1/218 to All on Tuesday, April 27, 2021 09:25:46
    Servus!

    Ok, i tried that script proposed before with that lisa chat program as
    example. When i connect with putty to the Raspi and start the lisa.sh with a nodenumber (and copied DOOR.SYS file in the Temp Folder) it all starts well
    and after a X Windows is started with DOSBOX in it, the game is shown in terminal as in the X Window of DOSBOX.

    I didn't manage to run DOSBOX headless without that X Windows even when the SDL_VIDEODRIVER is set to dummy. Without X Windows the lisa.shim.sh crashes
    and is shown as defunct. With X Window it works great.

    Regards
    Andreas

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From apam@21:1/101 to goto_KCM on Tuesday, April 27, 2021 19:31:22
    I didn't manage to run DOSBOX headless without that X Windows even when the SDL_VIDEODRIVER is set to dummy. Without X Windows the lisa.shim.sh crashes and is shown as defunct. With X Window it works great.

    It sounds like you're using a system installed dosbox / SDL, rather than the one included in the archive.

    SDL that comes with raspbian does not support SDL_VIDEODRIVER=dummy I don't know why but they disabled it in their packages.

    Andrew

    --- Mystic BBS v1.12 A46 2020/08/26 (Windows/32)
    * Origin: Agency BBS | Dunedin, New Zealand | agency.bbs.nz (21:1/101)
  • From goto_KCM@21:1/218 to apam on Tuesday, April 27, 2021 20:26:25
    It sounds like you're using a system installed dosbox / SDL, rather than the one included in the archive.
    I tried the dosbox in the package, but not the sdl.
    Will try to get it running.

    SDL that comes with raspbian does not support SDL_VIDEODRIVER=dummy I don't know why but they disabled it in their packages.
    That would make sense.

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From goto_KCM@21:1/218 to apam on Wednesday, April 28, 2021 19:30:47
    Hi!

    I need a little help.

    It sounds like you're using a system installed dosbox / SDL, rather than the one included in the archive.

    How do i execute the delivered dosbox and sdl instead of the system versions?

    Regards
    Andreas

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From paulie420@21:2/150 to goto_KCM on Wednesday, April 28, 2021 14:04:52
    Hi!
    I need a little help.

    It sounds like you're using a system installed dosbox / SDL, rather t the one included in the archive.

    How do i execute the delivered dosbox and sdl instead of the system versions?
    Andreas

    Hey Andreas... apam was awesome to 'kind of' release his DOSBox setup to me. (Really, someone else gave it to me and...)

    To attempt to answer this...

    You untar the DOSBox.tar into /opt/dosbox (You have the readme? Or the Mystic readme that I created??) And the scripts that APAM created will call that version of DOSBox.

    I'm willing to jump on a Zoom/Discord/Other call with you and try to iron things out. So long as you're on a Raspberry Pi and use Mystic BBS I think I could help you get it going.

    I'm not super smart w/ Linux by any means - but I know enough to get in trouble... and get things working most of the time. Lemme know if you need help, at my BBS or thru netmail or if you're on Discord I'm 'Paulie420'...



    |07p|15AULIE|1142|07o
    |08.........

    --- Mystic BBS v1.12 A47 2021/04/20 (Raspberry Pi/32)
    * Origin: 2o fOr beeRS bbs>>>20ForBeers.com:1337 (21:2/150)
  • From goto_KCM@21:1/218 to All on Friday, April 23, 2021 17:19:29
    Hey there.

    I just wanted to make some door games available on my BBS and i found some
    but all are DOS.

    How do i make them available on my Raspi with an ARM64?
    I found out i have to use some emulator like QEMU to run the DOS games.

    Does someone has a helping hand for me?

    Regards
    Andreas

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From Al@21:4/106.1 to goto_KCM on Friday, April 23, 2021 16:17:22
    Re: DOS DOOR games on a Raspi with Raspian
    By: goto_KCM to All on Fri Apr 23 2021 05:19 pm

    How do i make them available on my Raspi with an ARM64?
    I found out i have to use some emulator like QEMU to run the DOS games.

    Yes, Gryphon was using QEMU and did a write up of his experiences. I'm not sure if it was complete or where it can be found now.

    Does someone has a helping hand for me?

    I have been thinking about this but haven't (yet) gone down that road. It would be great if Gryphon's howto can still be found and perhaps expanded.

    Ttyl :-),
    Al

    ... Junk - stuff we throw away. Stuff - junk we keep.
    --- SBBSecho 3.14-Linux
    * Origin: The Rusty MailBox - Penticton, BC Canada (21:4/106.1)
  • From goto_KCM@21:1/218 to paulie420 on Saturday, May 08, 2021 19:56:05
    Hey, sorry for the delay.

    You untar the DOSBox.tar into /opt/dosbox (You have the readme? Or the Mystic readme that I created??) And the scripts that APAM created will call that version of DOSBox.

    Will give it a try next week.

    I'm willing to jump on a Zoom/Discord/Other call with you and try to
    iron things out. So long as you're on a Raspberry Pi and use Mystic BBS
    I think I could help you get it going.

    Ok, when i can't get it running i will give you a message.
    Thanks!

    Regards
    Andreas

    -=Kautzner-Computer-Museum=-
    zahrl.ddns.net:2023
    https://kcm.or.at

    --- Mystic BBS v1.12 A46 2020/08/26 (Raspberry Pi/32)
    * Origin: KCM BBS (21:1/218)
  • From bcw142@21:1/145.2 to goto_KCM on Saturday, April 24, 2021 07:57:13
    On 23 Apr 2021, goto_KCM said the following...

    I just wanted to make some door games available on my BBS and i found
    some but all are DOS.

    How do i make them available on my Raspi with an ARM64?
    I found out i have to use some emulator like QEMU to run the DOS games.

    Not sure about ARM64 as there is no released or Alpha Mystic for that. I think there are Ubuntu releases for it, but not a BBS made for it.

    Apart from that Gryphon's old QEMU HOWTO does exist I'll try an upload of it now and see if it works:
    From: Skuz
    To: All
    Subj: Re-post /2016
    Date: 09/09/17 00:47
    Base: Mystic BBS Echo

    = FSX_MYS (21:1/105)==========================================================
    Msg : 1815 of 1822 From : Avon 21:1/101
    09 Jan 17 14:12:00 To : All
    Subj : Re: Run DOS BBS DoorGames on the Raspberry Pi =============================================================================== On 12/09/16, Gryphon pondered and said...

    Of course you can run DOS doors on the Pi. I wrote a HOWTO. It uses QEMU.

    For those of you who are looking for info on how to run DOS doors on a Raspberry Pi I am posting the often referred to how-to document that Gryphon has kindly written and published on his website here as well as a reference post for others looking for this information. Big thanks to Gryphon for his work in creating this document.

    You can find this document online at http://cyberia.darktech.org:8080/articles/qemu-howto.html

    [snip]

    Run DOS BBS DoorGames on the Raspberry Pi:
    by Darryl Perry 2016

    This tutorial is intended for BBS sysops who wish to run DOS door games
    on their Raspberry Pi (or other ARM device)

    This tutorial is developed with Mystic BBS as the default BBS to use. If
    you wish to use another BBS package, you will need to fix up the parts
    that are specific to the package you wish to use.

    How does this work?
    We will be creating an emulated virtual DOS environment from which to run
    our DOS door games. To do that, we will be creating a serial port into our
    VM and attching it to a computer port so that we can communicate via socat.

    Since we can mount host file systems into the DOS VM, we will not need to
    populate the VM file system with doorgame programs. This means we only need
    the bare minimum to boot and run the dos environment.

    Each time a door is ran, the script will build a batch file (run.bat) in
    the main bbs directory. When the VM boots, it will run that run.bat
    batch file to run the doorgame.

    These methods have worked for me on the following devices:
    1) Raspberry Pi B+ (raspberrypi.org)
    2) Raspberry PiB3 (raspberrypi.org)
    3) ODROID XU3-Lite (hardkernel.com)

    Caveats:
    The Raspberry Pi B+ is the least robust device I've attemted this with
    and I've had some good success with it. However, the device is inherently
    slow, so do not expect high-speed game-play like you do with traditional
    telnet doorgame activity. I would say that the speed of the display would
    be equivalent to a 1200 Baud modem.

    The Raspberry Pi B3 is a much faster device and the speed lag is not
    noticable at all.

    The ODROID XU3 is a much more robust device and the speed delay seems
    almost unnoticable.


    Required packages:
    qemu: apt-get install qemu
    socat: apt-get install socat
    todos: apt-get install tofrodos


    Create freedos image:

    We will be creating a FreeDOS image to be used in our VM.

    I find it helpful to follow this howto when creating a FreeDOS image.

    https://en.wikibooks.org/wiki/QEMU/FreeDOS

    Then I use this link as a HOWTO to install FreeDOS on the newley created
    image.

    http://how-to.wikia.com/wiki/How_to_install_FreeDOS_in_QEMU

    I made my image to be 100MB. I think that it may be quite a bit
    larger than I need so you may be able to use something much smaller.

    Configure 4DOS:

    Once you have a working FreeDOS VM, you will need to configure the boot
    files for your needs:

    I find it easier to mount the image onto the local file system, and edit the
    files with VI. To mount the image:

    1) Create a mount point:
    mkdir /mnt/freedos

    2) mount the image
    sudo mount -t msdos -o loop,offset=32256 ./freedos.img /mnt/freedos

    You can then cd to /mnt/freedos/ and edit your files. You can also use
    this method for copying files to the DOS filesystem. Don't forget to
    unmount the image before running the VM.

    sudo umount /mnt/freedos

    The default boot scripts are C:\FDCONFIG.SYS and C:\FDOS\FDAUTO.BAT.
    The following has worked for me. You will want to play with your own
    configuration to meet your own needs.

    C:\FDCONFIG.SYS
    ---------------------------------------
    !COUNTRY=001,858,C:\FDOS\BIN\COUNTRY.SYS
    !SET DOSDIR=C:\FDOS
    !LASTDRIVE=Z
    !BUFFERS=20
    !FILES=40
    DOS=HIGH
    DOS=UMB
    DOSDATA=UMB
    DEVICE=C:\FDOS\BIN\HIMEMX.EXE
    DEVICE=C:\FDOS\BIN\JEMM386.EXE X=TEST I=TEST I=B000-B7FF NOVME NOINVLPG
    SHELLHIGH=C:\FDOS\BIN\COMMAND.COM C:\FDOS\BIN /E:1024 /P=C:\FDOS\FDAUTO.BAT
    ---------------------------------------


    C:\FDOS\FDAUTO.SYS
    -------------------------------------
    @echo off
    SET LANG=EN
    SET MTCPCFG=C:\FDOS\MTCP.CFG
    REM SET WATTCP.CFG=C:\FDOS
    SET PATH=%dosdir%\BIN
    SET NLSPATH=%dosdir%\NLS
    SET HELPPATH=%dosdir%\HELP
    SET TEMP=%dosdir%\TEMP
    SET TMP=%TEMP%
    SET DIRCMD=/P /OGN /4
    SET COPYCMD=/-Y
    FDAPM APMDOS
    LH SHARE
    DOSLFN
    MEM /C /N
    SET AUTOFILE=%0
    SET CFGFILE=C:\FDCONFIG.SYS
    alias reboot=fdapm warmboot
    alias reset=fdisk /reboot
    alias halt=fdapm poweroff
    alias shutdown=fdapm poweroff
    alias cfg=edit %cfgfile%
    alias auto=edit %0
    CALL D:\RUN.BAT
    ----------------------------------------

    Note how the batch file ends with CALL D:\RUN.BAT. RUN.BAT is the
    dynamically created batch file that gets created each time we run the
    doors.sh script.

    Setting up the doorgames:
    You will want to run the DOS VM initially, to setup your doorgames. To do
    that, you just run qemu normally, but with the mounted local file system.
    I've written a simple batch file that will load the VM. ----------------------------------------
    #!/bin/sh

    rm /home/bbs/temp${NODE}/run.bat

    qemu-system-i386 \
    -localtime \
    /home/bbs/doors/qemu/freedos.img \
    -boot c \
    -hdb fat:/home/bbs \
    -m 1024
    ----------------------------------------

    If you are running this remotely, from a terminal like putty, you can add
    the -curses flag. That will give you an interactive shell into the VM.


    The method used for running the VM will mount the /home/bbs directory as
    the DOS D: drive. This puts all the BBS subdirectories off of D:.

    I have my doorgame files in /home/bbs/doors/ on the host filesystem.
    My LORD directory is at /home/bbs/doors/lord. When viewed from the DOS VM,
    it will be located at D:\DOORS\LORD

    The dropfile locations will also be on your D: drive.
    D:\TEMP

    or for node #2:
    D:\TEMP2


    The working DOORS.SH script:
    This is the script as I have it working for me: ------------------------------------
    #!/bin/sh

    ## Pass the parameters for the door and the node.
    DOOR=${1}
    NODE=${2}

    DOOR=`echo ${DOOR} | tr '[a-z]' '[A-Z]'`

    ## The linux path for the run.bat file
    gobat=/home/bbs/run.bat
    ## The VM will be accessable via a computer port. I have randomly selected
    ## 20200 as a base port number to use. Each node will 'add' to the base
    ## number. IE, Node #1 will be added to 20200 and the result will be
    ## port 20201 (20200 + 1)
    ## You may change the base port to any number you wish.
    portnum=`expr 20200 + ${NODE}`

    case ${DOOR} in
    ## Operation OverKill II
    OOII)
    echo "@echo off" > ${gobat}
    echo "D:" >> ${gobat}
    echo "CD \DOORS\OO" >> ${gobat}
    ### Use the CALL command when calling a door batch file.
    ### If not used, then the door batch file will not return
    ### to the RUN.BAT script to complete execution. If the
    ### RUN.BAT script does not complete execution, then it will
    ### not shut down the VM. It will then just go to a dos
    ### prompt and the user will not see it, and will think that
    ### the game is hung.
    echo "CALL OOIIDOOR.BAT ${NODE}" >> ${gobat}
    ;;
    ## Legend of the Red Dragon
    LORD)
    echo "@echo off" > ${gobat}
    echo "D:" >> ${gobat}
    echo "CD \DOORS\LORD" >> ${gobat}
    echo "CALL START.BAT ${NODE}" >> ${gobat}
    ;;
    ## Planets: The Exploration of Space
    PLAN)
    echo "@echo off" > ${gobat}
    echo "D:" >> ${gobat}
    echo "CD \DOORS\PLAN" >> ${gobat}
    echo "PLANETS.EXE /pD:\TEMP${NODE}" >> ${gobat}
    ;;
    ## Barren Realms Elete
    BRE)
    echo "@echo off" > ${gobat}
    echo "D:" >> ${gobat}
    echo "CD \DOORS\BRE" >> ${gobat}
    echo "SRDOOR" >> ${gobat}
    echo "BRE" >> ${gobat}
    ;;
    # Space Dynasty
    DYNASTY)
    echo "@echo off" > ${gobat}
    echo "D:" >> ${gobat}
    echo "CD \DOORS\DYNASTY" >> ${gobat}
    echo "DYNASTY D:\TEMP${NODE}\DOOR.SYS" >> ${gobat}
    echo "COPY \\DOORS\\DYNASTY\\DYNASTY\\DYNASTY.SCO \\TEXT\\" >> ${gobat}
    ;;
    # NetRunner
    NETRUN)
    echo "@echo off" > ${gobat}
    echo "D:" >> ${gobat}
    echo "D:\DOORS\bnu\bnu" >> ${gobat}
    echo "CD \DOORS\NETRUN" >> ${gobat}
    echo "NETRUN D:\TEMP{NODE}\DOOR.SYS" >> ${gobat}
    ;;
    DOS)
    ;;
    esac
    ## At the end of run.bat, we add this line to gracefully shutdown the VM.
    ## This will return the user back to the BBS.
    echo "C:\FDOS\BIN\FDAPM POWEROFF" >> ${gobat}
    ## The batch file must be in dos format, or it will not run properly.
    todos ${gobat}


    ### The main QEMU call.
    ### 1) -localtime to pass the host clock to the VM
    ### 2) tell it to use the freedos.img
    ### 3) tell it to boot to the C: drive
    ### 4) Turn off all displays. Otherwise it will give errors or skewed displays ### 5) How many megabytes of memory to allow for the BM
    ### 6) Define a serial modem connection and assign a computer port
    ### 7) Mount the main BBS directory in RW mode
    ### The qemu call is loaded into the background. We do this so that we can ### spawn a concurrent socat process.
    qemu-system-i386 \
    -localtime \
    /home/bbs/doors/qemu/freedos.img \
    -boot c \
    -display none \
    -m 256 \
    -serial telnet::${portnum},server,nowait,nodelay \
    -hdb fat:rw:/home/bbs > /dev/null 2>&1 &


    ### Inform the user that it will take several seconds before the game
    ### loads up.
    clear
    echo
    echo "Loading door... please be patient...."
    echo
    sleep 3
    ### socat is used to communicate with the VM's serial modem.
    socat -,raw,echo=0 TCP:localhost:${portnum}

    if [ -f ${gobat} ]; then
    rm -rf ${gobat}
    fi

    exit 0
    ------------------------------------

    Using the script:
    I use and have developed this method for Mystic BBS. You will need to make
    appropriate adjustments if you use a different BBS package.

    The script is called from a menu option. At the time of this writing,
    Mystic BBS is currently at 1.12a4. At this time, each door menu option
    generates a specific dropfile. Later versions of Mystic (I'm told) will
    have it so there is only one doorgame menu option, and it will generate
    every known dropfile in the user's temp directory.

    For now, you will need to call the proper doorgame menu option for the
    doorgame it is intending to launch. I try to use the DOOR.SYS dropfile
    whereever possible. That Mystic Menu Option is DG.

    The parameters for the script are:

    doors.sh DOOR NODE# /DOS

    The /DOS switch is used to create a DOS version of the drop file. That way
    there is no need to run todos on the dropfile before calling the door.

    Use %3 of course, as the MCI macro to pass the users' node number.

    Menu: DG
    Data: /home/bbs/doors/qemu/doors.sh LORD %3 /DOS

    Conclusion:

    That's all there is to it. Your mileage may vary.
    Darryl Perry
    Gryphon @ Cyberia BBS
    telnet://cyberia.darktech.org
    [snip]
    --- Mystic BBS v1.12 A31 (Windows)
    * Origin: Agency BBS | telnet://agency.bbs.geek.nz (21:1/101)

    --- Mystic BBS v1.12 A35 (Windows/32)
    * Origin: flupH | fluph.darktech.org (21:1/105)

    Looks like it worked so there you have it (again ;)

    --- Mystic BBS v1.12 A47 2021/04/08 (Linux/64)
    * Origin: Mystic AlphaTest bcw142.zapto.org:2323 (21:1/145.2)
  • From bcw142@21:1/145.2 to Al on Saturday, April 24, 2021 08:01:20
    On 23 Apr 2021, Al said the following...

    Yes, Gryphon was using QEMU and did a write up of his experiences. I'm
    not sure if it was complete or where it can be found now.

    I have been thinking about this but haven't (yet) gone down that road.
    It would be great if Gryphon's howto can still be found and perhaps expanded.

    You'll find I upload the 09/09/17 re-post of Grphon's HOWTO that Skuz last posted here as it was all set for uploading (no lines starting with /) It should show up in the next few messages.

    --- Mystic BBS v1.12 A47 2021/04/08 (Linux/64)
    * Origin: Mystic AlphaTest bcw142.zapto.org:2323 (21:1/145.2)
  • From Al@21:4/106.1 to bcw142 on Saturday, April 24, 2021 15:03:57
    Re: Re: DOS DOOR games on a Raspi with Raspian
    By: bcw142 to Al on Sat Apr 24 2021 08:01 am

    You'll find I upload the 09/09/17 re-post of Grphon's HOWTO that Skuz last posted here as it was all set for uploading (no lines starting with /) It should show up in the next few messages.

    08/09/17? Time flys!

    I'm glad that didn't get lost. One fine day I'll have a better look at that, and also dosemu2 seems like a good solution although I'm not sure if dosemu2 will run on a Pi.

    Ttyl :-),
    Al

    ... You don't get once-in-a-lifetime offers like this every day.
    --- SBBSecho 3.14-Linux
    * Origin: The Rusty MailBox - Penticton, BC Canada (21:4/106.1)