• Please review our updated Terms and Rules here

Monitor ROM for a Vector Graphic ZCB

I checked...there's no code in the space after E700 but it appears the PROM locks out the remaining RAM addresses for internal use from e800-efff. The bootstrap code from the MDS-AD3 does not load into E800-Efff. When I test this space, I cannot write to it. I can however write to other locations using the ROM monitor, such as 0000-000f etc.



bd
 
Last edited:
Does the ZCB assert /PHANTOM when the PROM is being read? If not, will it respond to /PHANTOM when the address is in the PROM range? If so, the /PHANTOM assertion circuit I mentioned previously would fit the application. Also, IIRC the ZCB has a 2732 4K x 8 EPROM in it at the moment...will it accept a 2716? If so, you can jumper it for a 2716, burn the monitor to a 2716 (it'll fit, sounds like), and that will solve the problem. /IF/ it properly addresses a 2716, you can map the EPROM to 0xE000 - 0xE7FF, stopping exactly where it needs to for the NorthStar controller (I'm sure that's no coincidence!).

EDIT: If you can use a 2716 and you don't have the capability to burn them, I do, so let me know!
 
I don't know if /PHANTOM is asserted. Do I check pin 68 for a voltage? Sorry I am not sure how to test. I need to check the ZCB manual.

It's very possible yes that the contents of the PROM after E7ff seem like open RAM but are actually part of the PROM as it was when the code was frozen into it, that had not occured to me.

I can try to make a 2708 set or a 2716 then.

This makes the most sense, you would think the northstar monitor would be made to work with the MDS bootstrap, and not to interfere with it. A PROM that stops at E7FF would probably do the trick.

Bill
 
Last edited:
It looks like 2708s are going to be your answer -- page 2-3 of the VG ZCB manual: "There is a 1K gap in memory from E800H to EBFFH if standard jumpering is used." That is, the first two 2708s will be contiguous from E000H to E7FFH, and the third (if you use it) will be located at FC00H-FFFFH. Basically, just restore the EPROM jumpering to factory defaults.

You can even write the 2708s with the Dajen SCI!
 
I can't wait to try it out tonight. I spent a lot of time finding two nice 1/2 height drives that work with the MDS controllers, and put them in a single full height external enclosure. I tested all of my various MDS controllers in a N* system to be sure I knew which were good and which were not, tested various types of N* OS disks and so on .. All so that I would have a nice little portable 2 drive system that I can use in any S-100 computer.

I wonder if the N* monitor will work in an 8080 system.

Bill
 
Last edited:
As I understand it, N* systems always used Z80 CPUs from the start, so I'd be surprised if their monitor was 8080-compatible. Easy enough to find out though -- with the monitor burned to two 2708s, you can put them in the Dajen SCI and set it for 0xE000 as long as you have something with a 8251 at the right address (I noted it somewhere else in this thread). The jumper area for addressing the SCI happens to be an 8-pin DIP pattern, so I replaced the wire jumpers on mine with a DIP switch to allow for easy/non-board-damaging changes of base address. IIRC, I had to remove a tantalum bypass cap to make the switch fit, but it can be omitted (plenty of bypass on the SCI already) or moved to the back of the board if you're worried about it.
 
I guess one thing at a time, first get the monitor onto two 2708's and see if that'll allow the MDS to load code into RAM/boot a disk.

As far as whether the monitor will work in a 8080 system, you never know.

I am unaware whether the DAJEN will work in an 8080-based front panel system anyway.

Bill
 
The PROM in the ZCB is a 2716, not a 2732. Anyway, used the DAJEN to burn (attempt to) 2 2708 proms, but I had some trouble finding good EPROMS...but eventually I got the job done.

But then when I realized that I had a 2716 and not a 2732, I realized that it's the PHANTOM jumper that I need to activate, the 2716 should be fine as-is....right? I found where in the manual to change this, just have to do it. Will post when news.
 
With the PHANTOM jumper on or off, the bootstrap for the Northstar MDS does not load into E800, it's just a bunch of 1A 1A 1A...

I figure I would want it jumpered/connected, right? Wonder what's going on.

bd
 
I got the DAJEN to run on the Altair 8800a, but I need a line terminator, it konks out after a few minutes. I speculate there's line noise. I was surprised it worked at all.

Anyway just to recap using the ZCB in a newer generic S-100 system (CCS 2200)

1) the 2716 starts at E000 and runs through E7FF. That's the size of the 2716, if it starts at E000 physically it can't go past E7FF, right? The system consistently boots into the Northstar monitor 1.5.
2) with a MDS drive controller in the system nothing appears in E800- of the N* disk bootstrap program as you would expect.
3) I can't see how the one 2716 would be interfering with the system's ability to load the bootstrap into E800.
4) I tried this with PHANTOM jumpered and not jumpered (jumper C)

I repeated the same experiment with a few MDS controllers, although the one I have been using is known to work in a regular Northstar Horizon to boot disks.

I wonder what would happen if I put the ZCB, drive controller, and 24K+ RAM into a Northstar Horizon, wonder if that would boot via the motherboard serial port. Maybe the ZCB is jumpered or hot wired for that specific purpose.

BD
 
