[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Apple IIgs Virtual Hard Disk Project - Thoughts/Different Approach?
IUnknown <stevementzer@gmail.com> wrote:
> On Apr 28, 9:23 pm, schmidtd <schmi...@my-deja.com> wrote:
> > On Apr 28, 9:28 pm, IUnknown <stevement...@gmail.com> wrote:
> >
> > > [boot via serial port]
> > > If this is incredibly stupid or naive, please speak up and I will go
> > > back to my hole....
> >
> > It's neither, but then it's already been done - have you seen the
> > Apple Game Server?http://a2gameserver.berlios.de/
>
> Not quite the same as what I was thinking.. I would like to see the
> virtual hard disk show up on the gs/os desktop and be fully recognized
> by prodos, etc.
>
> I took a quick look at the IIgs firmware reference, and it appears
> that it WOULD be possible to have some sort of emulation layer that
> uses the UART to communicate with the host software...
>
> The tricky part is actually *writing* data to Cx00->CxFF, so that the
> 'virtual driver' would look like a smartport device to the GS
> firmware.
>
> I am totally uncertain as to whether it is possible to even write to
> Cx00, or if the memory mapped address space needs to be backed by some
> RAM, or whether the lack of an actual card in that space will shadow
> write to the GS RAM.
That is impossible. There is no RAM in that area. Writing to $CNXX with
slot N set to "your card" with no card in the slot will go nowhere,
since there is no card to process the write. If the internal firmware is
selected, the write is ignored because you are trying to write to ROM.
There is a mechanism to switch off the I/O and language card shadowing
in banks 0 and 1 (giving 64K RAM in each bank), but that won't help
because the firmware switches it on when booting (and requires it to be
on for practically all operation of the IIgs).
To bootstrap load a IIgs via a serial port would require booting from an
existing device (e.g. floppy or a bootable slot card), or Ctrl-Reset at
the "Check startup device" message and IN#2 to receive commands from the
serial port.
There is a mechanism whereby a card in the memory expansion slot can
implement a ROMDISK which appears in the SmartPort chain. It is memory
mapped in at $F0/0000 through $F7/FFFF, but requires special hardware
support from the memory card. I had an OctoRAM with OctoRAM ESP
piggyback card which did this, using 512K of static RAM with battery
backup and a write protect jumper. This could be set up to boot the
IIgs.
A floppy or the IN#2 method would be easier for what you are proposing.
--
David Empson
dempson@actrix.gen.nz