WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?  (Read 25957 times)

Offline CentralWare

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 776
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #15 on: January 26, 2015, 02:48:00 PM »
amgh:

Complete and hopefully thorough instructions that should get you from start to finish:

STEP 1:
Download CorePlus-current.iso from the 4.x repo:
     http://tinycorelinux.net/4.x/x86/release/CorePlus-current.iso

Burn CorePlus 4.x to CD and boot your DOS box using this disc image.
Run tc-install and reformat the USB stick using 4.x
Tell tc-install to install everything (wireless, you name it.)
When asked about extensions, point tc-install to /mnt/sr0/tce
Allow the installer to "do its thing."  Once finished, open a Terminal window and type the following:

fdisk -l | grep bytes
This will show you the drives you have available on the machine.  Paying attention to the drive size (in bytes) determine which one is your USB drive - I'm assuming sda1 for this document.

sudo tune2fs /dev/sda1 -L tc4 [ENTER]
sudo mount /mnt/sda1 [ENTER]
cd /mnt/sda1/tce/boot/extlinux [ENTER]
sudo vi extlinux.conf [ENTER]

Using the arrow keys, navigate to the APPEND line and press the letter "a" to start editing.
Erase and replace the boot codes to read as follows after initrd=boot/core.gz:
quiet syslog showapps tce=LABEL=tc4 opt=LABEL=tc4 home=LABEL=tc4 local=LABEL=tc4
If your DOS box has no internet, also add nodhcp after showapps.
Press <CTRL>+C to stop editing, then type :wq to save and exit.
Type in sync [ENTER] to ensure the changes are written to the stick, then
eject the CD, sudo poweroff to shut down the machine, then remove the USB stick.

If your DOS box has internet, do the next step on the DOS box, otherwise use the Kubuntu machine.

STEP 2:
Boot the internet based machine with the USB stick.  If you did a complete install from Core Plus, you should end up on a desktop.  We have a lot more than we need, and none of what we want, so the goal here is to create a custom install.  Attached you'll find one of our in-house extension tools which should help you along the way.  Place this file (package.tar.gz) on the USB stick and extract it into a directory such as /mnt/sda1/appman

1) From the desktop, press <CTRL>+<ALT>+<BACKSPACE> which should shut down XWin
2) From the prompt, navigate to /mnt/sda1/appman
3) Copy the extension cp appman.* /etc/sysconfig/tcedir/optional/
4) Add the following line into /opt/bootlocal.sh:
su -c "tce-load -i /etc/sysconfig/tcedir/optional/appman-1.0.1.tcz" tc

Reboot your machine by entering sudo reboot
At this point you have everything you need to maintain your software.  Now, all that's needed is to tell it what software apps you want to maintain.  Once you've rebooted, you should end up on the Plus desktop again.  Run the EDITOR from the toolbar and OPEN /opt/.apps.lst which you'll find four of the basic desktop applications/extensions (Xvesa, etc.)  Delete all of these lines and add the following:
Code: [Select]
acpid.tcz
alsa.tcz
dosbox.,tcz
firmware-KERNEL.tcz
libasound.tcz
libogg.tcz
libvorbis.tcz
sdl-sound.tcz
SDL.tcz
* You may need additional drivers for graphics/sound which will have to be experimented with.

Once saved, shut down X-Win (ctrl+alt+backspace) and run the command reformat from the prompt.  When the machine reboots, it'll check and install any software listed from above along with any dependencies needed.  You'll obviously need internet for it to do its job, so if your DOS box doesn't have internet, boot the USB stick from your other machine and let the app manager run its duties with 'net access.

The reformat command will remove any software extensions you have installed (and optionally keep wireless networking if you tell it to) and once it reboots, will attempt to reinstall what ever extensions you have listed in /opt/.apps.lst while retaining all of your settings you have in /home and /opt.  If you ever clutter up your home directory and want to start that off from scratch, simply delete /mnt/sda1/home and reboot - a clean home directory will be created.  (The same applies to /opt.)  If your network is slow to assign addresses to the machine and networking isn't detected when the machine first boots up, simply drop to the command line and run appman manually.

Finally, if you're not too familiar with dosbox itself, I'd recommend reading the comments from the extension itself.
From the prompt: tce-ab
From the desktop: "Apps"
Search for "dosbox" and scroll down.

Hope all of this gets you where you need!

