Posts Tagged ‘Hardware

07
Aug
19

Teac USB Floppy drive FD 05PUB

Recently I bought a new Ryzen based PC, which has a distinct lack of legacy support and even lacks optical drives. This is hardly surprising as this is the logical conclusion of what has been an increasing trend of storing and transferring data with flash drives, on the “cloud” or other network enabled means.

It does however pose a problem for someone like myself who collects and uses a number of older machines of various vintages and architectures. Many older machines don’t have network support and don’t accept USB flash drives natively. So without the ability to use older mediums such as floppy or optical discs it can be quite difficult to transfer data to and from vintage hardware.

There are fortunately some options for adding some legacy support to modern machines, such as USB optical and floppy drives. There are also some options for adding modern device support to old machines such as a floppy emulator that accepts USB flash drives as input. For me, rather than getting numerous floppy emulators, I thought it would be better to add floppy support to my new modern machine.

So off to ebay I went and got a generic USB floppy drive for about $12 AUD. It turned out to be a Teac FD 05PUB (also known as UF000x). This model turns up everywhere as it has been made for a while and re-badged as IBM, HP and DELL drives all at some point or another. Looking around I found this was basically the only model of USB floppy drive currently available, which could be a problem as some people have had trouble getting these to work on windows 7 and 10 due to driver issues.

I was unluckly because my particular unit appeared to be faulty, not being able to read disks created by known good drives and not even being able to read data it has itself written. I suspect it had suffered some damage in shipping as the seller had not packaged it well, using a cardboard envelope with no padding for shipping. Although it could also be the build quality as the unit feels extremely cheap, which frankly it is. Either way I’ve returned my unit for refund (hence the reason there’s no photo of it).

It’s now several months later and I’ve finally decided on and received a new solution. This nifty little doo-daa is basically a USB to 40 pin floppy adapter. This allows me to use any standard 1.44Mb 3.5 inch floppy drive I have laying around as a USB device. This has the advantage that I can use known good drives that are in alignment and have clean heads, and if something mechanical fails I can simply swap the drive. Here’s a photo of it with a Sony 3.5 inch floppy drive, one of the younger drives in my collection.

The USB adapter and a Sony 3.5″ drive.

It does have some downsides, such as not having a case and requiring a power supply for the drive itself. This is hardly surprising as it’s really designed for adding internal floppy drives to modern machines that lack the legacy controller. It also supports only one type of drive, so you won’t be using any 5.25 inch floppies with this. Interestingly it is reported by the OS as being the same device as the first drive I bought, confirming to me that the first drive was indeed faulty as it uses the same device driver.

At least I now have a very basic solution for data transfer, although it’s not ideal. I’m yet to investigate using serial ports on my new PC, which luckily the motherboard has a header for. This is mainly for larger data transfers, with the initial software loaded on the target machine likely by floppy.

13
Jul
19

Epson EX 1000 Dot Matrix Printer

As is usual for this time of year I’ve come to my parents place for a visit. Some of our old computer hardware is still in storage here, some of which I’ve already documented. Today we’re going to take a quick look at our old printer, an Epson EX 1000.

We got this particular example with our first computer early in 1990, at the time I remember there being many dot matrix printers in service, but technologies such as inkjet and laser were emerging as better alternatives.

It was quite noisy when printing, and shook the computer desk which it sat on. We had the tractor feed option which allowed the use of continuous paper, which was handy when printing a large amount of text such as program code. It could print graphics, which we occasionally used, but with only the black and white ribbon the images weren’t of a high quality. I remember having a colour ribbon for ours, but never actually using it.

Looking inside we can see the print head, and the wire that is used to move it back and forth. Many other printers used rubber belts that would eventually perish, this arrangement lasts significantly longer and would continue to work even now. Although looking at the guide rails they would need polishing and lubricating before it could be used.

The printer has a small control panel to set the font and print quality manually. This could be controlled by software, I remember MS works would change these settings and allow for different fonts in the same document.

