UAE SmartFileSystem Hardfile Tutorial, Wb 3.0

arnljot

Dad, gamer, nerd, amigian
Joined
Feb 5, 2008
Posts
3,849
Country
Oslo
Region
Oslo
0. Introduction
Okay, I'm doing a small writeup here of what I've learned today about WinUAE 2.0.1, SmartFileSystem and hardfiles today.

The setup will be a hardfile with SFS on it, we will be using HDToolbox to control that hardfile as a real Amiga hard drive on the Amiga side of things, and the running operating system will be Amiga Workbench 3.0.

This guide expects you to have a working WinUAE setup installed with a set of Amiga 3.0 ROMS, and SmartFileSystem 1.279 downloaded in a 68k version from strohmayer.org. You will also need Amiga OS 3.0 diskettes in ADF format available.

A hard file like the one we create here has the advantage that if it uses a Motorola 68000 KickStart 1.3 compatible filesystem (like FFS), it can be used with an ARM equipped Minimig as hard drive. If you don't know what this means, I suggest that www.minimig.net as an appropriate source for learning :)

0.1 Thanks
First of a huge thank you to Toni Wilen for his hard and excellent work on WinUAE throught many years, and his fantastic support for users over at EAB.

0.2 History
26th of December 2009 - rev 0: First version
10th of May 2011 - rev 1: Fixed broken images

1. Starting out.
Where ever you read Amiga 1200, you can substitute it for Amiga 4000 as it will work the same way if you would rather emulate the big box Amiga over the sexy little A1200 wedge.

1.1 Setting up an Amiga 1200
First we use Quick Configurations to load a "blank a1200".
0uaequickstart.png


Now, with this done we've just acquired ourselves a spanking new Amiga1200 right out of the box, no yellowing and with a little extra kick compared to the original version.
1uaeharddrives.png


In this screen we'll create our Amiga 1200s harddrive. Since we're going to use SmartFileSystem 1.279 we can in theory use hard drives larger than 4GB, but under OS3.0 and 3.1 we will need extra software/patches to enable that. Either TD64 or NSD Patch, since this tutorial is focusing on the hardfile setup procedure, we'll have to do a separate tutorial on +4GB disks later :)

The next step is to create the actual hard file. I'm using 1GB here (1024MB), you can use any size you really want to - our own rkauer swears to 512MB - but please remember that you'll experience problems if you make it larger than 4GB and do not take steps to patch the operating system.

Click the button marked "Add Hardfile..."
2uaecreatehardfile.png


The window in the screenshot above will open, enter the size in MB and click the "Create" button. A file requester will appear, select an appropriate name and location for you, and save it.

Next is to select the hardfile for use
3uaeselecthardfile.png


Click the symbol highlighted above to select the hardfile you created previously.

Now, we're almost done here.

At this point, the hardfile you've created will be controlled by WinUAE and it'll be available to the Amiga side of things under uaehf.device.

Since we want to use Amiga tools to control this virtual hard drive, we need to instruct WinUAE to release control of the RDB to the Amiga, and for 100% "authenticity" we'll also set it to be available under the Amigas scsi.device.
4uaeenablerdbmode.png


Notice to set the "HD Controller" to "IDE0", also click the button "Enable RDB Mode".

Now we can click "OK".

Voila, we have one of those Amiga Technologies Amiga1200 40HD. :LOL:

Now one last thing before we continue, a "plain" Amiga1200 has one floppy drive. On a real Amiga this is a pain while installing the operating system as there is a lot of floppy swapping during the install process. One good advice here is to up the number of emulated floppy drives on the Amiga to the max and crank the floppy emulation speed up to 800%, so that you minimize your swapping and waiting.

Most who have had this dismal experienced refer to this as floppy DJ'ing.

1.2 Making SmartFilesystem available to the Amiga
Now, as stated when we started out here, we're aiming for a hardfile with SmartFileSystem v1.279 on it.

Some how, some way we need the SmartFilesystem file available on the Amiga side of things while the emulation is running, so that we can add the file to the new vitural harddrives RDB.