Offline amgh

  • Newbie
  • *
  • Posts: 22
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #16 on: January 26, 2015, 11:10:20 PM »
@Juanito : I actually first ran tce-run, I didn't run tce-load...(oops)

@centralware : Thank you for the very detailed explanation!

Before I read the last post, I did the following :

- Downloaded the latest 6.x Core-current.iso (9MB+)
- Downloaded all the new files from the latest 6.x repo
- Used VMware in Windows 7 to install the core to my USB drive
- Used Kubuntu to copy the downloaded files from the 6.x repo into the USB drive's tce/optional directory

- Now I entered tce-load - i dosbox.tcz

The output was :

libogg.tcz: OK
libvorbis.tcz: OK
libasound.tcz: OK
libpng12.tcz: OK (Initially it said that this file not found, so I downloaded this file too)
sdl-sound.tcz: OK
libmad.tcz: OK
SDL.tcz: OK
dosbox.tcz: OK

Now, when I run tce-run dosbox.tcz, I get the following message :

Exit to error: Can't init SDL. No available video device

If I still can't get this to work from here, I'll try to follow your detailed instructions.



And about my laptop :

XMG A102 (Clevo W110er base)
Core i7 3632QM
4GB RAM
GT650m
intel HD4000
Centrino Advanced 6235 wifi/bluetooth

No optical drive (hence using vmware to install to USB)

Offline CentralWare

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 776
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #17 on: January 27, 2015, 01:46:29 AM »
If memory serves, some of the following will be required, but which ones are unused afterward...  senility kicks in.

