Subscribe via RSS
24Jun/200

Quantum Bigfoot 4320AT

I remember these drives... they became available around the time I had a Cyrix CPU and an S3 graphics card. We were not willing to cough up for a proper Pentium ~200mhz. Anyway, these were the budget drives also, making use of space instead of enhancing technology to fit more bytes in smaller places!

DSC00148

DSC00151 DSC00156 DSC00157

DSC00154

The Quantum Bigfoot pictured above is the 4320AT model, meaning it's listed capacity is 4.3gb. Of course, partitions never manage to give a drive's entire space to the user, so a FAT32 partition via USB-IDE via Windows 10 formatted out to 4.03gb.

DSC00149

This drive usually wouldn't even warrant a mention, but this model has a specifically interesting feature. It also seems quite rare, since googling didn't result in too many versions of this style of Bigfoot. Looking above, you'll see a transparent sticker over a window in the drive. It's actually a window that exposes the read heads! That's a really strong sticker... or so I hope, I haven't tried to remove it. Regardless, it lets you actually see the head has stopped when it's powered off... better yet, you can even watch it move when it's in operation!

Totally random! And amazing to watch!

Filed under: Retro No Comments
16Jun/200

Atari Controller Test Rig

Long-story-short, I've got a new night-job, bringing a large quantity of Atari-related paraphernalia back to life. I've done it before with the 2600 Jr, and I'm ready to do it again, and again, and again, with this batch.

First up is a box of gamepads and controllers. My initial plan was to get one of the Atari units in a known-state, and then test the controllers from there... but that could lead to issues if the console wasn't actually 100%. Instead, why not just rig up a DB-9 port to a simple 5v LED circuit to test each button?

Google will produce a crap-load of results for Atari Joystick Pinout, so find one of them and get started. I chose this one. It turns out the controllers are very straight forward... they just act as a conduit to ground. Pin 8 is the common ground wire and all buttons (directional-pad inclusive) just join their respective pin to this wire.

DSC00079

The above rig was therefore constructed. Voltage is supplied from my desktop power supply and a miriad of LEDs were selected from the junk box. A selection of 48ohm resistors tie them all to the 5v rail. Their anodes all go to a respective pin on the controller port... starting with Up, Down, Left, Right, A, B from the left-most green LED. Of course, A and B are contentious, as the 2600 only utilises one fire button. Even better, the DB-9 socket also supports trigger, so that's the clear LED placed awkwardly on the left-hand side.

DSC00077

First controller to be tested was an Atari gamepad and it instantly misbehaved. Upon opening it, I found that both A and B buttons were tied high with resistors.

DSC00082

A little googlin' declares that these gamepads are actually for the Atari 7800, which supported two buttons. They've nicely made them backwards compatible though, allowing either button to be the standard button for the Atari 2600 jr. Regardless, those pull-up resistors meant that my A and B button LEDs were always dimly-lit!

DSC00081

Upon pressing either button, their respective LED fully-lit, and so did the left-most trigger LED. This makes me think that trigger is the actual 'button' for the Atari 2600 Jr and A/B are for newer systems. Regardless, the unit still had an issue. For those keenly-observing the photos up until this point, you'll have guessed that the directional pad's right button was crapola. It worked sometimes... and then it worked all the time when you jiggled the cable at the entry-point to the controller. So, what to do? Truncate!

DSC00083

Take a good length off, away from the game pad. Cable fractures, when entering casing/housing, are a very standard thing. Usually, very much like this unit, there's 'protection' inside the casing where the cable is held in-place to prevent it from being wrenched out and putting pressure on internal components. This 'protection' in this case is a zig-zag of pins to hold the cable in place without putting serious pressure on it.

For this unit, this 'protection' has done its job and kept the internals safe, but the cable has instead formed an issue directly after it exits the controller case. Here, thanks to humans like me, waving the controller around (rather than pressing the correct buttons), causes undue stress internally and ruptures the wires. In this case, it actually severed the wire that conducts a directional-right press.

DSC00088

DSC00090 DSC00094 DSC00099

DSC00101

As above, strip the newly truncated cable and tin all ends. Once done, de-solder the original chunk of cable, re-soldering the newly cut ends in the same order. Make sure to keep the white bridging wire between both PCBs. Finally, run the cable through the zig-zag and hold it there for a bit to make sure it understands its new role. If you just place it and let go then the cable tends to want to return to it's standard straight-line form. It's actually tough for a thick cable to make those curves, but as mentioned above, it's for the sake of the guts of the contorller.

DSC00104

Finally, test, test, test and test again! Ah... that GREEN RIGHT LED is beautiful.

Filed under: Retro No Comments
12Jun/200

Farallon EtherMac Mac/PB Adapter

This was another lesson in failure. I'd recently picked up a PowerMac 6400 (more about that later) from an impulsive eBay auction and then this item came across the Vintage feed. I couldn't resist and no one else cared for it. The basic idea is that you can route Ethernet over LocalTalk to get a Macintosh, which doesn't have standard Ethernet capability, connected to an Ethernet network. This unit plugs into the Serial port (either Printer or Modem) and hijacks power from an ADB port. The piggy-back adapter is nice as most users still want to plug their keyboard/mouse in!

