The Commodore 1541 Floppy Drive (AKA VIC-1541 / AKA CBM 1541) is a single sided, 5 1/4" floppy disc drive released for use with the Commodore 64 which followed in the footsteps of the 1540 released for the VIC-20.
The 1541 Floppy Drive did not have a sector hole sensor and so was 'soft sectored'. This meant that it was easy for users to cut out a small, square hole on the other edge of a floppy disc to allow both sides to be used. Many cheap, third party 'disc double-siders' (basically a square hold punch that aligned with the disc edge) were released for doing just this.
Each disc side technically had 170kBytes of capacity but the onboard operating system, 'CBM DOS 2.6', needed to allocate a small share for itself. The 170kByte capacity is broken down into 683 sectors on 35 tracks with each of the sectors holding 256Bytes.
CBM DOS 2.6 used a BAM ('Block Allocation Map') and one track was used for that. On top of that, out of each physical sector two Bytes were set aside as a 'block pointer' to point to the next physical track and sector. So in actual fact, a logical block of 256Bytes only held 254. This meant that after formatting almost 165kBytes out of the initial 170kBytes was available for use.
The drive was noisy, slow and with its internal power supply ran hot but is sure beat waited for tapes to load.
There are two main versions of the 1541 Floppy Drive
and both are easy to spot. The first has a drive mechanism made by 'ALPS
Electric Co. LTD.' and can be identified by the push in, spring loaded
*The unit below is an ALPS Electric Co. LTD. model which can be easily confirmed by their stamping seen in image sixteen. It's worth noting that while the drive is stamped 'Made in Hong Kong', the PCB was made in Japan.
**See separate page on this site for details on this version.
LOAD"$",8 (loads the directory of the disc to BASIC
RAM and displays it on screen)
In these examples ,8 states which device to use and ,1 indicates that the program should not be loaded into BASIC RAM but to the memory address specified by the program's header. The 1 usually indicates a machine code / machine language program.
Changing Drive Number on the Hardware
This was done most commonly to allow more than one
drive to be chained to the same Commodore 64.
|Unit pictured has been sold and its location is unknown.|