There is this curious slot with a connector which isn’t described in the manual. I assume it’s for additional buffer memory or perhaps for adding other type faces. There is an internal slot for connecting other types of interfaces such as IEEE-488, but on our printer this isn’t populated as we just used the standard parallel interface.

The tractor feed mechanism can be seen here, with some teeth that engaged with holes in the paper. Setting this up initially was a bit tricky, but saved constantly feeding in paper manually and gave you a wider printing area. You could feed in standard A4 sheets as well.

Dot matrix printers such as this one have many draw backs, such as being noisy and having lower quality print. However they stuck around partly because they were generally quite reliable and were very cheap on consumables. I remember a printer much like this one at my fathers old workplace hidden away under a sound proof hood continuously printing almost every day. This printer remained in service until we upgraded to a new PC and printer some seven years later.

 

17
Jun
19

My Old PC

Quite recently I bought myself a new Ryzen based PC as my main desktop rig. The machine it replaced is around 10 years old, whilst it’s definitely not vintage in any way it’s interesting to look back at the hardware. For some context I was working for a local IT company when I built this machine, and we were just starting to build the first i7 based machines. We were having issues with getting compatible RAM working with them, and we had to sink a significant amount of time getting the first ones to run well. This influenced my decision to go with an AMD based system at the time. Here’s a photo of the system.

It is built in an Antec Sonata Proto chassis as it came with a nice 500W power supply that we had experience with having reasonably good reliability. I removed the door as it was an annoyance when using the optical/floppy drives. I have two Pioneer DVD drives and a floppy drive which is unfortunately the wrong colour for my case. Lets take a look inside.

The CPU is an AMD Phenom II x4 955 which runs @ 3.2 Ghz. It’s not as fast as many of the early core i7 chips, but compared quite favourably in terms of performance per cost at the time. Surprisingly it actually continued to perform quite well for basically everything except newer games, it did manage to play World of Warships and Minecraft right up to its retirement. It’s installed in a Gigabyte MA490FX-UD5P which is a high durability design featuring solid capacitors, more copper and decent heat sinks for the VRM and chipset. These measures seem to have been effective given the longevity of this machine.

4Gb of Corsair 1333Mhz DDR3 memory was quite good when I first built this machine, but started to look a bit limiting later in its life. Upgrading this would have been a nice performance boost, but wasn’t really possible for me during it’s working life.

The GPU is an ATI Radeon 4850 HD made by Gigabyte. Again this was alright when everything was new, but it doesn’t perform well on newer software. I suspect it held the machine back the most when it came to running newer games, although it has proven to be quite reliable, something many other graphics cards can’t claim. Oddly the board seems to have drooped or bent during its life perhaps from the weight of the power cabling, that can’t be good for it, but it hasn’t failed.

Three 1TB hard disks make up the storage. The black WD1002FAEX stores the operating system and software installation as well as some of my data. Bulk data such as disk images and media are stored on the first of the two green WD10EADS drives, the second drive acts as a backup of the other two. Surprisingly I’ve never run out of space on these drives. The only reason to replace them is really the extremely high power-on hours count. In my chassis the drives are mounted using silicon vibration damping grommets.

Initially I had Windows XP installed on this machine, mostly as I wasn’t all that enamoured with Windows Vista and Windows 7 was a couple of months out. I used it in this software configuration for quite a long time, way past the end of XP’s life. As software like Firefox (and others) gradually dropped updates and support it became harder to use, so about half way through its life I installed Debian Linux on it. I was able to get most games and software I needed to work running. I retained the old win XP install (dual boot) so I could use anything that didn’t work, although in practice that was very infrequent.

This old PC certainly lived longer than most desktops, and I’m kinda sad to retire it despite my newer machine performing better in every measurable way. With a memory and graphic card update it would still make quite a usable machine today, but with my newer system I enjoy energy savings and higher performance that made the upgrade very worth while.

22
Jan
19

Quick Look: a not so mysterious hard disk

I’ve been quite busy over the holiday break, but whilst visiting my parents I found what I thought was a mystery hard disk. Here’s a photo.