DSC00034a

DSC00047 DSC00035a DSC00040a

DSC00044a

Most forum posts indicate that these units need no drivers installed. I was happy with this and went ahead and connected the unit to my LAN. Most lights came on, but I couldn't get anything to work. If you do have this unit, then you need to use MacTCP (this unit is not compatible with OpenTransport!) and set up your unit to have hard-coded IPs via a static MacIP setup. From there, everything should just work. As that you're using an older System 7.5.3 (or lower), you don't get to search for Servers by IP address in Chooser, so make sure you have a real Mac on the network to test with. A2Server might also help.

Anyway, whatever I tried... nothing worked. I'd plug the unit in to the Mac and the power light would illuminate. I'd open up Chooser and the next light from power (orange) would start to blink... but the final light, the Ethernet Link Light, would just be flashing quickly. I initially thought this was ethernet traffic, but then realised that this light should actually be a solid green and that the 4th light should indicate traffic. You really only had to flip the unit over to work this out, Steven. So, my unit wasn't even getting link! Easily confirmed by no link light on a hub I managed to power up and then doubly-confirmed by the diagnostic software provided in the v2.22 of the Farallon Software.

So, I popped the unit and started replacing capacitors. I then tried replacing the chips that seemed identical to an ethernet card that I had spare... and in the end? Killed two cards and ended up with zero connectivity! Fortunately the PM6400 accepted an RTL3189, although not under System 7.5.5.

Lesson learnt? A Farallon EtherMac Mac/PB Adapter that has a flashing ethernet link light is dead. Don't even bother trying to use it. Make sure you see a link light at the other end of the ethernet cable before trying to troubleshoot any further.

In hindsight: I wonder if the unit just couldn't negotiate the 100mbit hub? Maybe it only works with 10mbit devices. Too late to test now!

Filed under: Apple No Comments
1Jun/200

Atari 2600 Jr – Recapping + Controllers + Composite

Another one of these little units came across my workbench. This time it was a full set with two joysticks and a lot of games... including a boxed version of Frogger! I'd played with one of these before in my previous-previous apartment, so it must be nearly 4 years ago that I met my first Atari. This one wasn't as clean-and-tidy as the previous version, but it still worked nicely.

DSC00133

DSC00137 DSC00138 DSC00141

The first task was to upgrade the unit to composite output, so I jumped over to my previous post on the topic. I purchased all the components needed from Jaycar and, just before I was about to solder to the pins on the IC, realised that the actual mod instructions showed you where to solder. Not to the pins of the IC, but to the legs of the surrounding resistors.... the diagram is even colour-coded. I therefore also didn't have to scratch back a ground pad either!

DSC00142

In no time, the composite signal was being sent out and my TV Tuner card was picking it up nicely. Whilst I was performing the mod, I noticed that the surrounding electrolytic capacitors weren't looking the cleanest, so I replaced those too. After another trip to Jaycar, purchasing 4x 4.7uf and 1x 2200uf (unfortunately they didn't stock double-ended!) capacitors, I went about removing the old ones and soldering in the new ones. Solder wick really works well here to clean the holes in the PCB prior installing the new capacitors. The positive pins are also nicely marked on the PCB.

DSC00143 DSC00145 DSC00146

DSC00148

DSC00151 DSC00159 DSC00160

DSC00163

With everything replaced, there was no noticeable change in video quality or system stability, but neither were a problem to start with. This was more for longevity! I slapped in the multi-cart and tried Pitfall out. The Quickshot controller worked OK, but felt very sticky and the buttons weren't responding to each keypress... what to do? Pull it apart.

The board was not clean... so I grabbed some isopropyl wipes and gave it a good once-over. I also re-soldered the main A button wire as it had previously been compressed by the case and didn't look like it'd hold out much longer. With the unit back together, I could now jump on-command with the button on the base, but the trigger button up top wasn't overly responsive. The stick itself has three screws that hold it together, so I popped them out to have a look.

DSC00087 DSC00092 DSC00094

Turns out the top button had been mashed to within an inch of its life and the previous players had actually punched a hole in the PCB, removing the trace that the button was meant to make contact with.

A little bit of solder was added, which caused a height increase of the pad. I was slightly concerned that this would mean the button could mis-fire, but the spring prevented that from occurring... instead it just meant the button didn't have to travel as far to make contact. I could now jump through Pitfall reliably! Mario Bros was also now a lot more fun!

DSC00220

I suppose the final step now is to find a new ball for the top of this chewed-on stick!

Filed under: Retro No Comments
25May/200

Sega Mega Drive – Composite + Region-Free

On a total tagent from recent Amiga stuff, I found this in a box whilst I was moving house. I'd totally forgotten that I'd picked it up from a flea market prior to the Christmas Trip overseas.

DSC00101