The emulated Amiga has three ways to access files from the windows side of things.

  1. Floppy disks. After all, to begin with in our emulation we'll have a "blank A1200" with an unformatted HD. In such circumstances on a real Amiga, floppies are your only option. So we could create a floppy image and blah blah blah... This is just too much work.
  2. "Add Directory or Archive..." This is WinUAE specific. Using this method you can use a supported archive format (RAR or ZIP variants, or even Amiga archive formats) as an harddrive on the Amiga. Until recently this was my prefered way to do this. I'd just add the SFS_1.279_68k.lha as a hardfile with a device name SFS to the emulated Amiga, or I'd add a hosted windows directory with the files extracted to them.
  3. Drag and drop. This method simply rocks. Get WinRAR or another tool that supports .lha archives. Select the SmartFilesystem file which is in the archives L folder, and drop it into the WinUAE window of the emulated Amiga running. Hey presto! The SmartFileSystem file will appear in DF0:runme.exe, if using this method it's smart to have more than one floppy drive and move the Install floppy to DF1:
Needless to say, I'm going with alternative #3 here, as it's the easiest by far!

1.3 Setting up the hard drive on the Amiga (hardfile)
This chapter details how you install SmartFileSystem into the virtual hard drive which is hosted as a hardfile under Windows.

Most steps here are identical under Amiga OS 3.0 on a real machine.

1.3.1 Boot Install disk
Insert the "Install" disk into the virtual floppy drive.

Before you proceed from this point, make sure that you've chosen one of the three alternatives outlined in chapter 1.2 for making the file SmartFilesystem available to the Amiga.
5amigahdtools.png


Navigate from the floppy to the drawer HDTools and open HDToolBox
6hdtoolbox.png


This is what HDToolBox looks like when it's loaded with a new unknown hard drive in the Amiga, at this point the hard drive is "factory clean" or has no Amiga RDB block installed.

1.3.2 Define the disk
Click "Change Drive Type".
7setdrivetype.png


In the window that opens, click "Define New..."
8driveread.png


The window above shows the result after two button presses. The first is "Read Configuration", this will trigger a prompt where HDToolBox explains what it'll do, at this point you must click "Continue" and you'll end up with data similar to what I have here.

We're done here now, we can click "OK".
9drivedefined.png


At this screen we just click "OK" again.
10readytoparion.png


Now we'll see our new hard drive in HDToolBox, ready for partitioning.

1.3.3 Partitioning the drive
To start this process we click the button "Partition Drive" (you didn't see that coming now did you?! ;-) )
11parioning.png


HDToolBox gut reaction at this point is to split the hard drive up into two equally sized partitions. See the illustration above.

Depending on the size of the drive, and the project I'm working on I'll either just do one jumbo partition or one suitably sized system partition and the rest for a Work volume.

Our own rkauer wants at this point to make two important notes:

  1. The system volume rarely needs to exceed 512MB in size. You will install your stuff on a partition separate from the system to keep your instal neat, tidy, healthy and robust.
  2. More importantly, for a problem free hard drive operation. Always have your boot partition inside the 4 first Gigabytes of your hard drive and do not use partition sizes above 2GB. You may ignore the second part of this advice, but ignoring the first part is asking for true pain.
The active partition which you are editing is "black lighted", it's colored black.

In my setup for this tutorial, I'll delete the second partition (in my case UHD1) and expand the first partition to use the whole drive.

To expand the first partition, I drag the blue arrow at the end of the first partition to the far right of the window so that it consumes all of my hard drive.

I also change the device name of partition so that it reads HD0, some prefer DH0 (I believe it was GVP fast prep that first introduced me to DH0 under Workbench 1.3 on the Amiga 500... :) ).

I expect this tutorial will be followed up by a heated discussion on the merits of the two naming schemes. Is it HardDrive0 or DiskHard0 (ref DiskFloppy0). Enjoy.

Now we've done the partitioning. We're ready to move on.

