Les's Z80 CPU and PAM-37 H17/H67 boot

52 views
Skip to first unread message

Norberto Collado

unread,
Dec 11, 2010, 1:28:13 PM12/11/10
to SEBHC List
Hello,
 
I'm trying to enable PAM-37 Monitor support on LES's Z80 board as shown in the attached picture. I did review the Heathkit Z80 manual and the WH-8-Z37 documentation as well, but I cannot get the monitor to boot from the H17 or the H67 prototype board. Every time I try to boot, the monitor loads itself again into memory; just like resetting the H8. I think the issue is related to the interrupts in the PAM37 Monitor. More reading to do......
 
I wonder is someone have been successful on using the PAM-37 monitor on LES's board with the H17 controller. I did put on hold the H8-Z67 board order until I get the H8-Z67 prototype working with LES's Z80 board and PAM-37 monitor.
 
According to Heathkit documentation, PAM-37 must be the primary monitor and XCON-8 should be the secondary Monitor and LES's board is configure the same. I did play with the ROM DECODER jumper and got same results and in other cases the ION LED turn off and stay in that condition.
 
I will appreciate any feedback to get this setup working ASAP.
 
Thanks,
 
Norberto
Les_z80_PAM_37.jpg

Les Bird

unread,
Dec 11, 2010, 2:15:37 PM12/11/10
to se...@googlegroups.com
Norberto,

If you can figure this out, that would be awesome. I can't quite make out how the board is supposed to be configured for use with PAM37. As you can see with my design I tried to guess at the configuration and I put jumpers to set it up but I never could get it to work. I agree with you though, I think the problem lies in the configuration of the 74ls148 interrupt controller and with the associated ls240. It looks like you are way better equipped to hardware debug it than I am. If you have any specific questions regarding my card I'll try to answer them. Also, make sure you download my KiCad project files and follow the traces, I just don't have a schematic for it.

- Les

Sent from my iPad
--
You received this message because you are subscribed to the Google Groups "SEBHC" group.
To post to this group, send email to se...@googlegroups.com.
To unsubscribe from this group, send email to sebhc+un...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/sebhc?hl=en.
<Les_z80_PAM_37.jpg>

Norberto Collado

unread,
Dec 11, 2010, 2:30:40 PM12/11/10
to se...@googlegroups.com
Hello Les,

Thanks for the update. I already have the KiCad files in place to understand better the layout of the circuitry related to the interrupts. Also I’m using the Trionyx Z80 board schematics and the documentation to understand better how this works. I think the changes to the board are minimal, due to the fact that I can manually toggle the H17 and the H37 board registers without any issues.

Stay tune...

Norberto


On 12/11/10 11:15 AM, "Les Bird" <les...@bellsouth.net> wrote:

Norberto Collado

unread,
Dec 11, 2010, 11:22:49 PM12/11/10
to se...@googlegroups.com
Hello Les,
 
Today I visited Walter and I borrowed from him the original Heathkit Z80 board along with the schematics and the documentation. With the information that Walter provided, I shall be able to figure out the issue.
 
A few minutes ago I was playing with your board and I got it to boot from the H8-Z67 wire-wrap board without any issues. But them it just stop working for no reason. I think I have an idea on how to resolved this issue with the interrupt circuitry. Perhaps cutting a trace and adding a wire. At this time it is very marginal with the PAM-37 monitor.
 
I also tested with the PAM37 monitor the circuitry that controls the ROMSEL_1 and ROMSEL_2 and it is working as expected.
 
Thanks,
 
Norberto
 
--

Norberto Collado

unread,
Dec 12, 2010, 3:11:02 PM12/12/10
to se...@googlegroups.com
 
 Hello Les,
 
I was able to do a single boot from the H67 by performing the following steps;
 
1. Power-on system with XCON8 ROM active
2. Manually change the jumpers to select PAM37 ROM without removing power from the system
3. Reset the H8 by using the front panel keys
4. Boot from the H67 - It boots!
5. Reset the H8 by using the front panel keys
6. When I try to boot from the H67 it does not work unless I start from step 1 again. On boot it fails to display the correct messages on the H8 front panel.
 