It has Trigem on the label, something I’ve not seen before. I didn’t know until looking closer at the drive much later that it’s actually a Samsung drive manufactured for Trigem, who was the company behind e-machines. So it’s no surprise that it was in an e-machine that Dad found it.

If you look on the underside of this drive you can see that the board is even labeled as being a Samsung Voyager 3A, 4A or 5A.

Having discovered it’s not exactly as mysterious as I thought I decided to power it on and give it a quick test to see if it works. Given that it had been floating around Dad’s shed for quite some time I was quite surprised that it spun up and had no bad sectors. It achieved about 9MB/s using a USB2IDE adapter when reading the entire surface. I loaded up some disk diagnostic software to check out what kind of condition the drive is in.

It identifies itself as a Samsung SV0322A spinpoint drive and despite its age it seems in relatively good condition. It’s quite small at only 3.2Gb, but it will probably be useful for a retro machine running either DOS or Win9x, so I’ll be adding this drive to my collection of other retired hard disks.

12
Nov
18

Mainboard: AOpen MX3W

Today I’m looking at a Socket 370 made by AOpen around mid 1999. It’s a clearly budget board as we will see when taking a closer look. I referenced this contemporary Anandtech article whilst writing this. I’m trying out a different device for taking the overview photos today as my old camera has seen better days. Let us begin with a shot of the whole board.

The first obvious thing is the mATX form factor and the lack of an AGP slot. So this was definitely not intended for the gaming or high performance market. It sports an Intel 810-DC100 chipset with the basic on-board video, and an AD1881 soft audio codec for sound. The chipset is interesting as it has the FSB and memory clocks separate. The memory will run at 100Mhz at a maximum, whilst the FSB can achieve speeds well in excess of this. This board can increase the FSB speed but the RAM clock cannot be changed. This means that any overclock could only be effective up until the point the memory bus becomes saturated, at which point overclocking any further would not increase performance.

Cache SRAM chips

The on-board graphics are fairly basic, it’s roughly equivalent to the Intel i740, a GPU that was never known for being particularly fast. It uses the system memory for much of the work involved in 3d rendering, which obviously consumes memory bandwidth the CPU could potentially require. To mitigate this flaw a 4MB cache was added to this version of the chipset, it is used mostly for storing the Z-buffer. I’d imagine this makes a fair difference whilst rendering 3d images, but doesn’t entirely solve the problem.

The on-board sound solution is similarly very basic. It’s an AD1881 audio codec, which Anandtech described as a “soft” audio device. By this they meant that much of the processing work for audio is done by the host CPU rather than specialised hardware on the sound chip. This is much like early sound cards which relied on the CPU for mixing audio channels together as the hardware only played back a stream of samples. At the time this board was made there were plenty of more advanced sound chips available that could do everything in hardware, some even turned up as integrated sound.

In terms of performance this board wouldn’t be all that good compared to the higher end. However that’s not what it was really designed for. For basic use such as office work and web browsing this would have been adequate for the time.

From a technicians point of view there are a few issues with this board. Firstly, there isn’t much variability in how you can build a system with it, only budget machines are really possible. The on-board graphics does not perform well and there is no AGP slot for an upgrade. There are only two memory slots which are limited to 100Mhz RAM, so you’re quite limited in how much and how fast the memory can be. Finally the floppy connector is in an odd spot near the AMR slot, this results in running a ribbon cable across the board which is generally bad for air flow in the case. My particular example is further hampered by one of the memory slots having a broken retaining clip.

For the end user it would probably perform well for most basic tasks, but get bogged down when they do something requiring a little more grunt. The lack of upgrade options would probably be an issue for some depending on what their needs are. Given that it’s a budget model none of this should be surprising, only people looking for a low price would have found this appealing.

29
Jun
18

Motherboard: MSI 970A-G43

I had almost ran out of old motherboards for this section when my brother gave me this particular board. He gave it to me as he had upgraded to a Ryzen based system and this one had failed. Unlike the others so far this one is actually relatively modern, although by no means current as it is at least about 4-5 years old. It’s not really remarkable in any way, but it has many typical features of modern boards I’ve not yet discussed.