Last edited:
The /PHANTOM jumper on the ZCB just allows the ZCB to assert /PHANTOM for its onboard ROMs. This is the opposite of what you want to do. While the 2716 is restricted to exactly 2KB max size, as you've concluded, the ZCB has multiple 2716 sockets. This results in the ZCB responding to, IIRC, 0xE000 - 0xFFFF if it is jumpered for 2716 operation. Even if there is no ROM in the socket, the bus drivers will activate and push whatever random state they're at onto the bus (hence, the 1A 1A 1A...).

If you place the board set in a NorthStar motherboard with built-in serial ports, there will probably be bus contention between the onboard port(s) and the serial port on the ZCB. This could, in the worst case, result in blown bus drivers when you try and read from both ports at once. In any case, it probably wouldn't work as expected.

Basically, from what I can gather from the ZCB manual, you'll need to use 2708s if you want a 1K hole at 0xE800 without any board rework. I'd think that since VG left a 1K hole there when using 2708s, it was probably intended for stock N* monitor ROMs and a N* disk controller.
 
The /PHANTOM jumper on the ZCB just allows the ZCB to assert /PHANTOM for its onboard ROMs. This is the opposite of what you want to do. While the 2716 is restricted to exactly 2KB max size, as you've concluded, the ZCB has multiple 2716 sockets. This results in the ZCB responding to, IIRC, 0xE000 - 0xFFFF if it is jumpered for 2716 operation. Even if there is no ROM in the socket, the bus drivers will activate and push whatever random state they're at onto the bus (hence, the 1A 1A 1A...).

If you place the board set in a NorthStar motherboard with built-in serial ports, there will probably be bus contention between the onboard port(s) and the serial port on the ZCB. This could, in the worst case, result in blown bus drivers when you try and read from both ports at once. In any case, it probably wouldn't work as expected.

Basically, from what I can gather from the ZCB manual, you'll need to use 2708s if you want a 1K hole at 0xE800 without any board rework. I'd think that since VG left a 1K hole there when using 2708s, it was probably intended for stock N* monitor ROMs and a N* disk controller.

OK, so I should cut the PHANTOM jumper and re-jumper for 2708's.

Although "the ends" are the same, I think you're not correct that *VG* intended use of stock 2708 N* monitor ROMs, as this was not their product. Instead, the N* Monitor 1.5 (I am guessing this is a independent shareware) was written or ported to the ZCB with the understanding the the VG is capable of a PROM/disk controller combo that would work outside of the N* system.

I have the ePROMs, I guess next I need to return the jumpers to a 2708 config. THere appear to be hacks on this board that are not part of the manual jumpering (on the back)...I will post a photo.

Bill
 
AFAIK E800 is where VG's 8" FD and HD controller ROMs normally live.

Ah, yes that makes a lot more sense!

Bill, I think there were some modifications on that board...but IIRC they all agreed with a bugfix published in one of the VG ZCB manual revisions. Usually that's the first step I take in getting a board working -- I remove any user-applied fixes and see if there were any bugfixes published about the board. Definitely post pictures though.
 
I have been studying the relationship between the ZCB and Northstar DOS. I have also figured out how to get the N* Bootstrap to load from the Northstar Monitor PROM in E000. The Rev 3 board that I have is set for 3 2716's by default, so I had to re-assign the memory location of the 2nd and 3rd to free up E800. Originally I assumed it was set like the rev 2 board, 2716/2708/2708 by default.

I have Northstar DOS 5 loading, but there is no terminal I/O because of the port incompatibility.

Northstar DOS uses ports 2 and 3. Basically to use the ZCB with Northstar DOS you have to either personalize your Northstar DOS to use ports 4 and 5, (or 6/7), OR disable the ZCB auto-jump to the Northstar prom and put the jumper in E to 1-4 from 1-3 (back to default).

I think I will put in a movable shunt so I can swap back and forth.
 
I have been studying the relationship between the ZCB and Northstar DOS. I have also figured out how to get the N* Bootstrap to load from the Northstar Monitor PROM in E000. The Rev 3 board that I have is set for 3 2716's by default, so I had to re-assign the memory location of the 2nd and 3rd to free up E800. Originally I assumed it was set like the rev 2 board, 2716/2708/2708 by default.

I have Northstar DOS 5 loading, but there is no terminal I/O because of the port incompatibility.

Northstar DOS uses ports 2 and 3. Basically to use the ZCB with Northstar DOS you have to either personalize your Northstar DOS to use ports 4 and 5, (or 6/7), OR disable the ZCB auto-jump to the Northstar prom and put the jumper in E to 1-4 from 1-3 (back to default).

I think I will put in a movable shunt so I can swap back and forth.

UPDATE: This did not work, North * DOS did not autoboot to the MDS drive controller. I do not see a way to make CPU card to autoboot to the MDS's E800 "externally", is there? I suppose I could make a boot PROM for the ZCB that simply jumps to E800 automatically....I don't have a Z80-based front panel system so I can't do it manually.

My DAJEN was not functioning and I put it aside, maybe if I can wake it up I can find a way to call E800 or burn a ePROM to autojump the system to E800.
 
Last edited:
Back
Top