S-JIFFYDOS 1541
S-JIFFYDOS 1541 (SJD41) is a CBM 1541 floppy DOS operating-system, that works
in a 1541 in an eprom. It is a patch for JIFFYDOS 1541 (JD41). But don't be
afraid, nobody must renounce for the original JIFFYDOS; this instruction
describes, how you build CBM-, JIFFYDOS- und S-JIFFYDOS simultaneously
into all three versions of the 1541 (old, /c, /2). Because it's a patch for
JIFFYDOS 1541, the patch program doesn't work without this at all. It
uses the original JD IEC bus routines, so it works with all (only-CBM-) and
JIFFYDOS-computers and -speeder- cartridges. It reaches with all JD-
computers and -speeder-cartdriges the below spezified speeds, that means,
that you don't need SJD64 in your C64. SJD41 and SJD64 are absolutely
independent.
Here are the speeds of S-JIFFYDOS1541 (in compare to CBM1541 and to
JIFFYDOS1541):
CBM1541 JD1541 SJD1541
new/format 35 tracks 95,4 22,2 22,5
load 202 blocks (at gap) 127,2 13,2 8,7
(9,5) (6) (4+)
load 202 blocks at gap 9,5 127,2 20,7 14,7
save 154 blocks 105,3 43,4 21,0
scratch 202 blocks 24,9 14,9 4,3
scratch 664 blocks 144 files 361,7 260,3 17,9
validate 664 blocks 144 files 239,0 139,6 10,9
search the 144th file in dir 5,3 4,7 1,1
100 bytes IECOUT (& CBM-C64) 0,117 0,117 0,117
100 bytes IECOUT (& JD-C64) 0,146 0,0335 0,0335
100 bytes IECIN 0,204 0,0216 0,0216
- can use 40 tracks: first @"et+ (return), then @"n:dn,id (return)
(!news the disk!)
- @"el @"eu lock/unlock of files. Advantage to JD: You can use several
files by using jokers
- @"el:$ @"eu:$ lock/unlock of disk
- @"v validates GEOS disks correct
- @"vg- validates normal (GEOS disks wrong)
- @"sg+ scratches GEOS VLIR files correct
- @"nv- news a disk without verify
- @"e extended floppy status (+ is on, - ist off)
. 02,sj+ ic+ dt- mb- em- .tk.gp,35,00
. sj = S-JIFFYDOS on/off
. ic = IEC-BUS JD/CBM
. dt = allows/forbites the writing of files (not of the dir) onto the dir
track 18. Before using blocks on track 18, SJD allocates the dir blocks in the
BAM to be on the sure side. The dir can always be written onto track 18
(independent of DT). The advantige of DT is, that if a disk has not enough
free blocks to save a file on this disk, then you can write this file onto
the free sectors of track 18 (these are usually reserved for the dir and can't
be used of normal files). This is sometimes a possibility, to save the
last file on a disk. !There is the danger of loosing datas by using dir-
editors!
. mb = mechanical bump = hard-CBM- / allmoust soft SJD-bump
. em = execution of MB = MB allready / not yet made (only if MB-)
(MB and EM are for internal SJD41 routines. You needn't change here
anything)
. tk = 35/40 tracks
. gp = gap, interleave (00 means, that SJD41 uses the optimal gap)
./! = track automatically (depends on disk-ID) / fixed
Example:
- @"es+ switch on SJD mode
- @"ei- switch off JD-IEC-bus routines
- @"e+ default for ON
- @"e- default for OFF
- @"et automatical track recognition: recognizes a 40 track disk at " 4a" or
" 4<"
- @"et+ fixes 40 tracks
- @"et- fixes 35 tracks
- @"eh:dn,id changes disk-name and ID
- @"e changes the device number
- @"ec checks a disk for bad blocks
- @"eca+ check&allocate checks a disk for bad blocks and allocates them in
the BAM
- @"ec (number (1-41)) checks, starting with track
- special LOAD routine for PRGs, that are saved with the CBM gap 9,5
- special LOAD routine, that decodes from the GCR bytes to HD format, while
reading the bytes from the disk. Uses gap 4
- the area c000-dfff has (allmoust) all patches of the 1541/2 DOS, consequently
also the repair of the save&replace bug (At the 1541old only if both eproms are
changed)
- fast open uses gap 3 instead of 22
- the error channel prints the error numbers with three positions, if the
error number is greater than 99.
- fast reset without RAM and ROM test
- drive 1 (allmoust) never occupies an unneccesary buffer
- fast save: Because SJD41 must use the original routines of the C64, and
because at theese routines the IRQ isn't prevented, you schouldn't press
any key during the save. Otherwise the IRQ of the C64 would be longer than the
1541 thinks and the save would be a little bit slower. Fast save verifies
the written blocks, that means the speed isn't at cost of the data-
security.
- fast-scratch und -validate makes the checksum while reading the bytes from
the disk
- if you change only one eprom at the 1541old, then you don't have check,
fast-lock/unlock, -scratch, -validate and -save and the 1541/2 bug-patches
- SJD uses the area 8000-ffff (At the 1541/c and /2 always; at the 1541old
only if both eproms are changed (1541old and only one changed eprom:
a000-ffff))
- SJD41 has the same IEC bus routines as JD41, that means it schould work
with all CMD-computers and -speeder-cartridges
For the files, which you must burn into the eprom, you need two formated disks,
which I call "interimsfiles" and "burnfiles". Attention, the generated
files contain original JIFFYDOS routines, they have the copyright of
CMD and you must not give them to others; everybody who wants SJD, must
before buy JD himself, and this must be for the 1541. Additionally it is not
allowed to sell the JD eproms or to build them into a different 1541 after
you have built in the SJD eproms.
First you put in the disk "interimsfiles" and start
"1.sj/e0&cbm/c0-generator". This programm reads JD41 from a floppy and
saves two interims files on the disk. Those who have no JIFFYDOS 1541, cannot
use the programm. Then you start "2.cbm/e0-generat" and "3.sjd/e0-gene...",
which generate further interims files. At the end you must copy the two files
"(c)cmd/s80-9/..." and "(c)cmd/sa0-b/..." from the starting-
disk to the interims-disk. Then this disk must contain the following files:
(c)cmd/j/e0-ff
(c)cmd/c/c0-df
(c)cmd/c/e0-ff
(c)cmd/se0-f/...
(c)cmd/s80-9/...
(c)cmd/sa0-b/...
Every file must have 33 blocks.
Now you must generate the final burnfiles for the eproms with the
program "ep-gen/41...". The destination-disk is the
"burnfiles"-disk. 41old is for the 1541old, which you can recognize that
the power supply is in the floppy and the DOS is in two 24 pin ICs. 41c&2 is
for the 1541c (power suply in the floppy, but DOS in one 28 pin IC) and
1541/2 (external power supply).
You can see in the file "eproms" which eprom type you must use for which
floppy subtype. At the 1541c and /2 the whole DOS is in one ROM, that means you
must change here always only one eprom. At the 1541old the DOS is in two roms.
Here you can choice, whether you want to change only one eprom (UB4) or two
eproms (UB4 and UB3). If you change only one eprom, you must renounce of
check, fast-(un)lock, -scratch, -validate and -save.
Here a short general view:
1541type: old old c /2
place: UB3 UB4 UA2 U4
epromtype: 27c128 27c512 27c512 27c512
24->28pol adaptersocle necessary?
yes yes no no
74hc04-inverter necessary?
no no yes no
single/double tumbler-switch w. middle-
position? no-one 1* 2* 2*
pins, which you must bend off and
connect with 10kOhm pullup-resistor and
with switch:---- P1A15 P1A15 P1A15
---- P27A14 P27A14 P27A14
pin, which you must bend off and
connect with pin24 A14 of the 6502
P26A13 P26A13 ---- ----
pin, which you must bend off and
connect inverted with P25 A15 of the
6502: ---- ---- P22=OE ----
number of off-bended pins:
1 3 3 2
1541type: old old c /2
An exact wire-scheme shows the file "pic/ep/41...".
You must not give the burnfiles to others, too.
Next you must burn the eproms corresponding the instructions of your
eprommer. At 64 kB eproms (27c512) the ending 00 means the area $0000 - $7fff
and 80 the area $8000 - $ffff.
After this you must build off the roms and build in the eproms. And now a
warning: I have tested SJD, but I don't give any warranty on SJD, errors or
destruction of hardware. The use of SJD is to 100% to your own risk.
Of course the 1541 and all other devices must be switched off and put
off from the electricity during rebuilding it.
The eproms and the chips of the C64 are extremly sensible to electrostatic
currency, they get destroyed. You must always pay attention to eliminate it,
f.e. by touching grounded metall things like heating pipes.
First you must remove the old rom. If it is in a socle, then you easily pull
it out. To support this you can put a screw driver cautiously between chip
and socle and turn it without destroying copper lines of the
mainboard. If the rom is soldered to the board then it's very difficult. You
have theese possibilities:
- You give the C64 to a shop where TV sets are repaired and ask whether they
solder the chip out. But you have also no 100% garantee, that the mainboard
isn't destroyed.
- You solder it out yourself with a special pump. This is extremly
difficult and if only one of the 24 or 28 pins isn't completely free the
copper main from the mainboard tears off when your pull out the rom and your
1541 is electronic scrap. You should only dare it if your are a solder
professional.
- You don't need the original CBM rom afterwards. You can cut off all pins
and then solder out every pin seperately. You should cut off the pins
with a sharp scissor and with a big distance from the mainboard to avoid
that the scissor destroys a copper main. On the other hand if you cut the
pins off with a small distance from the chip, the pins afterwards still come a
little bit out of the chip, so you can solder the chip on a socle and use it
as reserve.
Now dont't solder the eprom onto the mainboard but solder first an IC socle.
The installation of the eprom into the 1541 is described for every 1541 type
separately:
- 1541/2: Here is the installatuion very easy. You must bend off Pin 1
(adress bit 15) and pin 27 (A14) of the 64 kB 27c512 eprom so far, that the
pins have no more contact with the 1541 mainboard-socle; see general view above
and "pic/epr/41c&2"-file. You must connect every of theese two pins first
with a 10 kOhm resistor, whose other end goes to +5V (best is pin 28 of the
eprom) and secondly to a wire, which goes to the inner pin of a tumbler
switch double-change with middle position. A double-tumbler-switch has
six contacts, which I name LT, LM, LB, RT, RM and RB for left/right and
top/middle/bottom. The cable from pin 1 must go to RM and that from pin 27 to
LM. You must connect LT and RB with 0V (best is pin 14 of the eprom). You must
connect a wire directly from LB to pin 24 (A14) of the microprocessor 6502. RT
is unconnected. You must put the this-way-prepaired eprom into IC-socle U4.
You must pay attention, that the two off-bended pins don't get any contact
to the socle.
- 1541/c: Here you must first make the same steps as at the 1541/2 with the
result that pin 1 and 27 of the 64 kB 27c512 eprom is bend off and connected
with the pullup-resistors and the switch. Because at the 1541/c there is
no chip-select from the 1541-mainboard to the eprom (UA2) at the area $8000 -
bfff, you must generate
it with this additional circuit: You need a 74hc04 inverter chip. First it
needs currency: The easiest way is that you connect pin 14 of the inverter with
pin 28 of the eprom (5V) and pin 7 of the inverter with pin 14 of the eprom
(0V). You connect the unused inputs (pin 1, 3, 8, 10, 12) also with 5V, so
they don't swing. Now you solder a wire directly to pin 25 (A15) of the 6502,
which you connect with the input-pin 5 of the 75hc04. Then you connect the
output-pin 6 of the hc04 with the additionally bend-off pin 22 (output-
enable) of the eprom. You wrap up the inverter-IC with insulating-tape an
simply put it on the mainboard. You must put the this-way-prepaired eprom
into IC-socle UA2. You must pay attention, that the three off-bended
pins don't get any contact to the socle.
- 1541old: Here the DOS is in two 24 pin 8 kB roms. Because all eproms have
28 pins, you always need one or two adapter-socles. If you want to build
the adapter socle yourself, you need a 28 pin IC-socle, a platine with one
side with copper with 1.2" to 1.6" (3 x 4 cm) edge length and two 12 pin small
pinstrips. The layout is in "pic/epr/41old/..", but attention you
must put it sidechanged onto the copper side of the platine. Best is if you rub
the wholes for the socle and for the strips from a symbolfoil onto the
copper and connect them correctly (sides changed) with accid constant
pencil. This way the platine comes into the acid (Fe2O3). Then you must clean
it thoroughly an test it for short circuits or copper interruptions. Then
you must drill the holes and put in the socle from the non copper side and the
pinstrips from the copper side, solder them and test again short circuits and
interruptions. This adapter socle comes into the socle from the 1541 mainboard
and in it comes the eprom, but think that one or three pins must be bend
off.
Further you can decide, whether you want to change one or both eproms: If
you change only UB4, then you have fast-load, -open, 40 tracks and the
"E"-orders. If you change also UB3 then you gain check, fast-(un)lock,
-scratch, -validate and -save and the CBM bug-repairs of the save&replace-
bug.
First the installation of the 64 kB 27c512 eprom UB4: You must bend off pin
1 (A15) and pin 27 (A14) of the 64 kB 27c512 eprom so far, that the pins have
no more contact with the 1541 mainboard-socle; see general view above
and "pic/epr/41old"-file. You must connect every of theese two pins first
with a 10 kOhm resistor, which other end goes to +5V (best is pin 28 of the
eproms) and secondly to a wire, which goes to one of the two outer pins of a
tumbler switch single-change with middle position. You must connect the
middle pin of the tumbler switch with 0V (best is pin 14 of the eprom). You
must bend off pin 26 (A13) of the eprom and connect it with a wire directly
with pin 24 (A14) of the microprocessor 6502.
Now the installation of the 16 kB 27c128 eprom UB3: Here you must only
bend off pin 26 (A13) of the eprom and connect it with pin 24 (A14) of the
6502 in the same way as the UB4 eprom. You must put the this-way-prepaired
eproms into IC-socles UB4 and UB3. You must pay attention, that the off-bended
pins don't get any contact to the socle.
When you have pushed the eprom(s) into the socles, then you can switch on the
1541. A few seconds after on-switching, the LED and the motor must go off. If
not, switch off at once and check everything, especially whether a pin is
unintentionally not in the socle or a pin is brocken, but pay attention to
the electrostatic currency.
The installation is a little bit difficult, but should work if you
follow the instructions step by step (if you understand my english at all),
even if you don't understand exactly why you must do this step. But if you
have validated a full disk in eleven seconds, you know that it's worth-
while.
If you have any question, then ask me at once.
Near Letter Quantity
Jochen Adler
Haeldestr. 9
D-74912 Kirchardt
NLQ@gmx.de
Home