• Please review our updated Terms and Rules here

Calling All Hands - Yamaha C1 Laptop Expansion Slot

pearce_jj

Veteran Member
Joined
May 14, 2010
Messages
2,808
Location
UK
I've received a very interesting memo about the Yamaha C1 Music Computer.

This machine had 8 MIDI slots and a special version of Sequencer Gold to use them all. Supplied with either 20MB MFM HDD and a floppy or two floppies.

http://www.old-computers.com/museum/computer.asp?st=1&c=1176

Needless to say the challenge is to get a CompactFlash storage board made for this machine. It has an expansion slot and that is specifically what I need help finding data on - physical dimensions, connector type and pin out, everything basically.

All help on this greatly appreciated. This project is quite exciting because there is a real use case coming out of this :D
 
Awesome thanks for the links! I wonder how detailed the service manual is. A schematic would be perfect.
 
Awesome thanks for the links! I wonder how detailed the service manual is. A schematic would be perfect.

I bought the SM so it can be shipped quicker to a US address. They didn't offer expedited shipping. But anything would be quicker than to the UK.

When it arrives, I'll scan it in and send it to you electronically. I can send it along in the post later if you want. I think I still have your mailing address here somewhere.

Consider it a donation to 'the cause'.
 
With the very kind help of eeguru, the tech ref is now in hand ;)

Looks like the built-in HDD interface is *very nearly* IDE - everything we need electrically is there to interface to CompactFlash directly.

The system ROM is apparently 64KB. I don't yet know if there is any free space in it or any available ROM sockets.

Next step will be to look at these. The only challenge I think will be patching out the built-in HDD code and getting the XTIDE Universal BIOS stored somewhere and initialised.
 
I've attached the system BIOS. Others have reported that Type 47 is not available in the interface but it is in the text list in the BIOS.

We need to modify the BIOS by either:

1. Adding XTIDE UB for generic 16-bit IDE controller at 1F0h in unused space (8K offset appears to be clear) and patching the BIOS to call it; or
2. Patching the existing BIOS to enable type-47 selection.

Any help on this greatly appreciated! Other than that a simple patch PCB to isolate unused signal wires (like motor run) is all that's needed on this :D
 

Attachments

  • C1ROM.BIN.zip
    21.6 KB · Views: 3
James, I'm looking into patching XUB into the system BIOS but can't make any promises as to when or if it will be done. Just wanted you to know I'm giving it a shot.
 
I've disassembled the system BIOS completely and found more than enough free space, so any build of XUB can be patched in. My plan is to patch it in at offset 4000h. The option ROM scan stops at segment F000h so I will have to extend that, then adjust the checksum and it should be good to go. I'm thinking that the Large AT build should be OK to use? I will also configure it to use a single standard 16-bit ISA IDE controller at 1F0h, not using any IRQ (for max performance).

Does this sound OK?
 
Can you see the built in code scanning 1F0h btw? Ideally we’d patch that out or perhaps we don’t need to?
 
Can you see the built in code scanning 1F0h btw? Ideally we’d patch that out or perhaps we don’t need to?

We shouldn't need to do that. I'm assuming that the system BIOS can be configured to have no harddrives? Do you have access to this machine for testing, BTW?

Anyway, I've patched in the Large AT build of XUB r600+* beginning at offset 4000h and ending at offset 67FFh. At offset 6800h I've changed the byte there from FFh to F9h to offset the change I did when extending the option ROM scan to segment F600h. The thing is, I can't find any code that checks for a valid checksum of the system BIOS so this might not be needed. The change I did to extend the option ROM scan is at offset 8D8Eh.

I've attached a zip file with;
the IDA database file containing the disassembly,
BEFORE.BIN which is the first part of the original binary up to offset 3FFFh,
FF.BIN which is just the part of the original system BIOS that is replaced by XUB,
the XUB binary configured as I said above
and AFTER.BIN that is the part that comes after XUB.

Note that I have not patched AFTER.BIN to include the option ROM scan extension or the checksum byte so you can do
Code:
copy/b BEFORE.BIN+FF.BIN+AFTER.BIN SYSTEM.BIN
to get a copy of the original BIOS in SYSTEM.BIN.

The included C1ROMXUB.BIN is the complete BIOS patched and ready to go (I hope)!

The zip file had to be split into two parts so I could attach it to this post, just do a
Code:
copy/b C1ROMXUB.ZIP.001.zip+C1ROMXUB.ZIP.002.zip C1ROMXUB.ZIP

View attachment C1ROMXUB.ZIP.001.zip
View attachment C1ROMXUB.ZIP.002.zip

* r600+ meaning some small changes I've done that will be added to the repository on my next commit.
 
PCB layout is done, just awaiting confirmation of sizing and mounting hole placement.

Anyone with a C1 interested to test? This solution replaces the factory RLL HDD and controller with a standard 16-bit IDE controller for use with any IDE disk or CompactFlash card, powered by the XTIDE Universal BIOS patched in to the system ROM.

Yamaha-C1-HDD-r01.jpg
 
PCB layout is done, just awaiting confirmation of sizing and mounting hole placement.

Anyone with a C1 interested to test? This solution replaces the factory RLL HDD and controller with a standard 16-bit IDE controller for use with any IDE disk or CompactFlash card, powered by the XTIDE Universal BIOS patched in to the system ROM.

View attachment 50652

Hey pearce!
Cool stuff duderino!
I've got a C1 with all the original peripherals (manuals, disks, bag, cables, etc.) :)
I loooove that little thing, especially the white-on-blue screen.

I managed to get it up and running the last time I used it (I moved abroad for a couple of years but am back home now) and it ran Voyetra Sequencer Gold Plus, albeit off the original floppy disks... (which reminds me that I need to make a backup of the VAPI and CAPI drivers which are nowhere to be found on the net today)

So this thingamajik you've made is basically an adapter for IDE disks/CF readers?

It would only have influence on the drive side of the machine, right? Like storage...

Could you go into a bit more detail with "XTIDE Universal BIOS patched in to the system ROM" would that replace the original Yamaha/IBM ROM?

(mainly because I like the pure timing of the beast, rock solid!)

Happy New Year,

-G
 
Yes, the card replaces the factory fitted HDD controller - if fitted - or connects onto the header if it was supplied as an FDD only model. The ROM image needs to be burned into a pair of 27c256 EPROMs and those replace c39/c40, which are socketed under the keyboard.

After that, the theory is that the machine HDD type in the bios should be set to Not installated, any IDE HDD or compact flash card connected, and off you go with up to 8GB of accessible fixed disk storage.
 
Back
Top