Here’s a picture of the board.

It’s an AM3+ socket board with an AMD 970 + SB950 chipset which was fairly middle of the road performance wise when it was new. Part of the reason for this came down to AMD not having a competitive CPU on the market at the time, this was well before the Ryzen chips had launched. Lets look at some of the features of the board.

Most peripherals that you could need are integrated, with the exception of the graphics card. There are plenty of USB connectors on the back as well as in header form, although only a few of them are USB3. The on-board SATA controller offers basic RAID capability, and the audio chip is adequate but neither are as good as dedicated cards at their job. Like earlier boards, part of the issue is the location of the audio chip, with it being located near the bottom of the board. This increases the chance of noise and crosstalk affecting audio quality. The LAN chip supports up to gigabit speed as you’d expect.

Like most modern motherboards support for most legacy hardware has been dropped with a few exceptions. There are two PCI ports for old expansion cards, a serial port header, and surprisingly PS/2 ports for keyboard and mouse. With the wide spread use of USB for keyboards and mice these days it’s a little odd to still see old school PS/2 ports.

A big change over older boards is the move away from electrolytic capacitors towards solid polyester capacitors. There are lots of benefits arising from this change, the best of which is the increased lifespan and durability. The downside seems to be increased cost, as there are more capacitors, but I think the trade off is totally worth it. Here you can see the voltage regulation circuits for the CPU, it appears for each voltage there is two caps, 4 FETs and an inductor. Nearby are a further 7 capacitors which could be more bulk capacitance for the voltage regulation, but could also be for the nearby USB ports. Also note the board has marking and holes for a heatsink, but in this instance one is not fitted.

Modern boards don’t really use jumpers for configuration any more, but the front panel header still needs a nice clear silkscreen label. Unfortunately MSI could have done better with this particular board, there are two headers relevant to the front panel, both have labels, but they are both a bit hard to read. If you were handling many of the same board this wouldn’t be a huge issue as you’d learn the layout, but it would be a bit of a pain the first few times. Otherwise there aren’t any issues that make it hard to install or maintain.

This board would be a reasonable choice for many end users who only use their machines for basics such as web browsing and email. My brother used it for lighter gaming loads such as minecraft, which it handled reasonably well with a decent GPU, however it was never suitable for heavier games that are more processor intensive. Being relatively young it’s not really suitable for a retro PC as there is no support for an older OS available.

16
Apr
18

SS20 Desktop: Renewed Vigour

Last time I had started to finally get to grips with the system hanging issues, having found out much of the problem came down to the SMP kernel issues related to the on-board SCSI that are still prevalent within NetBSD releases. I was fortunate that I’d been given a chance to try out a patch that made SMP much more stable (although not perfect). This gave me essentially 4 different configuration options. After thinking about it, I decided it would probably be prudent to make some measurements to hopefully determine what the best way to go is.

I have three Mbus modules (pictured above), a dual CPU SuperSparc @ 50Mhz, a single CPU SuperSparc @60Mhz and a single CPU HyperSparc @ 90Mhz. The clock speeds can be a little misleading as there is a little more to each module. The SuperSparc modules each come with 1Mb per CPU of cache where as the HyperSparc has only 256Kb, and the dual CPU module runs on a slower Mbus @40Mhz whilst the other two run at 50Mhz. Additionally the rough guide to Mbus modules, an essential site for anyone with a sun machine like mine, suggested that the SuperSparc CPUs would actually perform better on a per clock basis. Given all this it’s not really clear which the best performers will be. From here on in I’ll abreviate SuperSparc to SS and HyperSparc to HS

Today we’re going to look at the results of some of the intensive benchmarks I’ve put the modules through, and at the end the best choice of configuration given the hardware I have on hand. All the tests are run with the same OS (NetBSD 7.1) and hardware with the exception of the Mbus modules under test.

The first set of benchmarks are aimed at measuring basic CPU speed. The benchmarks I’ve used are Dhrystone (version 2.1), Whetstone and both the double and single precision versions of the linpack benchmark. These tests are measuring single threaded performance of the modules.

