I have previously analyzed the ROM images of some third party disk drives for the Commodore 64: The result was that most of them were just using the original binaries with some obfuscation, and some with some added features. This time, let’s look at another drive, the “Technica”, which is a little special in this regard.
The most common alternative to Commodore’s de-facto standard 1541 drive was the Oceanic OC-118N, whose hardware was an exact clone, and which was using the original Commodore firmware – except that some data pins of the ROM were shuffled, so that reading the ROM would not immediately give away that it’s an exact copy.
The German Company “Westfalia Technica” sold an after-market enhanced version of the OC-118N with a parallel port and an enhanced ROM.
From the outside, the “Technica” looks just like an Oceanic device (OC-118N on top, Technica below):
The Technica has an added parallel cable though:
And the bottom of the device says “Westfalia Technica, Industriestr. 1, D-5800 Hagen, Best-Nr. 188193”:
The inside reveals a standard OC-118N board with a crudely added parallel port and an EPROM that says “Technica DOS Plus”:
These are the contents of the ROM, with the data lines unshuffled, the way the CPU sees it:
technica.bin (16 KB)
The ROM is based on the -05 version1 (short board 1541). Unlike most other clone ROMs, the code has not been obfuscated, but it has been improved and extended:
- The DOS supports the use of 41 tracks.
- Data transfer to the computer supports an optional parallel cable.
- The disk format code has been replaced by a faster version2.
- The new “
T” DOS command command toggles write protection on files.
- The GCR and sector read/write code has been optimized.
- The head is moving faster.
- Directory loading has been patched to return a start address of
- The device init and self test code has been simplified and shortened.
- The startup message has been changed to “
To fit the new features, the two patch areas ($C0xx and $FFxx) are used up completely, and the utility loader and the (relatively useless) “
C” (copy) command have been removed. A lot of code was replaced, shuffling around some chunks of the ROM.
This is a quite invasive change to the original binary, in comparison to Commodore’s own 1571: The official 1541 successor adds a lot of features but aims to be as compatible with the 1541 as possible. Its ROM is almost identical to the 1541 ROM, with improvements and new features added in the form of minimal JMP instructions into an additional 16 KB ROM. This way, practically all existing software, even code that calls directly into undocumented ROM locations – even now dead code, will continue to work. The Technica, on the other hand, might have trouble with some software. A quick test showed that GEOS works, for example3.
Since the OC-118N has the same hardware as the 1541, it is possible to use this ROM with a 1541/1541-II4 as well – or with a C64 emulator.
The ROM seems genuinely useful. Retroport has low-res scans of the German users manual. Here is a slightly improved PDF version:
technica.pdf (685 KB)
The last two pages describe the new DOS features. The manual seems to be for a later version of the ROM, because some of the features described there are not supported by this binary (
V- to enable/disable write verify,
F: lock/unlock a file,
A: hide/unhide a file), but it describes the syntax of formatting a disk with more than 35 tracks:
The manual states that 41 track disks are compatible with “TurboTrans” and “TurboDOS”.
Thanks to @dec_hl for providing the photos and the ROM image.
So, like all versions before 251968-02 (the first 1541C update), it has the SAVE-AT bug.↩
$4B $01 $01 $01 ...pattern, which is considered a 1541 bug, is emulated by the new formatting code.↩
Using it with a 1541C will disable track 0 detection.↩