[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: network booting



On Jan 10, 4:31 pm, Jonno Downes <jonno...@gmail.com> wrote:
> On Jan 11, 4:52 am, sicklittlemonkey <Nick.Westg...@gmail.com> wrote:
>
> > This is actually similar to Brendan's Apple Game Server.
> > Instead of booting, or using a ROM, it's IN#2 and serial.
>
> Indeed - in fact this project started with the idea of creating
> something inspired by AGS for the C64, once i got that booting
> properly I decided to port it back to the A2.
>
> > In fact I've just finished adding "TCP Serial" to AppleWin.
> > With this you can run AGS and AppleWin on the same PC.
> > And you can even telnet to AppleWin from another PC. ;-)
>
> Nice work! Since you're on a roll, can I lobby for adding my current
> emulator wishlist item which is a minimalist firmware card. what I
> imagine is :

(totally possible to do in the Jace emulator, just requires writing a
class that represents that card)

> a 28F512 (64KB EPROM) with
>         * D0..D7 & A0..A7 connected to D0..D7 & A0..A7 of the peripheral card
> bus

Whenever the card is active, your card's rom (cx and c8 roms) are
mapped to memory reads.  All you have to do is set up the arrays of
memory when your card is created.

>         * /CE connected to /IOSEL (pin 1 of the peripheral card bus)

I don't think the emulator tells the card it has been selected -- but
your card can spawn a separate java thread to do extra stuff if you
want it to.

>         * /OE connected to inverted R/W (pin 18 of the peripheral card bus)

Your card can access the memory of the apple directly
(Computer.getComputer().getMemory()...)

Whenever the I/O lines are accessed, a listener will fire off and let
your card know an I/O request needs to be serviced via a method you
write called handleIOAccess.

> the 74LS273 is wired up with
>         * CP (clock pulse) connected to inverted /DEVSEL (pin 41 of the bus)

There is a method called motherboardTick that simulates the clock
pulse.

>         * /MR (master reset) connect to /RES (pin 31 of the bus)

There is a method called reset that simulates the reset signal
>
> The net effect would be a bank switched EPROM, where any one of 256
> pages
> is selected by writing the bank number to the card's peripharal I/O
> space

This is possible, but as Mahon suggests you're likely to get a lot of
use out of the C8 rom space as well.  Anyway, implementing your own
additional bankswitched rom is possible in Jace -- just change out
your Cx rom space or C8 rom space variable with whatever and trigger
the memory subsystem to reconfigure the active memory.  That should do
the trick.

> I'd really like to see something like this (or any other way of
> extending the ROM space) get taken up as some kind of standard with
> the emulators (and also eventually be manufactured).

I built Jace around expandability.  Mostly because I wanted the
ability to replicate Mame-style cheats, but also because I was feeling
a little silly when writing it.  (jack and coke does that
sometimes... ;-) )

-B