Just looking at these charts it’s obvious that the HS is the fastest of the three modules. Given its higher clock speed that is to be expected, but it also attained higher scores per clock for all the tests except whetstone. The linpack tests show a large difference with the HS running about 12% faster per clock for double precision and about 22% faster per clock for the single. The Dhrystone test showed a much more subdued advantage, only running about 7% faster per clock. The Whetstone test showed the HS was slower, doing floating point arithmetic by about 11% slower per clock cycle.

Both SS modules performed about the same relative to their clock rate, which indicates the Mbus speed wasn’t a large factor in these tests, and that the data size was likely smaller than that of the L2 cache (1Mb). I would have expected the dual 50Mhz module to be slower in single threaded tasks as the Mbus is slowed to 40Mhz (as opposed to 50Mhz the others use).

I’m not sure how I feel about the results here, the data set size for the tests was almost certainly too small to even exceed the capacity of the HSs 256Kb cache. I’m not sure what to make of the linpack results, but the dhrystone and whetstone results seem to indicate the HS core is better at integer and string operations and the SS core is better at floating point.

I selected the next benchmark because it offered speed measurements over a range of data sizes. The Sieve of Eratosthenes is a simple algorithm for finding prime numbers within a finite numerical space. Rather than explain it myself look here on Wikipedia for more details. One of it’s key features is that it is quite hard on a CPU’s memory bandwidth, and it’s use of the cache is quite sub-optimal. I omitted testing the 50Mhz SS module.

The results are quite interesting. The HS enjoys an advantage of about 14% per clock when the data set fits within it’s cache, but suffers quite a performance drop once the data set gets larger. Despite being 30Mhz slower the SS is faster for data sets small enough for its cache but too large to fit in the HSs cache. I suspect this gap would be widest at just below 1Mb data size, but the program didn’t allow control over that. The worst data point shows the HS as 44% slower per clock. This is quite surprising, as the SS is not much faster than the Mbus speed (only 10Mhz faster) I didn’t expect the advantage in that data size to be so large. After 1Mb data size is exceeded, the HS starts to catch up again, but the data points don’t get large enough to know if it ever achieves equal relative performance again. I’d imagine that once the data is large enough both modules would perform close to the same as memory bandwidth becomes the limiting factor.

The next benchmark is similar in that there is measurement over a range of data sizes, but the algorithm is significantly different. The algorithm used is heapsort, a relatively efficient sorting algorithm used in many places. You can find more details here on Wikipedia. One of it’s characteristics is that it is much more cache friendly. Again I omitted testing the dual 50Mhz SS.

Looking at the graphs this test really requires some points at larger data sizes. I can only really guess, but I’d imagine that the performance would eventually converge given that memory bandwidth would eventually become the dominant factor. The previous test indicates that there may even be a window in which the SS performs better, but without actual data we will never know.

Given that I’ll be using this machine as a desktop workstation I ran a benchmark known as x11perf. It simply tests the maximum speed of components of the X11 protocol. It’s often known just as X for short, and is basically the software that unix systems use to interface to video displays.The chart shows performance relative to the dual 50Mhz SS (the yellow line represents it). A 2 is twice and fast, and 0.5 is half as fast. Each point on the X axis is a test, like line drawing for instance, there are so many tests (over 300) it wasn’t practical to separate and chart them individually. Out of interest I ran the dual 50Mhz SS with a MP kernel to see if it made any appreciable difference.

There are some quite interesting features of this chart. Firstly you’ll notice that both the faster modules have tests that are significantly slower than the dual SS (30-35% slower at worst). This is because those tests are CPU bound, and with a dual CPU module both the X server and client can have a whole CPU to itself. Typically those tests involve little actual drawing to screen, like plotting points.

In general the dual 50Mhz SS is slower than the faster modules. The SS @ 60Mhz is about 1.15 times faster on average and the HS is 1.75 times faster on average. The HS is in general the best on the raw performance numbers, with some odd exceptions. Some tests seem to favour the SS @ 60Mhz, which would be down to cache size.