I did play with the "Z" and "Y" jumpers but that did not help. The interrupts circuitry seems to be wired correctly so far.
 
It seems that if I load into memory the XCON8 ROM first, then switch to the PAM37 monitor at least I can do a single boot. On reset it does not work. It seems that I will need to review the XCON8 and PAM37 source code. 
 
My best guess is that on power-on it is not loading into memory the PAM8 COMPATIBILITY ROUTINES when the PAM37 is active. If I reverse the operation, then at least I get a single boot. I need to understand what gets loaded into memory and how on power-on, before the ROMS are disabled. More reading/studying to do...
 
Any ideas? Anyone?
 
Norberto
 
 

Norberto Collado

unread,
Dec 18, 2010, 5:28:27 AM12/18/10
to se...@googlegroups.com
Hello Les,

I did not find anything wrong on your board, after comparing it with the Heathkit Z80 schematic. I did find a lot of errors on the Heathkit Z80 board schematic and after an intensive review I noticed that the Heathkit schematic was showing a jumper to enable 8K ROM’s and I think the intend was to integrate the PAM-37 and XCON8 monitor into an 8K ROM, but the sockets are meant for only 4K ROMs. So after modifying the address decoder to enable each ROM into two 4K banks, the Z80 board loaded successfully both ROMs into memory. Now on every reset I can boot from the H8-Z67 prototype board attached to the Z67-IDE Storage Controller without any issues, along with the H17 controller.  The fix is to cut two traces and add two wires. Your Z80 board worked fine with the XCON8 Monitor because this monitor does not support loading the second PROM into memory. Now I can sleep better.

The second problem that I have seen is that at random on power-up the Z80 CPU does not reset properly, but it resets without any issues when using the H8 front panel keys. This could be due to the old H8 front panel that I have which might contain some slow speed parts. If this is not the case, then I will need to fine tune the timing on the 555 timer which will be a resistor change to fix the issue. I want to see your Z80 board initialize properly on every power-up sequence, just like my other H8 computer does using the Trionyx CPU.

Once I get everything working as required, then I will post the changes to the Z80 board to make it compatible with the H8-Z67 controller.

After debugging this issue using the Heathkit Z80 board, definitively your board is superior. The Heathkit Z80 board have timing issues which cannot access properly a 4K EPROM (200ns); very unstable. For sure it works fine with the original ROM which is fast.

Best regards,


Norberto


On 12/11/10 11:15 AM, "Les Bird" <les...@bellsouth.net> wrote:

Terry Gulczynski

unread,
Dec 18, 2010, 7:34:14 AM12/18/10
to se...@googlegroups.com
Norberto,

You reported a 'fix' for a design bug in the 555 circuit on Les' Z80 board that
had symptoms exactly like you're describing. The solution was to connect pins 6
& 7 of the 555 timer IC - this connection was missing from the original Heath
schematic.


Regards,

Terry

Les Bird

unread,
Dec 18, 2010, 10:33:03 AM12/18/10
to se...@googlegroups.com
Fantastic Norberto,

Be sure to let me know the changes so I can update my KiCad project files.

- Les
--

Norberto Collado

unread,
Dec 18, 2010, 12:41:15 PM12/18/10
to se...@googlegroups.com
Will do!

How do I setup the jumpers on the Z80 to change the CPU clock speed from 2 MHz to 4 MHz?  I was not able to follow the A+A, A+B, etc, sequence. Can you send instructions on how to setup the jumpers for all clock combinations? I just want to test booting from the H8-67 prototype board at 4 MHZ.

Also I might layout the design that I have in my other H8 system, which allows me to power-on at 2 MHZ to load the ROMS into memory and then by using CP/M or the H8 keypad, I can select any CPU speed from 2, 3, 4, 6 , 8 and 10 MHZ. This design worked fine on the Trionyx board using a high speed Z80 and the Trionyx backplane.