1.3.4 Install SmartFilesystem
Now back in chapter 1.2 I went with #3, so at this point the floppy in DF0 will in my running Amiga be "empty" with a file runme.exe on it. And the floppy in DF1 is the Install floppy from Amiga OS 3.0.

If you chose option #1 or #2 you'll find your SmartFilesystem file at the location you set up in that case. With option #3 it's called runme.exe in DF0:

So, at this point we enable the "Advanced Options" check mark in the window.
12advancedoptions.png


Before we proceed, three words about "Boot Priority": Higher number wins.

Well, a few more words. Boot priority goes from -127 to 127. The lower the number the less likely is it that partition will boot your Amiga if another bootable device is present (I'll likely have a higher number). The Amiga DF0 floppy device has a Boot Priority of 5, meaning that if your hard drives bootable partition has a lower boot priority than this, your Amiga will boot from the floppy drive if a floppy with a boot sector is present in DF0:

Now, to actually add the SmartFilesystem to the RDB so that partitions can be formatted with it, click "Add/Update..."
13addsmartfilesystem.png


At the window that opens (overview over RDB installed filesystems), click "Add New Filesystem...", a dialogue window prompts you for the location of the file which holds the executable implementation of the filesystem. Since I am an option #3 man, I enter DF0:runme.exe. Your path may vary.

Click "OK", at this point another important dialogue box is prompted at us.

This box has three input fields, DosType and Version (abbreviated a bit here). If all is correct so far, Version and Revision should be "1" and "279" respectively.

The "Enter DosType for File System" is wrong.

SmartFilesystem can operate in two different modes. Either as SFS\00 or SFS\02. SFS\00 is the mode we'll focus on here, it's the most compatible mode and common mode to operate SmartFilesystem in. SFS\02 gives support for file sizes above 2GB and hard drives larger than 128GB.

The DosType for SFS\00 mode is 0x53465300. This is what we must enter in the dialogue we're being prompted with.
140x53465300.png


So, now we click "OK".
15sfsadded.png


We now see that our RDB lists SmartFilesystem 1.279 as a Custom File System installed. Very good, now let's click "OK".

1.3.5 Setting SmartFilesystem as partition filesystem
At this point we've haven't yet told HDToolBox to set SmartFilesystem as the filesystem on the partition we've created. We need to do that now.
16letssetsfs.png


Notice that it's saying "Fast File System" under "File System", that's all wrong. To amend that we click "Change..."
170x53465300again.png


In the window that opens, we click "Custom File System" and enter 0x53465300 again in the "Identifier" input field. It's important that we remember to hit enter after writing in the DosType so that it "sticks".

And then it's time to click another "OK" button.
18itscustom.png


This time the "File System" reads "Custom File System", very good. Let's click another "OK" button!
19saveitbygolly.png


Now, this is very important: All our good work needs to be saved now. So far it's all in-memory and not persisted to the hard drive. So by Jehovah, click that "Save Changes to Drive" button now, and see how the status changes to "Not Changed" and the button is disabled.

Let's pat ourselves on the back. We've done a jolly good job!

We can leave HDToolBox now, our job here is now done. The hard drive is configured, partitioned and SmartFilesystem 1.279 is installed and ready for use.

1.3.6 Exitting HDToolBox
Nothing exciting happens when we now exit HDToolBox. So to see the fruits our labors, we (for option #3 people eject "empty" and insert Installer into DF0) reboot the Amiga.

1.3.7 Formatting

When the Amiga reboots we notice that we've got a new disk icon present on our Workbench. It's "DH0:NDOS", it's our new unformatted bootable partition, only it's not of much use yet. We need to format it.

When using SmartFilesystem we have two ways to format the partition.

  1. We can use any format tool as long as we use "Quick format" option.
  2. We can use SFSformat which is provided in SFS.lha on strohmayer.org
Using any other tools is on your own risk. The Format tool provided with OS3.9 works with SFS3.9 but the Format module provided with Directory Opus Magellan II 5.82 doesn't.

"Workbench" is a good name for the bootable system partition. It's the default name that the install process would use if you try it. We can choose what ever we want, but we're on the narrow and safe road with "Workbench".

2. Installing OS 3.0
This will be a separate tutorial :)
 
Last edited:
Awesome Arnljot! Not bad, but of course I'm an Amithlon/E-UAE guy (except for the fact i use winuae for CF transfer) Anyway, very nicely done.

@Mods
Thanks, Hopefully it helps future users
 
Last edited:
Great work m8. (y)

It seems that the screengrabber for Vista is crap (as always), and Amiga-specific is clear.
 
@dreamcast270mhz & Phantom
Thank you guys, I'm glad you like it.

@Phantom
The screenshots of WinUAE config windows are done with Alt-PrintScr, then pasted into MS Paint and saved as PNG.

The screenshots of Workbench 3.0 HDToolBox are taken by WinUAE (Output > Save Screenshot), then touched up in MS Paint.

I think the reason to why the Amiga screenshots seem more "crisp" is that there is no transparency or other Vista Aero effects on those. It's also a matter of resolution and smoothing of fonts and all that which Vista does.
 
interesting

interesting

good manual, need to pick up that knowledge normally spread everywhere over the net (y)

Part 2 setting up the workbench would be easy manual since the user friendlyness of workbench :roll:

A part 3, applying the aminet lha archives (mui) etc , and more important how to get lha working, adf transfer tools, etc etc. would also make a nice addon, since there lot of users might have questions, getting to run more modern applications.

The part 3 guide seems to be gone online, it existed one day..
 
What I've planned so far is:

- A guide on how to use a CF Card with WinUAE and a real Amiga
- A guide on setting up a drive of 4GB+ with Amiga OS 3.0/3.1
- A guide on installing Amiga OS 3.0/3.1
- A guide on PicassoMode96 TNG

It's really cool that this tutorial was deemed "sticky worthy".

The next guide I start on will be the CF card guide, it'll take a while before I post it since my son is arriving today to live with me for 14 days. It'll be fantastic :)