Relative to their clock speed, the 60Mhz SS does better than the HS, but I’d imagine this would be due to the SBus limiting the maximum through put to the frame buffer. The SBus only runs @ 25Mhz so is almost certainly going to slow down a faster CPU when drawing.

The last and final test is one called Ramspeed. It’s basically designed to measure the memory bandwidth. I opted for the more general integer and floating point tests over the specific reading and writing tests as they are more likely to represent a computational load. There are 4 tests, Copy creates two buffers and copies data from one to the other, Scale creates two buffers and copies data from one to the other, but scales the number by some constant, finally Triad creates 3 buffers and adds two of them together (scaling one by a constant factor) and storing the result in the third buffer. All buffers are the same size. The tests I’ve chosen only test with buffers that are 32Mb in size, so much larger than the caches of either of the modules. You can select the buffer size and some tests available in the program test a range of sizes.

The results are pretty bad for the HS, it achieves slightly better speed only for the copy operations, which shouldn’t be surprising as the Mbus should be a limiting factor. However for the other tests the SS performs quite a bit better, so much in fact I ran the tests many times just to make sure. This would appear to be down to the memory and cache architecture of the modules, not just the cache size, although that is certainly playing an important role in the HS failing to perform. The HS does have significantly smaller L1 cache only having a 8k instruction cache versus a 20k Instruction and 16k data L1 cache in the SS core.

Having now spent a couple of weeks testing these modules I think we’re starting to get a picture of what these chips can do relative to each other. The HS is clearly faster as long as any data isn’t larger than its cache. The SS on the other hand isn’t as fast at it’s peak, largely due to a lower clock speed, but handles larger data sets significantly better. The X11 test showed that it is quite beneficial to have multiple CPUs in a workstation, even if only for basic X11 applications. However it also shows the HS being quite a good choice. I think the tests also show there was some merit to the idea that the SS modules performed better relative to their clock speed, but it also shows this is highly dependent on the work load.

So what am I going with and what would I recommend. With the hardware I have I’ll use the HS @ 90 for running the machine as a workstation as that makes it snappier to use in general. The flip side is that if I were to use the machine for a computational load, such as compiling a number of packages, number cruching, or a basic server the two SS modules would almost certainly perform much better as long as the job could be divided between the CPUs. Even the SS @ 60Mhz has a good chance of doing computation better on it’s own. The HS on it’s own is disadvantaged by not being able to multi-task as well, I have noticed that X is in general less responsive when the machine is under load (compared to both SS modules together), so a second HS module would probably be a nice addition in the future.

If money was no object and I could have any parts at all, both Ross and Sun had decent offerings. The fastest SS is 85-90Mhz, two of these would certainly be quite fast. However I’d imagine they probably wouldn’t be as fast as any pair of HS modules over 125Mhz. So in the end the HS modules would be the way to go if you had access to anything. As it stands, looking around online it’s actually really hard to find faster modules for a reasonable price. Among the SS modules those over 60Mhz are quite expensive and largely not available. The HS parts have a similar problem, but you can get 90Mhz – 133Mhz parts at fairly decent prices, although faster modules still command a high price, and slower modules wouldn’t be worth it. Again with what’s available the HS seems the way to go.

I’ve tried to be as thorough as possible, but if you want to see the raw data  and gnumeric spreadsheet with calculations and charts you can find them here.




Blogs I Follow

Enter your email address to follow this blog and receive notifications of new posts by email.


Mister G Kids

A daily comic about real stuff little kids say in school. By Matt Gajdoš

Random Battles: my life long level grind

completing every RPG, ever.

Gough's Tech Zone

Reversing the mindless enslavement of humans by technology.

Retrocosm's Vintage Computing, Tech & Scale RC Blog

Random mutterings on retro computing, old technology, some new, plus radio controlled scale modelling.

ancientelectronics

retro computing and gaming plus a little more

Retrocomputing with 90's SPARC

21st-Century computing, the hard way

lazygamereviews

MS-DOS game reviews, retro ramblings and more...