glibc (A bit old.  I'm thinking glib2.tcz might work, at very least glib1.tcz)
ncurses
libstdc (Old and doesn't exist for TC, but I think libstdc++ might cover it)
libstdc++-5.0.7.tcz
libzip.tcz (I think this one's semi-optional)
libX11-xcb.tcz
libXrandr (I think Xorg-7.6-lib also has the screen functions, but not entirely sure)
SDL.tcz

Start with the LAST item and work your way up.  Boot the machine (with internet) and
tce-load -wi [extension] one at a time for those which are available in TC.  For the video issue, I'm thinking stdc++ and Xorg-7.6-lib are the likely culprits.  It may also be required to load up the graphics-KERNEL and/or graphics-libs packages for additional display support since we're going to be "emulating" ega/vga modes.

You may also want to look at the log file in /var/log/messages to see if dosbox complained more specifically (if you have syslog as a boot code.)

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11694
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #18 on: January 27, 2015, 02:29:13 AM »
Hi amgh
I run dosbox in a graphical environment. I kicked my screen over to the console and was able to reproduce your error message.
I found this:
https://bbs.archlinux.org/viewtopic.php?id=159267
though it did not work for me. I also found a reference that suggested executing this first:
Code: [Select]
export DISPLAY=:0which made the error go away, but produced no prompt. Ctrl-C got me back to the tc prompt.
From what little I found on Google, running dosbox from the console seems to be problematic.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11049
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #19 on: January 27, 2015, 04:47:59 AM »
Your picture looks like text mode. SDL requires at least a framebuffer, and prefers X.
The only barriers that can stop you are the ones you create yourself.

Offline CentralWare

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 776
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #20 on: January 27, 2015, 06:46:41 AM »
A serving of "food for thought:"

I just loaded up dosbox on a dual-core 2.4ghz machine with 12GB RAM and twin video cards (intel and ati).  I ran a quick installation of dosbox on top of the extensions I already have loaded and save for a sound problem (snd_seq) it launched without a hitch.

I ran an old DOS game through the dry-cleaners and loaded it into my virtual "C" drive and it started.  No sound, of course, due to the above issue, but it's been ages since I've seen the opening screen of battle chess! :)

Just for giggles I started the game.  Hideous doesn't come close to describing bad performance.

While I was thinking about the topic, I decided to fire up QEMU...  it took me a bit to remember how to create drive images, mount floppies, etc. but otherwise everything went smoothly.  After installing MS-DOS 6.22 on a generic 512MB hard drive image I loaded the same battle chess, same settings, etc. and it actually ran TOO fast.  (I hadn't tweaked the processor settings, so I'm guessing qemu was running as an i386.)

MY THOUGHTS...  if dosbox turns out to be more of a nightmare than you'd care for, you might want to venture over to Q.  If memory serves, it allows you to decide what hardware you want to emulate (sound-blaster-16, vga/vesa, etc.) and as long as your host drivers are all working correctly, it's assumed your DOS session(s) should work, for the most part, flawlessly.

Just out of curiosity, I decided to dust off an old (and rather harshly scratched) Windows 98 SE disc.  Other than it having a problem overwriting a file that's locked (my doing) it's almost finished installing.  You can dig out your old Win9X games while you're at it! :)  Best of all, as one would expect...  it's portable.  (Not ALL cases, but if you were to install all of the firmware extensions, graphics support, etc. you're likely to close the gap for what hardware it might have issues on.)  Considering Flash based drives are a dime a dozen these days, you could have a dual-boot portable pen set up in no time, the first boot being TC plus desktop, tools or what-have you, the second being your DOS-like environment (which in my opinion is vital considering DOS has little if any networking support, so getting your games ONTO the system would be a little challenging if you're not overly familiar with command-line functions.

"Getting ready to run Windows for the first time."  I can't say how many years it's been since I've seen that screen! :)


Offline amgh

  • Newbie
  • *
  • Posts: 22
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #21 on: January 27, 2015, 10:02:21 PM »
Thank you all for your information.

If it requires a graphical environment, I'll try it from the CorePlus package again.


My initial interest in TinyCore is to have a very, very streamlined Dosbox launching on boot. And hence I ventured to the smallest package available and move on from there to get all the required files to run Dosbox in TinyCore Linux without problems.

I also would like to know if it's possible to download all the required files to run Dosbox using the most basic core.

If so, are there any directions as to what are ALL the required tcz files to run Dosbox from the Core package?

And suppose the system has difficulty to have a wired connection, (I'm currently using my phone's internet via hotspot mode), is running Dosbox as simple as placing all the required tcz files in the /tce/optional directory?

And do the required tcz files differ from system to system? Or are they all the same across all the different machine configurations?

If they are the same, then there should be a list of the standard required TCZ files for Dosbox for the most basic Core package, right?

Allow me to explain again what I wanted to do :

1. Install latest Core-current.iso package to a USB thumb-drive.
2. Download all the required Dosbox TCZ files from the 6.x repo and place it in the tce/optional directory.
3. Create a boot script to run Dosbox on boot.

Is this possible, or it's more complicated than that?

My main problem is I do not know what is the complete list of TCZ files required to run Dosbox successfully.

(Problem is also due to trying out the USB on a non-connected system, so would like to download from Kubuntu first all the files and then put them into the directory)

Thank you again for being so patient with my questions..


 

Online Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14849
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #22 on: January 27, 2015, 10:13:49 PM »
One way to see what extensions are required to run another extension is to look at the *tree file (for example, dosbox.tcz.tree). There will be some repetition, but the dependencies will be listed recursively.

To run a gui, you need aterm, wbar, flwm, Xprogs and one of Xvesa, Xfbdev or Xorg-7.7.

Offline amgh

  • Newbie
  • *
  • Posts: 22
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #23 on: January 27, 2015, 10:47:25 PM »
Thanks Juanito. I'll look at the tree file.

Offline CentralWare

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 776
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #24 on: January 28, 2015, 01:13:08 AM »
It sounds as though your Kubuntu machine is connected to the internet...  so why not boot your "K" machine/ Windows machine with Tiny Core?  (If the BIOS supports it, which most newer machines do, just have USB HDD as your first boot device, thus "IF" your TC stick is inserted, it'll boot from that first.)

On your stick, create and save a file called "apps" or "apps.lst" -- something you will easily identify with knowing "...hey, this is my list of extensions!"  You'll likely want to add extensions to this list one item per line just for sake of organization (use empty lines to separate "categories" of extensions, such as the first group is to get the machine running, the second for a desktop, third for audio, etc.)

Start the list off with a basic A/V list to get you to a working desktop + graphics + audio.  My list here shows desriptions for each extension - just add only the extension's file name, not the description:

Code: [Select]
Xvesa.tcz             This is a basic VESA based X Server, less powerful than Xorg, but more dieted
Xprogs.tcz           This is a set of tools used with X for basic configuration, etc.
flwm_topside.tcz  This is a generic/small window manager
wbar.tcz               This is the icon toolbar at the bottom of the screen (again, small)

acpid.tcz              ACPI service to allow you to press the power button to shut down cleanly
alsa.tcz                Base audio support (Smaller than OSS if I'm not mistaken)
alsa-conf.tcz         Configuration tools for Alsa
alsamixergui.tcz    Audio mixer for Alsa
[i]* I noticed dosbox complain about OSS...  OSS instead of alsa may be needed[/i]

dosfstools.tcz      Since you're using DOS based files, you'll likely need this
ntfs-3g.tcz            If you need to read/write to NTFS disks/partitions, this will be needed
ntfsprogs.tcz        Support tools for NTFS
graphics-KERNEL.tcz is likely to be needed for different DOS and Win16/32 support
Xorg-7.6-libs.tcz (or 7.7) is likely needed for DosBox for audio and video

(Optional)
nfs-utils.tcz         If you need Network File Support (sharing) you'll need this
cifs-tools.tcz       If you need to access Windows shares somewhere, you'll need this
filesystems-KERNEL.tcz if you use NTFS, CIFS, NFS, etc. you MAY need this

firmware-[ITEM].tcz   Some hardware drivers are compiled outside the kernel (such as ATI)
graphics-[ITEM].tcz   Same concept for firmware; if you plan to use different graphics cards
                                 ** Mostly when using Xorg, not really with Xvesa since 3D isn't supported.

(DosBox)
dosbox.tcz         Initial dosbox package, notes it was tested with alsa only
libmad.tcz          MPEG decoding engine (I think it's both audio and video)
SDL.tcz              Media graphics engine.  Note: 3D will not work without Xorg (instead of Xvesa)
sdl-sound.tcz     Media audio engine.
sdl_gfx.tcz          Media graphics - additional libraries (Added just in case)
sdl_pango.tcz    Media Pango bindings - unsure/unlikely needed in dosbox environment
sdl_perl.tcz        Media Perl bindings - doubtful to be needed in dosbox
ia32                   Noted online as being a requirement, not available in TC that I'm aware of

(Network)
wireless-KERNEL.tcz  WiFi Support if WiFi is needed
wireless_tools.tcz      WiFi Tools
wpa_gui.tcz               WiFi GUI (instead of command-line wifi setup)
[i]* If you boot a given machine and it complains about a driver (likely missing) or you simply want to add a bunch of drivers to help cover those bases, add the extension firmware-KERNEL.tcz which covers a good number of devices without adding too much "fat" to the system.)[/i]
This list should be the most productive based on what you've discussed, but cannot possibly guarantee it works on "every" machine out there, thus the different notes here and there regarding hardware.

Once your list is put together, a single command can launch it all and tend to installing everything listed IF the machine in question has internet access:
tce-load -wi `cat /path/to/apps.lst`
Kick back, grab a coffee, and let it do its thing.  Once finished, reboot and you should find yourself at the blue Core Desktop.  Open a new Terminal window and start preparing your test "dos" environment (I didn't include file managers, etc. in the TCZ list above, so you'll have to do this by hand.)

It's also assumed you know how to configure and navigate DosBox (the man-page is calling otherwise) where you'll want to tweak settings for CPU, etc. (otherwise your DOS games will run oddly or too fast.)

Offline amgh

  • Newbie
  • *
  • Posts: 22
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #25 on: January 28, 2015, 03:26:11 AM »
Thanks a lot, centralware!

That was quite comprehensive! Appreciate it.

Offline CentralWare

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 776
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #26 on: January 28, 2015, 04:36:12 AM »
LOL - some would call it long-winded! :)

At the end of the day...  if I teach something to you (and you have enough to to go on in order to comprehend the topic) there's a chance you may teach someone else down the road.  It's worth it! :)

Offline NewUser

  • Full Member
  • ***
  • Posts: 169
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #27 on: January 29, 2015, 07:40:05 PM »
I know this is a Tiny Core forum, so I hope this doesn't step on any toes, but what about FreeDOS for this purpose?

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11694
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #28 on: January 30, 2015, 12:05:22 AM »
Hi NewUser
I already suggested that in reply #1.

Offline NewUser

  • Full Member
  • ***
  • Posts: 169
Re: How to install Dosbox into Microcore for a Pseudo-vintage DOS machine?
« Reply #29 on: January 30, 2015, 05:32:33 PM »
Oops, missed that, Rich.  I keep a DOS 5 usb stick because I support some test engineers and they have found that FreeDOS doesn't work with some BIOS flash programs.  But for games FD should be good.