Giter Club home page Giter Club logo

host-fst's Introduction

Host FST

This is a file system translator (and driver) for compatible Apple IIgs emulators. It depends on emulator support (but should not cause problems if run on real hardware or an unsupportive emulator).

Host FST

This FST exposes a shared folder from your native file system as a volume within GS/OS. (The volume will not be available from ProDOS 8). Reading or writing a file on the :Host drive will read or write the file directly on the native file system. File Types, Finder Info, and Resource Forks are supported.

Host FST

In general any software that works with the HFS FST should work with the Host FST.

Installation

Currently, only GSPlus (0.13+) has support for the host fst.

  1. See the releases page for a disk image.

  2. Install the host.fst and host.driver in your *:System: folder

  3. Bleeding edge versions of GSPlus have a config option (F4, Host FST Configuration) to select the host fst directory. (On older versions it doesn't work correctly).

  4. If you're using an older version of GSPlus, shutdown GSPlus and manually edit the config.txt file. Add a line like:

     g_cfg_host_path = /Users/me/IIgs/
    

Note

Large volume sizes can cause a buffer overflow Finder's code and cause a crash (usually when displaying the File Info window). This is fixed as of System 6.0.4.

host-fst's People

Contributors

ksherlock avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

stygianblues

host-fst's Issues

GetRefInfo and GetRefNum do not work correctly with resource forks

The resourceNumber field returned by GetRefInfo should indicate if the resource fork or data fork of the file was opened, but under the Host FST it is always 0 (indicating the data fork), even if the resource fork was actually opened.

Also, GetRefNum cannot successfully look up the reference number of an open resource fork (using a resNum value of 1).

To fix both these problems, bit 14 of the FCR's access field should be set to indicate a resource fork.

How do I use Release 3?

Sorry if this is an obvious question. I have downloaded release 3 and am trying to figure out how to install it. The installation instructions say to install the host.fst and host.driver in your *:System: folder, but there is no host.fst or host.driver in the release 3 disk image. Am I supposed to use the files from a previous release, or is there a different install process for release 3?

Spec improvements / cleanup

Hi Kelvin! I'm implementing your WDM protocol in MAME's IIgs driver right now, starting with the conceptually simpler MLI intercept version for ProDOS 8. I've completed the first half of the functionality where we can boot with ATINIT in place and the WDM hooks operating and ProDOS works normally with the emulated disk drives even though all the MLI calls are trapping up into the emulator. Next up is actually adding the functionality for accessing the host.

Currently you put the necessary patch code in slot 7's register area at $C0F0. I feel your pain in finding 11 free bytes anywhere in an Apple II that aren't on the language card, but $C0F0 is a non-starter, as you probably already know. MAME emulates the CFFA2, the Apple II Rev. C SCSI Card, and the AE Vulcan IDE and all 3 are commonly parked in slot 7.

For this, I'd suggest defining a spec for a slot card to emulate where the CnXX space has a 4-byte ID and maybe 192 bytes of RAM. Then ATINIT simply needs to scan for the ID and place any patches there.

We have an implementation in MAME for host file access on NuBus Macs involving an emulated NuBus card that accepts open/read/write/seek/close/change directory/delete commands and a matching classic MacOS driver. I prefer the cleanliness of that approach since it keeps OS internals from leaking out wholesale into the emulator code, but that may be unavoidable with ProDOS 8 regardless.

Cheers!
-RB

please delete this

I'm sorry, I just found the 'release' feature of github lol. Please delete this.

yankit xvf

in the installation for gno/me, i tried setting my HFS volume to be host-fst. the archiver (yankit xvf /host/download/gnofs.shk) said "GS/OS Error $0046" when targeting host-fst, but all the other installation commands worked.

P8 Issue

When returning from a P8 application it does not remount drive.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.