MAX Machine PLA equations (correct this time)

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

MAX Machine PLA equations (correct this time)

Michał Pleban
Hello!

After spending two weeks on the MAX Machine PLA dump I made earlier,
finally I decided to abandon it and start again. I suspect the PLA did
not read properly in the EPROM burner, maybe because it was too slow.

So I decided to write the equations myself from scratch. I burned a
22V10 with these equations and MAX Machine works perfectly with them. I
tested the PLA replacement with the MultiMAX cartridge as well as
several original cartridges I own, and I did not find any problems. So
here are my equations (note that BUF is an additional signal to control
a 4066 chip for COLOR RAM):

!RAM = !A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
 # !A11 & !A12 & !A13 & !CLK
 # !A11 & !A12 & !A13 & !BA;

!EXRAM = A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
 # A11 & !A12 & !A13 & !CLK
 # A11 & !A12 & !A13 & !BA;

!ROML = !A13 & !A14 & A15 & CLK & BA;

!ROMH = A13 & A14 & A15 & CLK & BA
 # A12 & A13 & !CLK
 # A12 & A13 & !BA;

!SID = A10 & !A11 & A12 & !A13 & A14 & A15 & CLK & BA;

!VIC = !A10 & !A11 & A12 & !A13 & A14 & A15 & CLK & BA;

!COLRAM = !A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA
 # !CLK
 # !BA;

BUF = !A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA;

!CIA = A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA;

!RW_OUT = CLK & !RW_IN;

If anyone is interested, I can post my working Eagle PCB as well.

Regards,
Michau.

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

Gerrit Heitsch
On 09/02/2016 08:32 PM, Michał Pleban wrote:

> Hello!
>
> After spending two weeks on the MAX Machine PLA dump I made earlier,
> finally I decided to abandon it and start again. I suspect the PLA did
> not read properly in the EPROM burner, maybe because it was too slow.
>
> So I decided to write the equations myself from scratch. I burned a
> 22V10 with these equations and MAX Machine works perfectly with them. I
> tested the PLA replacement with the MultiMAX cartridge as well as
> several original cartridges I own, and I did not find any problems. So
> here are my equations (note that BUF is an additional signal to control
> a 4066 chip for COLOR RAM):
>
> !RAM = !A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
>  # !A11 & !A12 & !A13 & !CLK
>  # !A11 & !A12 & !A13 & !BA;
>
> !EXRAM = A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
>  # A11 & !A12 & !A13 & !CLK
>  # A11 & !A12 & !A13 & !BA;
>
> !ROML = !A13 & !A14 & A15 & CLK & BA;
>
> !ROMH = A13 & A14 & A15 & CLK & BA
>  # A12 & A13 & !CLK
>  # A12 & A13 & !BA;
>
> !SID = A10 & !A11 & A12 & !A13 & A14 & A15 & CLK & BA;
>
> !VIC = !A10 & !A11 & A12 & !A13 & A14 & A15 & CLK & BA;
>
> !COLRAM = !A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA
>  # !CLK
>  # !BA;
>
> BUF = !A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA;
>
> !CIA = A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA;
>
> !RW_OUT = CLK & !RW_IN;
>
> If anyone is interested, I can post my working Eagle PCB as well.

Very nice... Looks a lot less complicated than the PLA for the C64.

So you only need a GAL22V10 and a 4066 to replace the 6703?

  Gerrit



       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

Segher Boessenkool
In reply to this post by Michał Pleban
Hi!

On Fri, Sep 02, 2016 at 08:32:58PM +0200, Michał Pleban wrote:
> So I decided to write the equations myself from scratch. I burned a
> 22V10 with these equations and MAX Machine works perfectly with them. I
> tested the PLA replacement with the MultiMAX cartridge as well as
> several original cartridges I own, and I did not find any problems. So
> here are my equations (note that BUF is an additional signal to control
> a 4066 chip for COLOR RAM):

> !RAM = !A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
> !EXRAM = A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
> !ROML = !A13 & !A14 & A15 & CLK & BA;
> !ROMH = A13 & A14 & A15 & CLK & BA
> !SID = A10 & !A11 & A12 & !A13 & A14 & A15 & CLK & BA;
> !VIC = !A10 & !A11 & A12 & !A13 & A14 & A15 & CLK & BA;
> !COLRAM = !A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA
> BUF = !A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA;
> !CIA = A10 & A11 & A12 & !A13 & A14 & A15 & CLK & BA;
> !RW_OUT = CLK & !RW_IN;

