dirkwhoffmann / vAmiga

vAmiga is a user-friendly Amiga 500, 1000, 2000 emulator for macOS
https://dirkwhoffmann.github.io/vAmiga
Other
306 stars 25 forks source link

Persistent HD #670

Closed rossimariolee closed 2 years ago

rossimariolee commented 2 years ago

Hi, is it possible to have recognized the kickstart 1.3 (rev 34.005) that has the HD device drivers in to boot from HD directly ?

Kickstart - 315093-02 (USA, Europe) (v1.3 Rev 34.005) (A500, A2000).zip

Booting from Winuae - Untitled 2

Alvarez81 commented 2 years ago

A Kickstart 1.3 + SCSI.device made for first Amiga 3000 and last A2000 models. Well, got it, I do not like Workbench >= 2.0 Never tried before, even if I know that there were some kickstarts with SCSI\IDE drivers patched or builted in for A3000-A2500 (Janus XT-AT-386).

Alessandro1970 commented 2 years ago

I don't succeed in formatting the Hard Drive with this kind of kickstart. I only succeed in with Kick 2.05 (Amiga 600HD or higher).

Is this a patched Kick ? (http://aminet.net/package/util/boot/kick13scsipatch)

https://github.com/KimJorgensen/Amiga-IDE-Boot-Rom

Let me know about, please

Alessandro1970 commented 2 years ago

I can boot from Hard Drive Image (60Mb Disco) with kickstart 3.1.4

jpg

dirkwhoffmann commented 2 years ago

Kickstart - 315093-02 (USA, Europe) (v1.3 Rev 34.005) (A500, A2000).zip

Why do you want to use this Kickstart? You can boot from hard disk with standard Kickstart 1.3.

mras0 commented 2 years ago

Correct me if I'm wrong, but I think this issue is actually about loadable filesystems (read from RDB).

vAmiga autoboots just fine with that KS version provided the HDF uses OFS.

SCSI.device is not involved in current vAmiga HD support, patching it won't change anything. If you want to autoboot FFS drives with the current version under KS1.3 (and are OK with ROM patching) you need to add FastFileSystem to the ROM.

rossimariolee commented 2 years ago

I have downloaded the latest version of vAmiga (beta). I have created a HardDisk OFS from menu, then using kickstart 1.3 and workbench 1.3 I formatted using from CLI: Format Drive dh0: Name HDD QUICK : but sometimes it results in a validation error.

Furthermore, if I export the file to be able to restart with the workbench installed on the HDD it happens that vAmiga does not read the exported hdd file: it is greyed out. So the export of the virtual HDD file does not work and in any case even though copying libraries and directories from the workbench the HDD does not start in autoboot mode, there will be the way to set hdd as default boot media. So there is not a clear way to set the HDD to boot everytime that emulator starts, as like as an HDD used for a PC Emulator.

Furthermore 128 MB HDD are to low to use WHDLoad software (it could works well with a 68010 and 14mhz clock).

mras0 commented 2 years ago

@rossimariolee Unfortunately OFS doesn't support "large" harddisks (it will appear to work at first, but you get validation errors and the disk is corrupted). I don't know the actual limit is but have seen 50 MB quoted. 40 MB should be fine though. I think the limit is per partition, but haven't checked.

AFAIK whdload requires KS2+, so for that case you can use FFS, which supports larger disks (up to 2GB should work without issues).

Can't really comment on the other issues, but maybe they're resolved by either using KS1.3 + OFS + 40MB disk or KS2 + FFS + for larger disks?

rossimariolee commented 2 years ago

KS1.3 + OFS + 40MB disk KS2 + FFS + for larger disks

@mras0 thank you for the informations!

So it now I need only how to set HDD as default at boot and how to export it correctly (if I export I cant load the file it is greyed out)

Alvarez81 commented 2 years ago

An option to make the HD image as default to boot every time VAmiga starts it would be fine for me too.

Whdload games can be loaded from HD and with kick > 3.0 there are no problems to install whdload prog with 68000 (68010 better for quit option).

The main advantage of the 68010 over a 68000 is that you can "exit" back to Workbench (tm) from WHDLoad with a 68010. BTW ``Additionally, the 68010 had a "loop mode", which could be considered a tiny and special-case instruction cache, which accelerates loops that consist of only 2 instructions.''

PakkunKinoppi commented 2 years ago

Hi, WHDLoad games certainly work better than simple ADFs, no strange configurations or many settings, all is prebuilt in slave. These games are already sorted, arranged and with a lot of attached documentation. Having an HD on file, with your favorite games already loaded with WHDLoad creates a functional, fast, and hassle-free system. Just a workbench with kickstart> 2.05 even just MC68000 (better 68010). But this HD must be bootable automatically when the vAmiga also starts: it must be selectable as default. Why should all these ADf be loaded for an emulator when in a virtual HD you can put OS and hundreds of games and programs ...?

Untitled 2

PakkunKinoppi commented 2 years ago

WHDLoad application setup can be found here: https://mega.nz/folder/TOQwEZhD#y4x3cI-z8pXMtLy_kl5-_A/file/PH5jnA4Q

dirkwhoffmann commented 2 years ago

Can somebody provide me an HDF with Whdload and some games preinstalled? I'd like to look into it in more detail, but I don't want to walk through the entire installation process. I've never used it before.

As always: Please don't post any copyright protected stuff on GitHub.

dirkwhoffmann commented 2 years ago

Just loaded my first game via WHDLoad. Many thanks 😎.

Bildschirmfoto 2022-03-26 um 10 45 51

Adding capabilities for persistent HDs could be a nice v2.1 feature. I don't want to add it in v2.0, because it requires some architectural changes.

As always there are other things to consider, too. If larger hard drives are supported, we run into issues with snapshots, especially when snapshot auto-saving comes into play. I cannot create a new snapshot file every 10 seconds and write a 1GB hard drive into it.

Alessandro1970 commented 2 years ago

Just remove the auto-save for hd files as like as snapshot every some times. Only save changes on exit for hard drives, or/and a button to save changes. This is my opinion.

PakkunKinoppi commented 2 years ago

Maybe this issue can be converted from "discussion" to "enhancement" for release 2.1

vAmiga powered with a persistent HD and autoboot at start without select manually the HD would be great...

Alessandro1970 commented 2 years ago

...the same to turn on an A2000 with a Hard Drive fully charged with WHD-games ready to be played !

dirkwhoffmann commented 2 years ago

I think I've found a user-friendly way to make hard disks persistent (if the user wants to). In the next version, a hard drive can be marked as "sticky" via a new menu item:

Bildschirmfoto 2022-04-01 um 18 16 53

If a drive is marked that way, vAmiga exports the drive to an HDF inside the user applications folder (which means the user will never see these files under normal circumstances). E.g., when marking HD1 and HD3 as sticky, the following files are created:

ls /Users/hoff/Library/Containers/dirkwhoffmann.vAmiga/Data/Library/Application\ Support/vAmiga/Media 
hd1.hdf hd3.hdf

Unmarking a drive as sticky will delete the HDF from that folder. vAmiga interacts as follows with the created files:

dirkwhoffmann commented 2 years ago

it happens that vAmiga does not read the exported hdd file: it is greyed out.

@rossimariolee I haven't been able to reproduce this. Does the name of your exported file end with .hdf?

rossimariolee commented 2 years ago

@dirkwhoffmann ...in those days. Now it seems to work for me.

dirkwhoffmann commented 2 years ago

The "sticky" feature has been replaced by a true write-through mode in v2.0b2. In write-through mode, an HDF file is created in the applications default folder and updated on-the-fly when a sector is written. When vAmiga launches, it checks the application defaults folder and reuses the HDF if it was found. Bottom line: To make hard drives persistent, enable write-through mode in the HDx menu and make sure that a hard drive controller is plugged in on startup (go to the Peripherals config panel, enable one or more hard drive controllers and click "Use as default").