DSC00102 DSC00105 DSC00107

I grew up a Nintendo-kiddie with Super Mario Bros and Duck Hunt, so the likes of California Games (oops, that's master-system-vintage) and Sonic were a weird adventure whenever I went to friend's houses. This unit arrived slightly scratched-up, but in perfect working condition. It came with a power pack and RF switch, but I wanted Composite output... so I started googlin' for hacks. Then I looked at the back of the machine and realised it had an 8-pin DIN for A/V output. A quick search found off-the-shelf cables, as I didn't have a properly degree'd DIN plug available that'd fit the socket. Your standard 8-pin DIN has the top two outer pins at a different degree and therefore wont fit.

Instead I had to make one from a 5-pin DIN as it turns out the pinout of the A/V Output port has all the pins I'll need at 3 o'clock, 6 o'clock and 9'oclock!

DSC00114 DSC00112 DSC00120

I purchased a 5-pin DIN port from Jaycar and hacked a standard stereo composite RCA video cable in half. From there, I joined ground together and soldered that to pin 3 on the 5-pin DIN. I then twisted L+R together, as this unit produced MONO sound and soldered that to the left-most pin, when looking at the back of the plug. Finally, the central wire from the yellow video plug was soldered to the right-most pin.

From here, the unit worked perfectly! Of course, to test I only had one game...

DSC00127

To make this fit, I had to actually gently file the cartridge slot.

DSC00123

Turns out the japanese-release games are square, whereas the Australian (and probably elsewhere) release carts have 2 rounded corners. After making it fit, the game just worked... although it might play slightly faster on a 60hz clock!

Filed under: Retro No Comments
15May/205

Zorro II Cards On The Amiga 500

The next build for my Amiga 500 was a Zorro II Card Slot Adapter. This unit uses the expansion slot on the left-hand side of the Amiga (just like the external IDE adapter) and provides a vertical slot to plug your Zorro II card into. It also has a standard floppy power plug and circuitry to choose this supply if provided, otherwise use power from the Amiga itself.

DSC00013

The collation of parts was pretty straight-forward, and I only made one mistake! The relays I'd purchased were much too large for the PCB holes.

DSC00018

DSC00021 DSC00024 DSC00028

So I used a relay I had on hand. It didn't work once soldered and tested... it was rated for a 24-volt input! So I went ahead and re-ordered the correct part.

DSC00098

Next up, I used a spare molex power supply plug to make powering the card a little easier...

DSC00036 DSC00037 DSC00041

Final notes when building... after you've soldered nearly 200 joints, go over them all with a magnifying glass...

DSC00375

It's really easy to miss a soldered join when the plates on the PCB are so shiny... also when the lighting above is LED and the reflections of the melted solder look more 3D than they really are! Fully inspect each joint, otherwise you'll get grey screens, white screens and even half-booting!

The shot above shows one of two pins that I failed to correctly solder, and note that it shows it after I found it and slightly bent the pin to test that it wasn't actually making contact! The actual hardware symptom was that, whilst booting, the drives would be found, Workbench would start booting and then it'd pause at the 'wait timeout' in the StartupII boot script. I assume there's some interrupt or IO signal that's meant to come over that pin... amazing how random things are when signals aren't correct.

DSC00011 DSC00013 DSC00015

Finally, the board was assembled and ready to test!

MegaMicro Technologies: SCRAM 2000

SCRAM 2000 is a SCSI for A2000, A3000, A4000. And now also the Amiga 500! This board features a board-mounted 3.5" SCSI hard drive, an external DB-25 SCSI port and the ability to host a total of 8mb RAM.

DSC00037

The card came without a SCSI drive, so I grabbed a 40mb Seagate SCSI (from Apple!) from my box'o'crap, set the ID to 0 and mounted it to the card. Note that the spacing is very tight for the data cable, so make sure the wires are leading away from the card when you plug them in...

DSC00062

After a lot of toying around, the disk was mounted, formatting and even auto-booting on my KS1.3 Amiga! I used a boot disk instead for the KS1.2 Amiga. Note that the install disk can be used as both. Grab it from here and use ScrapPrep to get your drive in order. Then you just need to copy over the Workbench disks and make sure the boot priority is the highest amongst all drives connected! Check out this post for more details on bootable drives (disregard that it's about IDE drives!)

DSC00129 DSC00133 DSC00134

A fun note on this card... it would've actually come in kit-form to the original purchaser back in the late 80s. When that user assembled it, they put the three status LEDs in backwards. I was wondering, whilst debugging things and trying to work out why my machine wouldn't load, why the LEDs just didn't light whatsoever. I assumed it was because I was using a KS1.2 machine and there was no config, etc.... but it turns out that the LEDs were actually in wrong. I fixed this and also rigged up a LED to use on the activity LED headers... a much quicker way to test things like this!

DSC00150

Next trick was to upgrade the RAM on-board. The board uses ZIPs and this was my first time encountering them. Just think of an IC standing on one side, with all pins out the bottom edge. They're interleaved and you must make sure that they line up correctly before inserting them!

DSC00115

DSC00112 DSC00120 DSC00123

DSC00127

As is my usual rush.... I happened to put the last chip in backwards. With the card inserted, the machine wouldn't respond at all... no power light, nothing! I had only ordered 16 chips, so I was very fortunate that everything 'just-worked' when I swapped it around.

DSC00101

Finally, you'll note that the external SCSI port was nicely corroded on the board I recieved. A quick trip to Jaycar saw the purchase of a replacement part and, after a little destruction, the new port was soldered in place.

DSC00107 DSC00108 DSC00110

After this, I had a perfectly bootable SCSI A500 system with 8mb of Fast RAM!

GVP HC+8 Series II, Revision 2 Zorro II SCSI Card

This card happens to be very similar to the SCRAM above. It also hosts 8MB of RAM and a SCSI controller with an external SCSI port. The main difference here is that drive is mounted the opposite way around and SIMM RAM is used.

DSC00039

This first thing I did was get the RAM situation sorted out. The card came with 2 SIMMs installed and the auction quoted that this was 2MB of RAM. I threw the card in the system and the top line of WorkBench 1.3 indicated just under 3MB as the A500 has 512kb internal and the was also a 512kb expansion card in the trapdoor slot. With this, I tried to do things and kept getting the crash below...

DSC00079

I thought I'd bought a faulty card until I pulled the two SIMMs out and realised that they were only 256kb each! The Amiga was trying to get to the other 1.5mb of RAM and there was physically nothing installed... no wonder it crashed. I quickly populated this with 8 1MB RAM SIMMs and the machine soaked them all up, testing them out perfectly.

DSC00383

This one also had a corroded external SCSI port, so I went ahead and replaced it as well.

DSC00166 DSC00246 DSC00248

Finally, a few shots to show what SysInfo has to say about the card.

DSC00386 DSC00387 DSC00388

Installing an setting up the drive was just as simple as the SCRAM setup. the GVP software works beautifully and you can grab the setup disk here, but but here it is as an ADF.

DSC00378

Just make sure that the HDD is not grounding on the ground-plate of the power regulator!

SupraDrive 2000 WordSync

This card is still on its way from the US of A. As mentioned on the Amiga Hardware Database, this card uses two 8-bit transfer buffers instead of DMA. The card is noticably more simple with regards to chip count and board complexity. It's also half-size, not taking the full length of an A2000 case... so I might even try and shoe-horn it into a nice side-car style box.

I'll update more when it has arrived.

Filed under: C64/Amiga 5 Comments
11May/200

Capturing the output of an Amiga

You might have more luck than me, but I've had a little bit of trouble both outputting a clean composite signal from an Amiga and then capturing it using a PC. Not knowing if my first capture device was at fault, I upgraded an A520 RF modulator to support S-Video, but this still didn't work. The video capture device in question was a Japanese Area Powers Entry Model V.2, bought in a hurry during the last trip whilst testing Super Famicoms... Haha... the name is hugely appropriate!

DSC00010

It didn't work back in Japan when testing the Famicoms, and it didn't work now with the Amiga 500 + A520. I went googling and found all sorts of posts indicating driver installation caveats for Windows 10, but none of this worked. I then tested it with my PlayStation 2 and got a pretty crisp picture!... It was then obvious that this unit would not work with the output of the Amiga.

AverMedia H339 Mini

This cute/tiny PCI-Express card is very barebones. You can tell it's OEM and came from a machine of one of the big brands. Very hard to find drivers as well! I ended up pulling apart a Dell Driver from here. Here's the actual setup file you'll need for Windows 7,8,10 64-bit.

DSC00001

DSC00004 DSC00006 DSC00008

Anyway, with this physically installed and the device happily showing in Device Manager, I attempted to use the unit under VLC. Make sure that you choose the correct input (via the advanced button via the device properties) when you're setting up the capture...

vlc-1

vlc-2 vlc-3 vlc-4

And that you have PAL chosen instead of NTSC.... and then...

vlc-5

Ahh! Finally, no more switching monitors and no more photos of a computer monitor! Finally just easy PNG screenshots. Note that you might notice a slight delay/lag in the capture video on your PC with VLC. To fix this, hit show more options in the capture dialog and set the caching to 0ms.
You can also set ":live-caching=0" on VLC command line.

Filed under: C64/Amiga No Comments
5May/204

Formatting an IDE Drive for use in an Amiga 500

You may have previously seen the IDE Adapters that I'd built for my Amiga 500 over here (internal) and here (external). Whilst they worked very well with FAT32 drives attached, I had no end of trouble trying to work out how to partition, format and mount as a native Amiga disk. For everything below, you'll want to use this bootdisk.

The FastFileSystem

Digging through the blog, I'd remembered that I'd done a bit of this back in the day when mucking around with the Amiga 1200. I had used a CF card internally on the A1200 and installed WB3.9 succesfully on a SmartFileSystem Partition. Unfortunately, we can't use that on the A500, so we'll be basing our partitions on FFS, or FastFileSystem. This comes with Workbench 2.0+, but you'll need the file sitting in your L folder for anything lower.

Connecting a drive

Since we're talking IDE, we'll need an adapter. As per my previous mentions, you can find how to build an internal one here and an external one here. Both work great, but follow the posts there for the caveats and tricks when connecting and powering drives.

DSC00238 DSC00244 DSC04120

Note that this can also apply to SCSI drives. Just disregard the steps to add the driver to the disk and/or HDToolBox in the next section.

Partitioning

We'll use HDToolBox for this. It's on the bootdisk I've provided and it's already configured to use the ide.device driver installed in the devs folder. If you're rolling your own, then you'll need to copy the driver over to your floppy and edit the icon for HDToolBox to specify a SCSI_DEVICE_NAME as such...

DSC00303 DSC00305 DSC00307

This is an important step and you'll need a bit of patience... HDToolBox will sit for around 5 minutes interrogating LUNs with no disks, waiting for a response. If you've only connected one drive as master or slave, then the opposite LUN will pause. Below, I've only connected a master, so I saw the message "Checking ide.device address 0 unit 1..." (IDE slave) for a looooong time... but all came good!

NOTE: If it doesn't come good, then HDToolBox has looked at your drive and had a spasm trying to understand the partition table. I can only suggest you take the drive to another machine and totally wipe it. If you have no other machine, then somehow I found that if you try to format it from the shell, it'll then work in HDToolBox. You don't need to let the format continue; just whack a few of the first cylinders.

DSC00308 DSC00309 DSC00310

From here, you'll need to change the drive type and read the parameters from the drive. Click Change Drive Type and then choose to add a new drive definition. Hit the Read from drive button on the right and cross your fingers.

DSC00311 DSC00312 DSC00313

The shot below shows where HDToolBox has detected by Disk Smith 32mb CF Card. Unfortunately it then failed when trying to write the actual partition table to the disk.

DSC00314 DSC00315 DSC00316

Partition sizing is important, so make sure you pay careful attention to all parameters. The Amiga 500 format application will error out if you try to make a partition too large. Unless you have an upgraded system with more RAM than the standard, don't try and partition a drive that is too big! For example, my 128mb (yes, megabyte!) CF card with one partition formats fine, but if you try a 2gig or 4gig card, you'll have trouble with the auto-detected settings. Here's an idea of the parameters that I've tried...

DSC00366

Size 4096mb 2048mb 128mb 32mb
brand SanDisk WINTEC Dick Smith
ext.power +5v No
cyl 3970 3970 12000 1002 496
heads 16 4 8 8 4
blocks per track 63 256 32 32 32
blocks per cyl 1008 1008 256 256 128
Part.Size (~mb) 1990 950 650 487 196 97 976 487 196 97 749 128 ??
cyl.start 2 2 2 2 2 2 2 2 2 2 2 2 2
cyl.end 3968 1985 1323 992 400 200 1985 992 400 200 6000 1001 495
Result COULD NOT DETECT DRIVE SIZE CANNOT FIND HANDLER NOT ENOUGH MEMORY SUCCESS SUCCESS DEAD CARD

I read in one of the IDE adapter's instructions that you need to have a low cylinder count, so that's why I started with higher surfaces/heads... but instead it seems that a higher cylinder count works better? There's also talk of making sure that your partition sizes match boundaries of the chips inside your CF cards... but I'm not going to pull one open. All I can recommend is that you detect the settings via HDToolBox and then manipulate them to have a higher cylinder count so that surfaces/heads and blocks are lower.

Anyway, where was I? Creating partitions! After you've adjusted the drive parameters, you can click Partition Drive and set up the partitions. It defaults to two, halving the drive. Note the names and sizes, as you'll need them for the mountlist in the future. I changed the layout by deleting the second partition and stretching the first to the end.

DSC00320 DSC00321 DSC00322

Again, write down those start and end cylinder offsets! You can now hit ok-ok-ok-finish and save all settings. The Amiga will probably reboot.

Mountlist

So, remember how I told you to remember those parameters above? You wrote them all down, didn't you? If you didn't, please open up HDToolBox again and record the numbers from the Drive Type screen and the Advanced area in the Partitioning screen. Once you've noted it all down, you're ready to edit ide.ml. On the bootdisk provided, this is located in the devs folder. If you've booted this disk, then just open Shell and type ed devs/ide.ml and press enter.

DSC00349

Once you're in here, you just need to manipulate the fields to match your partition. Starting on the very first line, make sure the name is correct. Change DH0 to whatever you've called yours. Note, there's a bunch of example partition mappings in this file. If you want to use one of the below versions, you can press CTRL-B to delete lines from the text file. For example, you could start at the very top row, hit CTRL-B 17+ times and wipe the top example. Just for fun, here's a reproduction with comments of what you need to change.

IDH0:
FileSystem   = L:FastFileSystem    ; If you want FAT32, then scroll down
Device = ide.device

Unit = 0                   ; 0 = MASTER, 1 = SLAVE

Flags = 0

Surfaces = 4               ; From HDToolBox (HEADS)
BlocksPerTrack = 63        ; From HDToolBox (Blocks Per Track)

Reserved = 2
Interleave = 0

                           ; For the next two values, you'll need
                           ;    to have opened the advanced area when
                           ;    creating partitions in HDToolBox
LowCyl = 2                 ; Start Cyl from Advanced Options
HighCyl = 256              ; End Cyl from Advanced Options
Buffers = 30
GlobVec = -1
BufMemType = 1
DosType = 0x444F5301   ; FFS Dos Type, leave as-is.
Mount = 1
#

Apologies that the photo above doesn't match the final file that is on the bootdisk! I made the final file match the rest of the examples here as much as possible. Either way, just make sure you get the details in correctly and that there's no other duplicate partition name/definition in ide.ml.

Mounting and Formatting

Before you can do anything with the drive, you'll need to make it available to the system. The low-level tools, as per HDToolBox above, can use the drivers to find and interrogate drives, but they don't make them available to the system directly. To do this, we'll need to use the mount command, pointing it to the mountlist we've created above. Type in the following from a Shell.

mount DH0: from devs/ide.ml

Make sure that you've replaced DH0 with your partition name and leave the colon at the end. The from operator tells mount not to use the standard mountlist and instead use the file that we specify afterwards. Hit enter and you should be put back to the command prompt without any messages or warnings. The only thing that might happen is that you get a drive visible on the workbench... if this happens, then somehow the partition you've mapped is already formatted and ready-to-go. If this is a surprise, then don't try and open it... anything could happen.

From here we'll want to format the drive. The format command is used here with the DRIVE and NAME parameters. We then specify the disk format at the end.

format DRIVE dh0: NAME CFCARD0 ffs

Above, you can see the partition name is DH0:. As per usual, replace this with your partition name, leaving the colon at the end. After NAME you can type a friendly name for your partition. This is the name that'll show under the icon on your workbench. It's also the name that you can use in Shell.

DSC00359

Do you like the name I gave it? You'll see it's legit as it's in the screenshots below when copying files. I'd gotten pretty desperate after a miriad of partition size permutations, trying to get a format session not to fail. Finally, as per above, one worked... but not before I started typing stupid names for the formatted partition name!

Note that you can add the term quick to the end if you just want to quick format, but I recommend to do a full format the first time!

Workbench

With the drive totally prepared, it should be visible on the workbench with a single Trashcan inside of it. From here, we'll want to transfer the OS onto it, so go ahead and purchase the Floppy & Hard Disk Image Pack from Amiga Forever. In the kit you'll have two ADF images: one for Workbench 1.3 and another is the Extras 1.3 disk. You'll need to insert these one at a time and copy the entire contents of each onto your new partition.

A quick note on copying disks on the A500: Regardless if you're using real floppies or a Gotek, floppy-switcheroo is the name of the game when trying to get Workbench copied over onto the IDE HDD. Firstly, understand that the copy command is an executable that lives in the c folder of your bootdisk. You can easily copy files around when the bootdisk is inserted. Issues start to arise when you switch disks and try to call copy or any other executables that 'exist' on the bootdisk. Workbench will ask you to insert the bootdisk first to find the executable and then actually run the requested command with its parameters.

This is all fine and well, until you try the following command:

copy DF0: DH0: ALL

It looks simple enough... I've swapped the Workbench 1.3 disk in and asked it to copy. Of course, when it started to execute, it asked me for the disk which contains the actual copy executable:

DSC00365

Yeah, I know, it says A590Setup... a good hint as to what disk I created this IDE Boot Disk off. Anyway, the point is that that was my boot disk and that's where copy lived. Once you switch the disk in, it'll start to execute copy... and copy from DF0 to DH0. Sounds good? It wasn't! As I wanted Workbench 1.3 to copy over, not my boot disk! Because I had DF0: in the copy command, and not workbench1.3:, it's just copying from the drive after swapping the bootdisk in and hasn't checked the name!

To solve this, we have two options. If you're using my bootdisk, then I've already solved it for you with the first option: make the copy program resident. In startup-sequence, I've called the resident command with copy as an argument, making Workbench copy the copy executable to system RAM (not the RAM: disk!) and persist it there during floppy disk changes. This means that it's always available whenever you need to call it.

The second option is shown below. Copy copy to RAM: (the actual RAM disk) and call it from there via RAM:copy.

DSC00363

... copy ... copy ... copy ...

DSC00364

Note that the Workbench 1.3 floppy has a space in its name and that the copy command can't handle this without special formatting. I guessed and tried to reference it as workbench1.3: without the space and somehow this worked fine? I then tried the same method with the Extras 1.3 disk, but that failed entirely. Due to not knowing how to reference it, I used DF0: instead and hence wound up with the situation above where I copied over the wrong disk. After a quick bit of googlin' now, it seems that you simply have to double-quote things:

copy "extras 1.3:" dh0: all

I'll try that at a later date.

Bootable disk

The bootdisk mentioned throughout this article can be converted to an actual bootdisk. I suppose I should've called it a setup disk at first, but it is actually still a standalone bootdisk. Or something. Anyway, it'll now be a bootstrapdisk, mapping the relevant OS drives and folders to the HDD and then kicking WB off from there. The startup-sequence files to do this are all ready to go. Open a shell and switch to the s folder. From there, ed startup-sequence.hd.

; Startup sequence for Hard Disk users...checks for hard disk, then
; transfers control if it is present. (The script assumes DH0:)
; TO USE: copy your normal startup-sequence files (Startup-Sequence,
; and StartupII to the S: directory of your hard disk.
; Then rename your normal Startup-Sequence file
; as Startup-Sequence.f in the S: directory of the floppy, just in case.
; Now replace the Startup-Sequence file on the floppy with this file.
;
Setpatch >NIL:
SYS:System/FastMemFirst
binddrivers

;The line below needs to be edited to match your partition name
;You also then need to make sure that ide.ml has the correct
; parameters for your partition!
mount IDH0: from devs/ide.ml
assign >NIL: IDH0: exists

IF NOT WARN
; hard disk is present
assign sys: IDH0:
assign c: SYS:c
assign L: SYS:l
assign FONTS: SYS:fonts
assign S: SYS:s
assign DEVS: SYS:devs
assign LIBS: SYS:libs
makedir ram:tr
assign t: ram:tr
execute s:Startup-Sequence
ENDIF
execute df0:s/Startup-Sequence.f

Simply make sure that IDH0 in all three places is changed to whatever your HDD partition name is and then rename the files:

rename startup-sequence startup-sequence.f
rename startup-sequence.hd startup-sequence

From here... reboot!

Filed under: C64/Amiga 4 Comments
2May/200

Amiga A520 Modulator – S-Video Out

Whilst trying to capture the Amiga via a USB Capture device, I ran into problems. I couldn't get anything other than a black screen and considered the fact that the A520 modulator was producing a bad signal. The USB Capture device worked fine on Windows 10 with the playstation, so I knew that it worked.

I'd been using an A520 on the Amiga for a while as my secondary PC monitor has Composite Video in and it was easy to switch back and forth. I also wanted colour, so I chose the A520 over the A500's standard mono video output.

DSC00251

DSC00255 DSC00257 DSC00260

The USB capture device also accepted S-Video, so I thought I'd try and 'upgrade' the A520 to S-Video, cleaning the signal in the process, in an attempt to capture the video on my desktop. Another advantage would be that I'd stop having to switch video inputs all the time, which would also help standard windows usage as half the time a window would open on the screen that was currently displaying the Amiga.

So, what to do? Google! Zenithia's blog was a first hit with this post where he uses another post's instructions to modify an A520. The other post is S-Video from the A520 at Dave's Amiga Hardware Page. Zenithia seemingly does the circuit-board conversion correctly but, at the end, he describes how Dave leaves out the information on adapting the two Y and C signals from the modified A520 to an S-Video plug. Instead, Zenithia uses a capacitor to fake the sync... let's sort all this out and build the cable correctly!

Required Components

One thing that Dave's page doesn't have is an obvious list of required components... so... here's your shopping list:

capacitors:
	22uf electrolytic - 16v (x3)
	100uf electrolytic - 16v 
	220uf electrolytic - 16v 
	56pf ceramic
	0.1uf (100n) ceramic

resistors:
	- 180 ohm
	- 220 ohm
	- 270 ohm
	- 330 ohm
	- 1 Kohm
	- 10 Kohm
	- 470 Kohm
	- 1 Mohm
	- 2.2 Mohm

I've included the four stock electrolytics on the board (not mentioned by Dave) as purchases also. The 100uf on my A520 pretty much fell off... there's no real chance that capacitors from 1989 are any good anymore!

Modifying an A520

First up, grab your A520 and prize it open. It's held together with plastic pins that insert into sleeves on the opposite half-shell. Grab a flat-head screwdriver and gently separate the case at each corner. The case will come apart with minimal force, so never apply too much pressure! Finally remove the two screws that hold down the RGB plug.

DSC00261

DSC00265

Once apart, turn on your soldering iron. There's 19 steps to follow from the instructions at Dave's page. Make sure that any wiring that you use to bridge pins or points are insulated! Also try and place any bridging capacitors or resistors away from the soldered pins of other components so they aren't pierced when the case it put back together!

Dave's page has three images at the end, showing the original circuit, the circuit after modifications and finally the deltas between both. You'll note that the modified circuit shows how the C and Y are now available from the two RCA sockets on the modulator.

DSC00267

The modifications are pretty straightforward. One tricky part was the installation of a resistor in R18. My board had the holes drilled, but no solder pads. So instead I just piggy-backed the resistor under the board, soldering to points along the traces. If you look really closely below, you'll see that the holes have no pads, directly below the hacked on resistor.

DSC00287

Another point is to be super-careful when cutting traces! Too often my knife would go flying to towards another trace trying to do other damage.

DSC00270 DSC00273 DSC00277

Finally, the hack inside the modulator is pretty tricky. Make sure you have a sharp pair of snips when you're cutting the white plastic housing away. Once done, solder a pin through the RCA plug rear lead and push it down towards the header. From there, it'll be held perfectly in place to solder the final connection.

Wiring up the cables

So, you now have both Chroma (Colour) and Luma (Intensity) available on your modulator. The previous Audio-In RCA plug is Intensity, with Video Out being Chroma. From here, you need to wire up an S-Video Cable appropriately. I grabbed an S-Video cable I had spare along with a component cable that I have absolutely no use for.

DSC00288 DSC00290 DSC00292

After chopping them both in half, I bared the ends of both and wired everything together. The pinout of my S-Video cable was as follows:

	1	gnd		black
	2	gnd		brown
	3	intensity	red
	4	chroma		orange

With that, I just made sure the two channels were paired and that the grounds were attached to the shields of each RCA lead. The other two wires were the signals and, officially, I could wire them either-which-way as I can swap the plugs at the Amiga end!

Does it even work?

It sure does, but the USB Capture device still doesn't pick up the signal! The Amiga must output some very weird frequencies or incorrect signal voltages. Regardless, my secondary monitor also takes S-Video, so I plugged it in...

DSC00294 DSC00298 DSC00300

Ahh... crisper... I mean, it's not perfect, but it's much clearer! Disregard the last shot... one of my A500s is throwing those vertical lines and they're on the todo list to fix. As for getting the picture USB-capture'd, I suppose I could start toying with the RGB port to get a better signal, but I have no idea if this USB Capture device will ever support it... instead I've gone and sourced an internal AverMedia PCI-e Card. Will update later when that arrives.

Filed under: C64/Amiga No Comments
29Apr/202

Amiga 500 – External IDE Port

After building an internal IDE port for the Amiga 500, it was time to try an external port that connects to the expansion slot. This happened to be another lesson in taking-your-time-and-doing-proper-research. As I was unpacking the bags for this unit, I realised I'd bought SMD resistors and capacitors that were, literally, microscopic. I couldn't even see them in the tape-strips that they were sent on.

DSC00242

I went back to the bill of materials as linked to on the project page and realised that there was a code after the SMD items: 0805. Turns out there's an industry standard sizing and I had no idea. I therefore put in a new order to DigiKey and got these correct, got the relays correct (for another project) and then got a few other handy bits. Here's a photo of the size comparison, only take-able once I'd received the second order. Actually, I must admit that DigiKey's free shipping with any order over 50 bucks is super fast!

Now that I had the right items, I whipped out the boards that I'd had printed and started placing the chips.

DSC00170

The replacement items arrived and I started assembling the boards. It wasn't until I tried to actually solder in the 74HC04 inverter that I realised I'd also ordered the wrong part. SMD chips come in a plethora of sizings, just like the resistor component sizing above and I'd purchased SOP14s instead of SOIC14s. I decided to MacGyver it and make them fit... but it caused me high levels of stress as things didn't go smoothly during the testing phase.

DSC00174 DSC00177 DSC00180

After ruining around 4 boards, I managed to finally solder down the 4 ICs. This was my first attempt at SMD soldering and I must say that I'm not a fan. Firstly, I had the wrong-sized solder, but I fixed that up by purchasing the smallest available: 0.7mm. With this new solder, it was much easier to not bridge legs on the ICs, but the tip on my soldering iron was also too large. I've since ordered smaller 'blade' style tips.

DSC00182 DSC00185 DSC00194

You can see above where I managed to solder the ill-fitting inverter upside down... I then tried to remove it and trashed the traces on the board. So damn fiddly... And then the resistors and capacitors... the best method I found was to tin one pad, use fine tweezers to place the component on the tinned pad and then melt it in place... from there, you can just solder up the other side. I then tested all continuity to make sure contact was correctly made.

DSC00189

The edge connector wasn't a simple solder-in-position... I had options. I could solder in a right-angled header and then build a bridging board, as per the original author's instructions. Or I could use a single vertical pin header and bend the bottom row of pins of the edge connector and solder it all together. This latter option lead to a much stronger build, so I went with it.

DSC00203 DSC00205 DSC00209

DSC00211

DSC00214 DSC00222 DSC00224

Finally, I just needed the IDE pin-header in place!

DSC00238

After around 10 hours of debugging, I managed to get this thing to work. Firstly, one or two legs on the inverter IC weren't cleanly making contact, and then I realised I'd put the LED on the wrong way around. After a lot of further tracing with a multimeter, it turns out that my master HDD was on cable-select when it needed to be forced. I also seemed to require a second HDD as slave to get HDToolBox to read the drives correctly.

DSC00241 DSC00244 DSC00245

But it works! I'll write up a post very shortly on how to work with these drives. For now, you can use the boot disks from my other internal IDE port post.

Filed under: C64/Amiga 2 Comments