Th. Tempelmann format

From Software Archive
Revision as of 14:28, 15 September 2020 by Enigma (talk | contribs) (Created page with "As found on Wörter Rennen mit System There are 4 sector in regular format on the disk: 18 / 0 18 / 1 18 / 8 18 / 11 The rest of the tracks were written in speed 0. Eac...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

As found on Wörter Rennen mit System

There are 4 sector in regular format on the disk: 18 / 0 18 / 1 18 / 8 18 / 11

The rest of the tracks were written in speed 0. Each of these track contains a single additional regular sector header that was written with speed 3.

The first file is linked to sector 18 / 8 that loads auto start code to the C64 from $02d1 to $03cb. Execution entry point is at $0334.

.C:0334  A9 0B       LDA #$0B
.C:0336  20 B0 03    JSR $03B0
.C:0339  A9 2D       LDA #$2D  // "-" -> Send Memory Execute at $07b0 to floppy
.C:033b  20 A8 FF    JSR $FFA8 // Output byte to serial
.C:033e  A9 45       LDA #$45  // "E"
.C:0340  20 A8 FF    JSR $FFA8 // Output byte to serial
.C:0343  A9 B0       LDA #$B0  // Address $07b0
.C:0345  20 A8 FF    JSR $FFA8 // Output byte to serial
.C:0348  A9 07       LDA #$07  //
.C:034a  20 A8 FF    JSR $FFA8 // Output byte to serial
.C:034d  20 FE ED    JSR $EDFE  // Send UNLISTEN
.C:0350  A2 FF       LDX #$FF
.C:0352  AD 00 DD    LDA $DD00
.C:0355  A0 10       LDY #$10
.C:0357  CA          DEX
.C:0358  D0 FD       BNE $0357
.C:035a  88          DEY
.C:035b  D0 FA       BNE $0357
.C:035d  A9 03       LDA #$03
.C:035f  8D 00 DD    STA $DD00
.C:0362  AD 00 DD    LDA $DD00
.C:0365  CD 00 DD    CMP $DD00
.C:0368  F0 FB       BEQ $0365
.C:036a  20 80 03    JSR $0380
.C:036d  85 D1       STA $D1
.C:036f  20 80 03    JSR $0380
.C:0372  85 D2       STA $D2
.C:0374  A0 00       LDY #$00
.C:0376  20 80 03    JSR $0380
.C:0379  91 D1       STA ($D1),Y
.C:037b  88          DEY
.C:037c  D0 F8       BNE $0376
.C:037e  F0 EA       BEQ $036A
.C:0380  78          SEI
.C:0381  A9 27       LDA #$27
.C:0383  8D 00 DD    STA $DD00
.C:0386  2C 00 DD    BIT $DD00
.C:0389  50 FB       BVC $0386
.C:038b  A9 03       LDA #$03
.C:038d  8D 00 DD    STA $DD00
.C:0390  A2 08       LDX #$08
.C:0392  CA          DEX
.C:0393  D0 FD       BNE $0392
.C:0395  A2 04       LDX #$04
.C:0397  AD 00 DD    LDA $DD00
.C:039a  0A          ASL A
.C:039b  08          PHP
.C:039c  0A          ASL A
.C:039d  26 2D       ROL $2D
.C:039f  28          PLP
.C:03a0  26 2D       ROL $2D
.C:03a2  CA          DEX
.C:03a3  D0 F2       BNE $0397
.C:03a5  A9 17       LDA #$17
.C:03a7  8D 00 DD    STA $DD00
.C:03aa  EA          NOP
.C:03ab  EA          NOP
.C:03ac  EA          NOP
.C:03ad  A5 2D       LDA $2D
.C:03af  60          RTS
.C:03b0  8D 11 D0    STA $D011
.C:03b3  A9 08       LDA #$08
.C:03b5  20 0C ED    JSR $ED0C
.C:03b8  A9 6F       LDA #$6F
.C:03ba  20 B9 ED    JSR $EDB9
.C:03bd  A9 4D       LDA #$4D
.C:03bf  4C A8 FF    JMP $FFA8
.C:03c2  4C FE ED    JMP $EDFE

The floppy has loaded automatically previously t18 s0 to the buffer at $0700. Aside from the disk title the sector also contains code at $0700 and $07b0.

.8:0700  A5 04       LDA $04
.8:0702  C9 E2       CMP #$E2
.8:0704  F0 27       BEQ $072D
.8:0706  20 56 F5    JSR $F556
.8:0709  50 FE       BVC $0709
.8:070b  B8          CLV
.8:070c  AD 01 1C    LDA $1C01
.8:070f  C9 6A       CMP #$6A
.8:0711  D0 F3       BNE $0706
.8:0713  A2 64       LDX #$64
.8:0715  50 FE       BVC $0715
.8:0717  B8          CLV
.8:0718  AD 01 1C    LDA $1C01
.8:071b  95 00       STA $00,X
.8:071d  E8          INX
.8:071e  D0 F5       BNE $0715
.8:0720  55 64       EOR $64,X
.8:0722  E8          INX
.8:0723  E0 9C       CPX #$9C
.8:0725  D0 F9       BNE $0720
.8:0727  EA          NOP
.8:0728  29 7F       AND #$7F
.8:072a  4C 69 F9    JMP $F969
.8:072d  4C CA F6    JMP $F6CA

.. disk title data

.8:07b0  A9 02       LDA #$02    <- The C64 does start execution in the floppy here
.8:07b2  8D 78 02    STA $0278
.8:07b5  A9 2A       LDA #$2A
.8:07b7  8D 00 02    STA $0200
.8:07ba  A9 01       LDA #$01
.8:07bc  8D 74 02    STA $0274
.8:07bf  A9 00       LDA #$00
.8:07c1  85 7E       STA $7E
.8:07c3  4C AB E7    JMP $E7AB
.8:07c6  20 56 F5    JSR $F556
.8:07c9  50 FE       BVC $07C9
.8:07cb  B8          CLV
.8:07cc  AD 01 1C    LDA $1C01
.8:07cf  C9 73       CMP #$73
.8:07d1  D0 F3       BNE $07C6
.8:07d3  50 FE       BVC $07D3
.8:07d5  B8          CLV
.8:07d6  AD 01 1C    LDA $1C01
.8:07d9  50 FE       BVC $07D9
.8:07db  B8          CLV
.8:07dc  AC 01 1C    LDY $1C01
.8:07df  B9 00 01    LDA $0100,Y
.8:07e2  C5 31       CMP $31
.8:07e4  D0 E0       BNE $07C6
.8:07e6  20 03 06    JSR $0603
.8:07e9  E8          INX
.8:07ea  D0 DA       BNE $07C6
.8:07ec  A5 31       LDA $31
.8:07ee  69 02       ADC #$02
.8:07f0  29 0F       AND #$0F
.8:07f2  85 31       STA $31
.8:07f4  60          RTS
.8:07f5  A5 22       LDA $22
.8:07f7  C9 03       CMP #$03
.8:07f9  D0 94       BNE $078F
.8:07fb  09 20       ORA #$20
.8:07fd  85 22       STA $22
.8:07ff  60          RTS