@Mods / Merlin
I can zip the pictures that make up this guide and email them to you so that they can be hosted on Amibay.com. My domain is stable, and it'll be there in the forseable future.
 
@arnljot

an invaluable guide my friend, many thanks for your hard work, keep em coming.

TC :bowdown:
 
I've not read through the whole tutorial, but rememeber that HDToolbox won't show the correct sizes for drives over 4GB. For this I highly recommend the alternative HDInstTool.
 
Nice guide!

Sorry for the thread resurrection from a complete noob like myself.

I understand what you're doing here. I just have a quick question as to *why*? If I understand correctly, SFS is mostly about supporting large volumes. (I get that it's also journalised, like most modern file systems, though I'm not sure that the Amiga OS truly benefits from this.)

But in your tutorial, you set up a 1GB drive (backed by a hardfile), and then implement SFS. But why are you bothering to switch to SFS on such a small volume?

Sorry if this is a stupid question! I've probably missed something really obvious!

What I've planned so far is:

- A guide on how to use a CF Card with WinUAE and a real Amiga

Did you ever make that CF Card / WinUAE / real Amiga tutorial? This is something I'm interested in... Having sold my real Amiga hardware recently, but recently finding out about the ability to setup HDs in WinUAE and then install them to a real Amiga through CF card, I'm suddenly finding myself wanting to buy another real Amiga!!
 
But in your tutorial, you set up a 1GB drive (backed by a hardfile), and then implement SFS. But why are you bothering to switch to SFS on such a small volume?

Sorry if this is a stupid question! I've probably missed something really obvious!


I've setup even my 2gb CF cards with SFS, I get about 33% faster read speed compared to FFS and games with large files like Doom load much quicker (y)

Only thing to mention is you need at least an 020, SFS cannot be used on a 68k Amiga.

Steve.
 
Last edited:
Fair cop! And I hadn't even considered trying games like Doom on the Amiga... I'm still in the fully-retro phase. ;)
 
Ok, earlier this year I swiched hosting from a small company to google. Since google doesn't allow hotlinking of images I've upped the images at imageshack and relinked them in.
 
Back
Top Bottom