Working on a Monroe OC8820

Hi

I have converted the files to hfe files if that is any better. To be found here

I have also started to disasmble the bootloader. Actully took over some work Knut has done but for another bios version, mine is later.
Tried to measure out some of the I/O commands for memory and other stuff. Havent yet found out which is the buzzer :slight_smile:
Found here ABC80/monroe - Gogs

Found here
I got WordStar to work today :slight_smile:

1 Like

Hi! thanks for the work and the great news!

I’ve paused the repairs for a while, but I taking it again step by step. I will read the listing to try to figure out how the memory mapper works, the RAM chips organization enables some operations that can make a replacement complicated to get developed. If I can get an idea about how the memory mapper uses the RAM chips and which timing it expects, I hope to be able to replace the RAM with a microcontroller or a new replacement using newer DRAM chips or static ones with a bit of glue logic.

I will expose the next week a paper related to my repairs and the work of a partner about the emulation of the Monroe. Sadly the paper is in Spanish only (for now), but I will upload it if anyone is interested in reading it.

Any news, I will let you know. I hope to back to repairs soon :smiley:

It’s not only having the banks be switch on and off it actually moves the memory as needed into the memory map.

The test that the bootloader do (err 2)
Is actually place each bank at start address 0xc000 and run test writing 0x55 and 0xaa.

The easies thing to do is make some changes to the bootloader so it just test one bank. Some extra code to jump down to the free part of the eprom and do a check on the bank and the jump back. Or maybe a code for printing the result of each test. I that way you can know which bank is not working.

The bootloader doesn’t use memory at all until the memory test is completed. So no stack pure regs.

To replace the Mac it will quite an effort, I guess more then to just fix the current memory

Memory selection is done by cas and ras separation and signals and by the below as well

The memory is divede into three 32k blocks and two 16k blocks. And if I understand correct one 16k block can be used direct to move data to the video sram.

I running cpm I think the memory is partioned 16k-32k-16k, but that is just a guess

To me, this sounds quite extraordinary and remarkable for a CP/M machine of that time. Is this just a misconception on my side, or is there a story behind this?

Yes agree, but from the beginning(when) it it didn’t run cp/m but Os8mt, yes multi thread for Z80.

I havent been able to get boot disc for os8mt.

I have another system that actually runs os8mt on a Diab 4680 system, the same company that design the monroe computers.

As you see in the bootloader

Around line 180. It’s just switch in the 16k memory that are being selected for the memory test and it do it 8 times with just the bank switch is the outi operation and it always start test at 0xC000 for each bank

So from what I understand, not a Z80 developer or developer at all. This is what happens

2 Likes

I’ve done a bit of work on my 8820 recently. I purchased a TEAC FD-55F, QD 96 tpi drive and was able to create boot disks from the td0 images, but the computer seems to be less functional now than the last time I powered it up. Now my drives no longer activate at bootup. Both drives used to spin up before hearing the beep from the speaker which I assume is some error being displayed. Display still doesn’t work. So now I also need to troubleshoot the drive circuit. I have repaired a few PC drives recently so have a good understanding of how the Shugart interface works. Just need time to trace the circuit.

I also spent some time probing the video circuit. I looked at the ABC800 schematic which should be similar, but still haven’t traced the full path of the video signals. Used my scope on the address and data lines and it looks like the CPU is doing its thing. I’ve noticed that the video PROM gets very hot. Too hot to keep my finger on for more than a second. Is that normal? There was a suggestion to replace the 8002, but the datasheet shows a number of versions, and the markings on the chip don’t match well with the numbers on the datasheet. Any suggestions on where to find the right 8002 chip?

1 Like

I forgot to add that I sent a message to the current Monroe company and asked if they had any documentation or software in their archives. I was surprised to get a quick response from them and the guy told me he spent some time with his warehouse manager looking around for anything they might have. They didn’t find anything and he thinks they may have discarded any of the computer stuff when they decided to focus on the calculator business. It was worth a try though and they thanked me for sharing photo’s of my machine.

3 Likes

I tried the same, and I received the same response. It’s a shame, I expected that some big companies keep some designs or history archived but that attitude isn’t too common.

About the memory, something really strange is a pair of 16KB banks are prepared to be written at the same time, in parallel. I don’t know if this “feature” is something done on purpose or that is something that could be used but no software or the bios uses that. This possible operation makes a bit more difficult the creation of a memory replacement because we see more than one operation at the same time over the memory map.

Thanks for trying!!

I have just found out the name of the guy that developed os8mt aka Monty os.

Me and a friend try to see if we can get hold of him.

He should have been deeply involved in the monroe software

Good spotted!

But it’s by design and nothing strange.

The write signal just put the dram in write mode buy it doesn’t execute the write, you need to have both ras and Cas signal as well.
So the pin will go low in the following order for a write to happen

Ras - write - Cas.

So it’s separating the write, and read, by Ras and Cas signal. If you measure Ras and Cas on the board you will See that one of them is not connected between the banks

On question, if.i remember correct the green light should go on after memory test is completed and is success. I will check when I’m back home.

Does any of the floppy disc lights turn on?

Yes the prom gets super hot and it’s “normal”

The correct chip is 8002A-05

The green light doesn’t come on. The beep happens about 7 seconds after I turn on the power. The floppy drives don’t light up or spin when I power up the computer. They did when I first got it. One drive would spin, the the other, then I would get the beep. They do spin for a few seconds when I insert a disk, but that is a function of the drive electronics, which seem to be working. I’ve tested them on another computer.

The memory test ends after 7 sec so i guess it got stuck in it

That makes sense. So it’s no longer getting to the point that it loads the OS from the floppy drive.

I recently purchased a Kingst LA2016 logic analyzer, and it’s software can decode the Z80 data bus. If I can find a program to disassemble the data stream, I could trace the code and find exactly where it is failing the diagnostics.

1 Like

I see five 40pin Zilog chips but which one is the Z80?

If you’re looking at the photos upthread, you’ll see the 5 big chips are marked as DART SIO PIO DMA CPU. It’s the CPU which is the Z80. (The others are marked with Z80 to indicate Z80 family)

Thanks! I was looking at my board and the ID’s are 30012, 30013, 10167, 30011, 10168. There isn’t a z80 marked on any of them.

1 Like

Hmm, you might need to check the pinouts by checking continuity… if indeed that would clarify. This page linked upthread guesses “10168 SL0230 maybe Z80”

My board has the same layout as the “Monty” board pictured above. The my 10167 chip is in the CPU position next to the ROM. I’ll hook up my logic analyzer tonight and check it out.

Hi not at home but
The order of the chips from the eprom against the reset button /fd floppy controller is
Z80cpu just beside eprom
The z80dma and then z80pio

I the other direction against the power input is
Z80sio closes to the eprom
Z80dart
Z80ctc close to the power input

1 Like