On 12/18/10 7:33 AM, "Les Bird" <les...@bellsouth.net> wrote:

Norberto Collado

unread,
Dec 18, 2010, 1:07:47 PM12/18/10
to se...@googlegroups.com
Hello Terry,

Yes, I do have the fix in place. There is a 50% chance that on power-on the
Z80 will not initialize. This could be cause by the H8 front panel which
initially was using some slow parts and I know that there is a floating gate
on the H8 front panel board that Heathkit forgot to attached to VCC. I need
to open my other H8 system to find this gate. Also there is a possibility
that I might need to fine tune the 555 timing. I need to compare the reset
signal timing on the Trionyx Z80 board with the timing on Les's board and
make both the same. Also there might be the possibility that I still have
some issues loading both ROMS into memory on power-on.

I like to see the design to work as expected and not to deal with
instabilities.

With the 555 timer fix in place, and by using Les's H8 front panel, you
might not see this issue at all.

I still need to understand better this unacceptable behavior that it is
happening on this particular H8 system.

Once I fix the changes on the Heathkit Z80 schematic, I will scan it for
Les's to post it at his website. The current Z80 schematics at Les's website
are broken into 4 pieces and it is hard to follow the connections.

Best Regards,

Norberto

Les Bird

unread,
Dec 18, 2010, 2:07:05 PM12/18/10
to se...@googlegroups.com
Norberto,

The top jumper should be to the right, the middle jumper should be to the right and the bottom to the left. That should config the timing for 4 MHz.

- Les

Les Bird

unread,
Dec 18, 2010, 2:11:10 PM12/18/10
to se...@googlegroups.com
Right, left, left is 8 MHz
Right, right, left is 4 MHz
Right, left, right is 2 MHz

If you turn off the divider by setting the top jumper to the left it'll run at 16 MHz.

- Les

On Dec 18, 2010, at 12:41 PM, Norberto Collado <norberto...@koyado.com> wrote:

Norberto Collado

unread,
Dec 18, 2010, 4:35:33 PM12/18/10
to se...@googlegroups.com
 Hello Les,
 
Attached is a document with changes. I had to do several fixes to get the H8 to be stable on power-on.
 
1. I did cut two traces and added 2 wires (see attached doc).
2. Heathkit H8 Front Panel IC105 pin 4 is floating which cause resets issues on power-on. See doc for fixes. Not an issue with Les's H8 Front Panel Board.
3. Replaced 2.2K resistor with 470 K resistor for the Z80 to reset properly. Also a 100K resistor will do just fne. See attached doc.
 
H8 is very stable on power-on and it boots fine from the H8-67 and the H17 controller. I still need to verify operation at 4 MHZ, but at 2MHZ is working great!!!
 
Hope this helps,
 
Norberto
 
-------- Original Message --------
Subject: Re: [sebhc] Les's Z80 CPU and PAM-37 H17/H67 boot
H8_Z80 Fixes to support the H8-67 Controller.pdf

Norberto Collado

unread,
Dec 18, 2010, 5:37:20 PM12/18/10
to se...@googlegroups.com
Les,

Thanks for the information. I just tested your Z80 with power-up tests running at 4MHZ and the reset circuitry worked without any issues with the suggested changes.

At 4 MHZ I booted from the Z67-IDE drive interface along with the H17 controller, and it takes about 2 seconds to boot CP/M.

Everything is working as expected; I’m very happy.

Thanks,

Norberto



On 12/18/10 11:11 AM, "Les Bird" <les...@bellsouth.net> wrote:

Les Bird

unread,
Dec 18, 2010, 5:44:06 PM12/18/10
to se...@googlegroups.com
Wow! Norberto, that is awesome news! So you now have a 4 MHz H8 using my Z80 board? Thanks for debugging the board for me and documenting the changes. I'll make the necessary changes to my KiCad project files.

- Les
Reply all
Reply to author
Forward
0 new messages