| |
Krill
Registered: Apr 2002 Posts: 2982 |
Release id #189130 : Krill's Loader, Repository Version 184
I've seen the installer print "WARNING: Buggy 1541U firmware detected. Please update." in a demo compo.
Now, i was planning to remove the workarounds for compatibility with older 1541U firmware versions in future releases of this loader.
I was under the impression that the relevant fixes have been backported to old 1541U1 firmware (they shouldn't really require any more FPGA resources)... But have they, really? =) |
|
| |
Count Zero
Registered: Jan 2003 Posts: 1940 |
So this gets answered:
tried the testloader from the archive with 1541U1 and firmwares 1.72beta (WVL) and 2.6d from https://www.obliterator918.com/1541-ultimate-firmware/ dating 2013.
Both show the failure.
Anybody aware of more recent U1 versions to try? |
| |
tlr
Registered: Sep 2003 Posts: 1791 |
Out of curiosity, which incompatibilities do you need to add workarounds for in this case? |
| |
Krill
Registered: Apr 2002 Posts: 2982 |
Most importantly, ANC #imm and ARR #imm weren't (aren't) emulated correctly.
Could make do without the former, but for the latter, need to dynamically modify some very timing-critical drive-side code on initialisation.
Additionally, the behaviour of VIA1 port A ($1801) set to output wasn't (isn't) emulated correctly.
This is only used in the ATN responder running on secondary (passive) drives (allowing usage of the 2bit+ATN protocol with more than one drive on the bus), for quicker response and less interference using JMP ($1800).
That code has a separate detection and dynamically chooses between this and a slower code path with traditional polling via BIT $1800 and branches.
From the installer code: sei
;ldy #$00
dey
sty $0300
sty $1803; set all port pins as outputs
lda #$a4; bit 0 may be forced to GND (1541-II) or connected to track 0 sensor (1541-C, normally 0 = not on track 0)
sta $1801
cmp $1801
bne is1541u
anc #$8a; and #imm, but no asl/rol, bit 7 of result goes to carry
beq is1541u
bcc is1541u
tya
arr #$7f; bit 6 of result goes to carry
ror $0300
is1541u: lda #$66; 1570/71 data directions
sta $1803
; no cli
rts |
| |
tlr
Registered: Sep 2003 Posts: 1791 |
Ah, very annoying that the CPU isn't up to par. |
| |
Krill
Registered: Apr 2002 Posts: 2982 |
Yes, took me a while to figure out what was going wrong on 1541U.
Luckily, 1541U2 inherited the U64 CPU core later (or at least relevant parts of it), and those tricky undocumented opcodes are far more common on C-64 than the drive. =)
But alas, 1541U1 seems to be officially at EOS now. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11391 |
but where are the testprograms? :) |
| |
tlr
Registered: Sep 2003 Posts: 1791 |
Quoting KrillYes, took me a while to figure out what was going wrong on 1541U.
Luckily, 1541U2 inherited the U64 CPU core later (or at least relevant parts of it), and those tricky undocumented opcodes are far more common on C-64 than the drive. =)
But alas, 1541U1 seems to be officially at EOS now.
Would be nice to have a compatibility matrix. I have a 1541U1 and a 1541U2 (not plus). It was a long time since I updated anything though as things have worked ok in practice.
I'm not sure if the full FPGA source for the U1 is available. It didn't use to be. Any takers for a patch? It would be a shame if the 1541U1 would start to become "useless". I've used that as standalone for various devices, eg. the c64dtv and the vic-20. |
| |
Krill
Registered: Apr 2002 Posts: 2982 |
Quoting Groepazbut where are the testprograms? :) This works fine on VICE and is most likely well covered by its test suite.
As for actual testing with 1541U, there is a test program in the archive at Krill's Loader, Repository Version 184 in /loader/build/loadertest-c64.d64.
This would print the message in the OP and report "1541U" as drive type. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11391 |
tlr: the 2.x firmware can be build (or at least: could) for U1, the source for that is available. It's a shame gideon doesnt bother to do it anymore, it shouldnt be hard or even complicated to do. |
| |
Peiselulli
Registered: Oct 2006 Posts: 81 |
I remember the 2.x firmware does not support stand alone mode. That is the reason I still use the 1.72beta. |
... 20 posts hidden. Click here to view all posts.... |
Previous - 1 | 2 | 3 - Next |