That looks very nice and simple, but how does this allow accesses from
the VIC to RAM and ROM?  I don't see it; everything is only for CPU
accesses (CLK & BA)?


Segher

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

Michał Pleban
Hello!

Segher Boessenkool wrote:

> That looks very nice and simple, but how does this allow accesses from
> the VIC to RAM and ROM?  I don't see it; everything is only for CPU
> accesses (CLK & BA)?

I see that you have only first lines of the equations? Please take a
look at full ones:

!RAM = !A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
 # !A11 & !A12 & !A13 & !CLK
 # !A11 & !A12 & !A13 & !BA;

!EXRAM = A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
 # A11 & !A12 & !A13 & !CLK
 # A11 & !A12 & !A13 & !BA;

!ROMH = A13 & A14 & A15 & CLK & BA
 # A12 & A13 & !CLK
 # A12 & A13 & !BA;

The first line (CLK & BA) is for CPU access, the second anf third lines
(!CLK # !BA) is for VIC access.

Regards,
Michau.

       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

Michał Pleban
In reply to this post by Gerrit Heitsch
Hello!

Gerrit Heitsch wrote:

> Very nice... Looks a lot less complicated than the PLA for the C64.
> So you only need a GAL22V10 and a 4066 to replace the 6703?

That's right. It's a much simpler memory architecture (no DRAMs) so the
equations are simple.

Regards,
Michau.


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

Segher Boessenkool
In reply to this post by Michał Pleban
On Sun, Sep 04, 2016 at 04:49:49PM +0200, Michał Pleban wrote:

> > That looks very nice and simple, but how does this allow accesses from
> > the VIC to RAM and ROM?  I don't see it; everything is only for CPU
> > accesses (CLK & BA)?
>
> I see that you have only first lines of the equations? Please take a
> look at full ones:
>
> !RAM = !A11 & !A12 & !A13 & !A14 & !A15 & CLK & BA
>  # !A11 & !A12 & !A13 & !CLK
>  # !A11 & !A12 & !A13 & !BA;

Oh duh, I read that as comment lines.  This makes a lot more sense :-)


Segher

       Message was sent through the cbm-hackers mailing list
smf
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

smf
In reply to this post by Michał Pleban
On 02/09/2016 19:32, Michał Pleban wrote:
> (note that BUF is an additional signal to control
> a 4066 chip for COLOR RAM):

A 4066 in an ultimax? The c64 is supposed to (badly) emulate an ultimax,
not the other way round :-)

What is different about the PLA equations you wrote and the ones you dumped?


       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

Michał Pleban
Hello!

smf wrote:

> A 4066 in an ultimax? The c64 is supposed to (badly) emulate an ultimax,
> not the other way round :-)

The Ultimax already has a 4066 (for switching between the paddles and
SID) and the C64 emulates it in this regard :-)

> What is different about the PLA equations you wrote and the ones you
> dumped?

The ones I dumped are partially incorrect. At least, the GAL programmed
with these equations did not work properly (the MultiMAX cartridge
displayed RAM test error). I think the PLA did not read correctly in my
EPROM burner - sometimes reading the chip several times would yield
different results, etc. Maybe the PLA is too slow for the burner which
expects a faster EPROM. Later I will dig my old Willem burner which
allows setting arbitrarily fast (or slow) chip reading, and will try to
read it again.

Regards,
Michau.



       Message was sent through the cbm-hackers mailing list
Reply | Threaded
Open this post in threaded view
|

Re: MAX Machine PLA equations (correct this time)

shock__
This post has NOT been accepted by the mailing list yet.
Hi Michau,
any chance I could get the Eagle Files for you Max Machine PLA replacement? Also precompiled .jed files for the GAL would be great - this would help future-proofing the Max Machine a friend of mine owns which already got a 6566 -> 6567 adapter (Scheme by Vossi, Layout by me) in case the SRAM based VIC-II ever dies. http://i.imgur.com/HCrqJok.png in case you're interested I can hook you up with a PCB
Sadly the e-mail adress you entered here bounced, therefore I'm publically replying.
My E-Mail for sending files is "mos 6502c cowbell gmail guitar com" replace cowbell with @ and replace guitar with .

Best regards shock__