Hi Intarwubs. It’s been a while since my last post. Things have been very slowly proceeding, and then, like unplugging a cork, there has been a huge rush this long weekend.
Updates on the last post
So some quick updates on everything covered in the last post.
Firstly the Microbee ROM switcher is working fine. It always was. Turns out to be user error on my behalf. D’oh! The command to call the upper half of the ROM was PAK12. I was using PAK9. Ironically, by the end of this article I will no longer be using that board.
Secondly I was able to find an actual user manual for the Taxan monitor, and it’s actually a really nice monitor! It’s got RGB plus either H/V synch or synch on Composite. Plus, with the push of a button it becomes a green screen :-). It even has a second connector for CGA or Apple III RGB. That’s a good coverage!
As it only has the one connector for the primary RGB input, I have made a pigtail that ends in the much more common DIN 6 connector. I’ll probably end up using it with my MSX.
Microbee Disk Conversion
This took a lot of time, but it was so worth it in the end.
For those new to the feed, I had received a “StarNet” Microbee Core board. These were used as network terminals with no local storage. The booted off a local network server as a low cost alternative for places like schools.
The difference between these and the floppy disk units was a handful of chips and a BIOS changeover.
First up was ordering a whole slew of chips and components from all over the world. Some local. Some from China and some from the US.
While I waited for parts to come in, I began soldering in sockets and all the components I had in hand. I already had all the resistors, the variable capacitor and all but one of the normal capacitors.
I was able to source on particularly tricky chip (a 74LS06) locally from Artifactory (membership has its benefits) and another I thought I was going to have problems with (a 74LS07), I found while going through my parts bins. (I sort everything by category, but it still sometimes means sifting through dozens of components)
I also did some research and burned myself a suitable FDD Boot ROM to replace the network boot ROM which it came with.
Slowly the parts filtered in and I built up the board. The last bunch of parts all arrived over a period of two days, which was pretty nice.
After that it was simply a matter of soldering in a resistor array, a variable resistor, a lone cap and an edge connector. Then I just dropped all the chips in their sockets.
After some procrastination, I took a deep breath and turned it on and… nothing. Not even synch to the screen.
Well, I do have a fancy new oscilloscope, and thanks to my fellow Artifactorians, I was confident I knew how to use it. I soldered a nice stable earth lug into an empty socket to assist me with my testing.
I decided to start on the address lines on the ROM socket. Immediately I saw data! A series of nice square pulses. That’s a good sign. That means it’s trying to do to something. Let’s check the rest of the pins.
After some probing around A14 on the ROM was held high, but checking the schematic, that was deliberate. Looks like it allowed larger ROMs to be used by tieing up one of the lines so that only half needs to be addressed.
Next I looked at the data lines and while most were fine, Data line D0 was being held low. Hmm. Shorted to ground. No wonder nothing good is happening.
I did some digging and I identified several possible culprits. The first one, the ROM itself, was easy to eliminate as I’d already tested it while writing it. Next was IC35, the WDC2793. This was socketed so was easy to remove and test. Nope. Still D0 held low.
This led, according to my searching, 3 primary candidates: IC29 (74LS175), IC24 and IC 25 (4164 RAM) all hung off that data line according to the schematic.
I jumped onto some forums at this point and asked for help. I knew I had spare 4164 RAM from fixing my Acorn Electron, and I knew I could buy new 74LS175s as well, but I wanted to see if there was anything I hadn’t thought of. I suspected the RAM. I always suspect the RAM (Spoilers: It wasn’t the RAM)
While I waited to see if anyone responded, I got impatient and socketed the 74LS175. It passed testing in my TL866II+ EPROM/Chip tester and the short was still there.
Meanwhile I’d had a response suggesting I also check IC 16 (74LS174) and more tellingly, check around the edge connector as D0 was right next to a ground connection there.
Guess where the fault was? Yep. I’d accidently shorted D0 at the edge connector!
Some short work later and I was getting what looked like a cursor. This was a positive sign! Little did I know HOW positive.
Back to the forums I asked what I should be doing next. I was advised to hold down the M key on boot to see if the system got into the Machine Code Monitor. Lo and behold it worked! Amazing! What I thought was the cursor was the system booting but having problems getting to an OS.
The same poster asked if I’d modified the baseboard yet. LOL what? This hadn’t come up as something you could do. I was pointed to a suitable tech sheet, the wonderfully named “Microbee Hardware Notebook” (which is chock full of mods, tweaks and improvements for your ‘bee) which had a whole 2 pages on modding a baseboard for DRAM systems and immediately afterwards, 2 pages on testing the floppy controller.
Modifying the baseboard wasn’t too hard once I knew it had to be done. A simple matter of cutting 3 traces, soldering in a bridge and a single resistor.
Once done, I was able to run the tests on the floppy controller, ready to proceed to my next step.
There was one more hurdle. I needed to make a power supply for the Gotek I planned to use as a floppy drive.
Now, my Microbee already has a stepped down power adapter with a switch in a jiffy box. I figured I could hide a simple 5v 7805 based regulator inside the box, no worries at all. I quickly lashed something together using some experimenter’s board, two spare capacitors, a spare 7805 I had as well as a heatsink off a past project. the whole project was tiny, and snuck inside empty space inside the jiffy box without any issue whatsoever. I ran up a power cable and terminated both ends in 2.54mm headers (Purchased from Altronics in a kit that I an no longer seem to find) which have an added bonus of being compatible with Floppy Drive Berg connectors with minimum modifications, and are a lot cheaper and more readily available. In the box I terminated in a second male connector and the whole thing was ready to go.
Having checked all the voltages, also for shorts and basically fidgeted for a good 15 minutes, I finally loaded up some Microbee images , plugged everything together and powered it on.
I may have sworn at this point. It. Was. Working!
After this, the rest was anticlimactic. There was a slight detour where I tried fitting the whole system in a Microbee case. (Won’t work as the connector is in the wrong place)
I also tried a newer ROM. (Won’t work as I had already chosen the last version that worked in non “premium” Microbees)
I also discovered the disk image I’d chosen to test things wouldn’t work with my model as I’d accidently chosen one for “premium” models. 😀
My Disk based Microbee lives.
My next step will be to box this one up in a nice home made case. I have already started work on the next generation of the laser cut case, so that will hopefully be along shortly.
MSX Floppy Disk Controller
This one was started before the Microbee project, but finished afterwards, so apologies for any confusion here.
Similar to the Microbee, this one consisted of ordering a whole bunch of parts and waiting for them to arrive.
Thankfully there were less parts on this one, and most were available locally. As a result I had this project mostly done earlier than the Microbee.
I also had to build up a power cable. Thankfully the Omega works off 5V, which is the same as the Gotek needs so it was a simple job to make a splitter Y cable.
Everything arrived and I soldered it all up.
Only thing was, it didn’t work. Was it a problem with my Omega or the board? The system wouldn’t complete a boot and the Gotek kept complaining about a cable fault.
Thankfully the build documentation was excellent, even when translated. Super giant hats off to the team that wrote them!
I worked through the steps described, even going so far as to burn out a simple game ROM to try in the cartridge as an interim step. The cartridge ROM worked, which at least confirmed the issue wasn’t the Omega not being able to boot systems.
The next step was to measure the frequency on pin 4 of the 74LS04 in the clock circuit. Out comes the oscilloscope again. Except things didn’t look… right. The clock looked weak and was more of a triangular shape. I wasn’t sure at this point if it was me using my ‘scope wrong or a genuine issue.
At this point I took the whole setup out to Artifactory and the team there helped me confirm that, no, I wasn’t imagining things. The clock was terrible. The easiest thing to do was to compare it to the clock on the Z80 which was a world apart. Clocks should not look like triangle waves 😀
Taking it all home again, I realised I had a spare 74LS04 from a different manufacturer at home in my spare parts bin. In it went and now I was getting a nice square wave clock. Excellent!
Except the system was still not working. I knew at this point that the only thing that could be stopping things working was my FDD driver chip, the WD37C65B-PL. I’d ordered 3 so I tried a different one. The system went wild! Hmm. Tried chip 3. Different behaviour again.
I was suspicious at this point. I took a closer look at the chips. All three had the same manufacturing codes! The chances of that are basically zero.
On a whim I wiped the top surface with some isopropanol on a cotton tip. The top wiped off! These were fakes! I raised a complaint with the supplier.
I reached out on Facebook to the local community, and Matt (who I had worked with on his Atari ST) offered to lend me a card with a WD37C65B-PL onboard I could use to test my card. I took up his kind offer and…
Yes! I have a working FDC!
I’ve ordered another chip from a source I have had good luck with in the past and I will return Matts card to him now I know everything works.
I also need to work on a case. I’m thinking something acrylic could be nice. That way the purple PCB will show through.