jiffydos.a65

     1:  
     2:  ; These are not used nor really defined,
     3:  ; but the values are still in the ROM as JD
     4:  ; has just been patched in.
     5:  ; So, we define it to make the assembler + linker
     6:  ; happy.
     7:  
     8:  TapeIrqRead=$F92C
     9:  TapeIrqWrite=$FBCD
    10:  TapeIrqWritePreamble=$FC6A
    11:  
    12:  
    13:  JDLF72C:
    14:          ldy     #$0C
    15:          jsr     zCHRGOT
    16:  JDLF731:
    17:          cmp     JDLF7DD,y
    18:          beq     JDLF739
    19:          dey
    20:          bpl     JDLF731
    21:  JDLF739:
    22:          rts
    23:  JDLF73A:
    24:          jsr     kSETLFS
    25:  JDLF73D:
    26:          clc
    27:          php
    28:          ldx     zFSBLK
    29:          cpx     #$08
    30:          bcc     JDLF749
    31:  JDLF745:
    32:          cpx     #$1F
    33:          bcc     JDLF750
    34:  JDLF749:
    35:          plp
    36:          bcs     JDLF761
    37:          sec
    38:          php
    39:          ldx     #$08
    40:  JDLF750:
    41:          stx     zFSBLK
    42:          jsr     LF2D9
    43:          bcc     JDLF75A
    44:          inx
    45:          bne     JDLF745
    46:  JDLF75A:
    47:          pla
    48:  JDLF75B:
    49:          rts
    50:  
    51:  JDLF75C:
    52:          jsr     LF2DB
    53:          bcc     JDLF75B
    54:  JDLF761:
    55:          ldx     #$05
    56:  JDLF763:
    57:          cpx     #$0B
    58:          beq     JDLF76A
    59:  JDLF767:
    60:          jmp     PatchErrorOut
    61:  JDLF76A:
    62:          jsr     JDLF72C
    63:          bne     JDLF767
    64:          sty     $27
    65:          tax
    66:          bmi     JDLF776
    67:          pla
    68:          pla
    69:  JDLF776:
    70:          jsr     JDLF73D
    71:          jsr     JDLF838
    72:          lda     $27
    73:          ldy     #$00
    74:          asl     a
    75:          tax
    76:          lda     JDLF7F5,x
    77:          sta     $55
    78:          lda     JDLF7F6,x
    79:          sta     $56
    80:  JDLF78C:
    81:          jsr     zJMPER
    82:          jsr     bDATA
    83:          jsr     LF2CC
    84:          lda     zPTR2
    85:          jsr     kCLOSE
    86:  JDLF79A:
    87:          jsr     kCLRCHN
    88:          ldx     $13
    89:          beq     JDLF75B
    90:          .byte   $2C
    91:  JDLF7A2:
    92:          ldx     #$6F
    93:          jmp     kCHKOUT
    94:          tya
    95:          iny
    96:          bit     $98C8
    97:          sty     zSA
    98:          ldx     zTXTTAB
    99:          ldy     $2C
   100:          jsr     kLOAD
   101:          bcc     JDLF7C0
   102:          jmp     bBIOERR
   103:  JDLF7BA:
   104:          jmp     ChkStatus
   105:  JDLF7BD:
   106:          jmp     JDLE17E
   107:  JDLF7C0:
   108:          lda     $27
   109:          cmp     #$0B
   110:          beq     JDLF7BD
   111:          bcs     JDLF78C
   112:          cmp     #$08
   113:          beq     JDLF75B
   114:          bcc     JDLF7BA
   115:          stx     zVARTAB
   116:          sty     $2E
   117:          pla
   118:          pla
   119:          jsr     bCRDO
   120:          jsr     bLINKPRG
   121:          jmp     bRUN
   122:  JDLF7DD:
   123:          rti
   124:          .byte   $5F
   125:          rol     a
   126:          ldy     $1222
   127:          .byte   $2F
   128:          lda     $5E25
   129:          ldx     $5C27
   130:          .byte   $44
   131:          jmp     $2354
   132:          .byte   $42
   133:          lsr     $4F
   134:          bvc     JDLF844
   135:          cli
   136:          .byte   $47
   137:  JDLF7F5:
   138:          .byte   $33
   139:  JDLF7F6:
   140:          sbc     $59,x
   141:          sbc     (zCURLIN,x)
   142:          .byte   $FA
   143:          and     $2BFA,y
   144:          .byte   $F7
   145:          .byte   $2B
   146:          .byte   $F7
   147:          .byte   $AB
   148:          .byte   $F7
   149:          .byte   $AB
   150:          .byte   $F7
   151:          .byte   $A7
   152:          .byte   $F7
   153:          .byte   $AB
   154:          .byte   $F7
   155:          .byte   $AB
   156:          .byte   $F7
   157:          tax
   158:          .byte   $F7
   159:          .byte   $A7
   160:          .byte   $F7
   161:          adc     #$F5
   162:          .byte   $D4
   163:          sed
   164:          rti
   165:          sbc     $F1,x
   166:          sbc     ($2C),y
   167:          sbc     JDLE4C2,y
   168:          and     $F8
   169:          .byte   $97
   170:          .byte   $FA
   171:          ldy     $A0FC,x
   172:          .byte   $FC
   173:          bit     zROBUF
   174:          iny
   175:          tya
   176:          sta     (zTXTTAB),y
   177:          jsr     bLINKPRG
   178:          txa
   179:          adc     #$02
   180:          tax
   181:          lda     $23
   182:          adc     #$00
   183:          tay
   184:          jmp     JDLE1A7
   185:  JDLF838:
   186:          tya
   187:          bne     JDLF853
   188:          sta     zFNLEN
   189:          jsr     zCHRGET
   190:          beq     JDLF887
   191:          ldy     #$17
   192:  JDLF844:
   193:          jsr     JDLF731
   194:          bne     JDLF858
   195:          cpy     #$0D
   196:          bcc     JDLF858
   197:          sty     $27
   198:          cpy     #$10
   199:          bcs     JDLF887
   200:  JDLF853:
   201:          lda     #$01
   202:          jsr     JDLA8FC
   203:  JDLF858:
   204:          ldy     #$FF
   205:  JDLF85A:
   206:          iny
   207:          lda     (zTXTPTR),y
   208:          beq     JDLF867
   209:          cmp     #$22
   210:          beq     JDLF872
   211:          cmp     #$3A
   212:          bne     JDLF85A
   213:  JDLF867:
   214:          bit     zNSGFLG
   215:          bpl     JDLF875
   216:          clc
   217:          jsr     LAEBD
   218:          jmp     JDLF878
   219:  JDLF872:
   220:          jsr     LA8FB
   221:  JDLF875:
   222:          jsr     bFRMEVL
   223:  JDLF878:
   224:          jsr     JDLE25A
   225:          jsr     zCHRGOT
   226:          cmp     #$2C
   227:          bne     JDLF887
   228:          jsr     bGTBYTC
   229:  JDLF885:
   230:          stx     zFA
   231:  JDLF887:
   232:          ldy     #$00
   233:          bit     zNSGFLG
   234:          bpl     JDLF89A
   235:  JDLF88D:
   236:          lda     (zPNT),y
   237:          cmp     #$20
   238:          beq     JDLF89A
   239:          lda     #$0D
   240:          jsr     CHROUT_SCREEN
   241:          bne     JDLF88D
   242:  JDLF89A:
   243:          jsr     JDLF75C
   244:          lda     #$FF
   245:          jsr     LB475
   246:          lda     zFNLEN
   247:          ldx     zFNADR
   248:          ldy     $BC
   249:          jsr     JDLB4C7
   250:          jsr     bFRESTR
   251:          stx     zFNADR
   252:          sty     $BC
   253:  JDLF8B2:
   254:          jsr     LF2CF
   255:          lda     zFNLEN
   256:          ldx     #$00
   257:          stx     zFNLEN
   258:          ldx     #$6F
   259:          bne     JDLF8C3
   260:  JDLF8BF:
   261:          ldx     #$6E
   262:  JDLF8C1:
   263:          lda     zFNLEN
   264:  JDLF8C3:
   265:          stx     zSA
   266:          stx     zPTR2
   267:  JDLF8C7:
   268:          pha
   269:          stx     zLA
   270:          jsr     kCLRCHN
   271:          jsr     kOPEN
   272:          pla
   273:          sta     zFNLEN
   274:  JDLF8D3:
   275:          rts
   276:          jsr     JDLF1E8
   277:          bne     JDLF8D3
   278:          ldx     #$00
   279:          ldy     #$22
   280:          jsr     JDLF8E4
   281:          ldy     #$05
   282:          ldx     #$22
   283:  JDLF8E4:
   284:          jsr     JDLF0F4
   285:          jmp     kCLRCHN
   286:  JDLF8EA:
   287:          sta     CIA2
   288:          and     #$08
   289:          beq     JDLF910
   290:          lda     zBSOUR
   291:          ror     a
   292:          ror     a
   293:          cpx     #$02
   294:          bne     JDLF910
   295:          ldx     #$1E
   296:  JDLF8FB:
   297:          bit     CIA2
   298:          bpl     JDLF905
   299:          dex
   300:          bne     JDLF8FB
   301:          beq     JDLF90E
   302:  JDLF905:
   303:          bit     CIA2
   304:          bpl     JDLF905
   305:          ora     #$40
   306:          sta     zTSFCNT
   307:  JDLF90E:
   308:          ldx     #$02
   309:  JDLF910:
   310:          rts
   311:  JDLF911:
   312:          ldy     #$00
   313:          jsr     JDLF0E2
   314:  JDLF916:
   315:          jsr     JDLFCA9
   316:          bvs     JDLF91D
   317:          bcc     JDLF916
   318:  JDLF91D:
   319:          sty     zFNLEN
   320:          lda     zSTATUS
   321:          and     #$82
   322:          rts
   323:          jsr     bGTBYTC
   324:          txa
   325:          ldx     #$2D
   326:          bne     JDLF930
   327:  JDLF92C:
   328:          lda     #$85
   329:          ldx     #$27
   330:  JDLF930:
   331:          ldy     #$06
   332:  JDLF932:
   333:          pha
   334:          jsr     JDLF0F4
   335:          pla
   336:          jmp     kCHROUT
   337:  JDLF93A:
   338:          ldx     #$00
   339:          .byte   $2C
   340:  JDLF93D:
   341:          ldx     #$06
   342:          jsr     bSTXPT
   343:          ldy     #$05
   344:          lda     (zTXTPTR),y
   345:          cmp     #$12
   346:          bne     JDLF9B0
   347:          pla
   348:          txa
   349:          pha
   350:          ldy     #$23
   351:  JDLF94F:
   352:          ldx     #$22
   353:          jsr     JDLA917
   354:          dey
   355:          jsr     LA8FB
   356:          pla
   357:          pha
   358:          beq     JDLF96C
   359:          sta     zPNTR
   360:          ldy     #$01
   361:  JDLF960:
   362:          iny
   363:          jsr     JDLF16A
   364:          cmp     (zTXTPTR),y
   365:          bne     JDLF977
   366:          sbc     #$22
   367:          bne     JDLF960
   368:  JDLF96C:
   369:          tay
   370:          lda     (zTXTPTR),y
   371:          eor     #$0A
   372:          sta     (zTXTPTR),y
   373:          ldy     #$04
   374:          sta     (zPNT),y
   375:  JDLF977:
   376:          jsr     bDATA
   377:          ldy     #$05
   378:          sec
   379:          lda     (zTXTPTR),y
   380:          sbc     #$42
   381:          bne     JDLF94F
   382:          ldy     #$02
   383:          sta     (zTXTPTR),y
   384:          pla
   385:          beq     JDLF98D
   386:          lda     #$8D
   387:          rts
   388:  JDLF98D:
   389:          jmp     LA6A4
   390:  JDLF990:
   391:          bit     zNSGFLG
   392:          bpl     JDLF9B0
   393:          tsx
   394:          ldy     $0107,x
   395:          cpy     #$E1
   396:          bne     JDLF9B0
   397:          cmp     #$04
   398:          bne     JDLF9B2
   399:          inc     zFSBLK
   400:          jsr     JDLF73D
   401:          lda     #$00
   402:          jsr     LBDCD
   403:          jsr     bCRDO
   404:          jsr     JDLF79A
   405:  JDLF9B0:
   406:          pla
   407:          rts
   408:  JDLF9B2:
   409:          cmp     #$01
   410:          beq     JDLF93A
   411:          cmp     #$17
   412:          beq     JDLF93D
   413:          ldy     zPRTY
   414:          bne     JDLF9B0
   415:          cmp     #$8D
   416:          bcs     JDLF9B0
   417:          cmp     #$85
   418:          bcc     JDLF9B0
   419:          pla
   420:          sbc     #$85
   421:          tax
   422:          beq     JDLF9D5
   423:  JDLF9CC:
   424:          iny
   425:          lda     (zCMPO),y
   426:          bne     JDLF9CC
   427:          dex
   428:          bne     JDLF9CC
   429:  JDLF9D4:
   430:          iny
   431:  JDLF9D5:
   432:          lda     (zCMPO),y
   433:          beq     JDLF9E2
   434:          cmp     #$0D
   435:          beq     JDLF9E4
   436:          jsr     CHROUT_SCREEN
   437:          bne     JDLF9D4
   438:  JDLF9E2:
   439:          sta     zQTSW
   440:  JDLF9E4:
   441:          rts
   442:  JDLF9E5:
   443:          jsr     GETIN_KEYB
   444:          pha
   445:          ldx     zQTSW
   446:          bne     JDLFA37
   447:          ldx     zINSRT
   448:          bne     JDLFA37
   449:          cmp     #$10
   450:          bne     JDLF990
   451:          lda     #$04
   452:          jsr     kLISTEN
   453:          lda     VIC + VICII_O_MemControl
   454:          and     #$02
   455:          beq     JDLFA03
   456:          lda     #$07
   457:  JDLFA03:
   458:          ora     #$60
   459:          jsr     kSECOND
   460:          lda     zPNTR
   461:          pha
   462:          lda     zTBLX
   463:          pha
   464:  JDLFA0E:
   465:          ldy     #$00
   466:          sty     zQTSW
   467:          jsr     JDLE50C
   468:          inc     zLNMX
   469:  JDLFA17:
   470:          jsr     JDLF16A
   471:          jsr     iCIOUT
   472:          cmp     #$0D
   473:          bne     JDLFA17
   474:          inx
   475:          cpx     #$19
   476:          bcs     JDLFA2D
   477:          asl     zLNMX
   478:          bpl     JDLFA0E
   479:          inx
   480:          bne     JDLFA0E
   481:  JDLFA2D:
   482:          jsr     kUNLSN
   483:          pla
   484:          tax
   485:          pla
   486:          tay
   487:          jsr     JDLE50C
   488:  JDLFA37:
   489:          pla
   490:  JDLFA38:
   491:          rts
   492:          sty     zRESHO
   493:          jsr     JDLF1E8
   494:          bne     JDLFA38
   495:          jsr     zCHRGOT
   496:          cmp     #$52
   497:          bne     JDLFA5A
   498:  JDLFA47:
   499:          dec     zRESHO
   500:          lda     zRESHO
   501:          jsr     LF66B
   502:          jsr     JDLE4C6
   503:          beq     JDLFA47
   504:          lda     #$00
   505:          jsr     LF66B
   506:          lda     #$4C
   507:  JDLFA5A:
   508:          pha
   509:          ldx     zMYCH
   510:          cpx     zFA
   511:          beq     JDLFA37
   512:          jsr     JDLF885
   513:          ldx     #$37
   514:          ldy     #$02
   515:          jsr     JDLF0F4
   516:          jsr     OutputFilename
   517:          lda     #$2C
   518:          sta     (zFNADR),y
   519:          iny
   520:          pla
   521:          sta     (zFNADR),y
   522:          iny
   523:          lda     #$2C
   524:          sta     (zFNADR),y
   525:          iny
   526:          lda     zRESHO
   527:          pha
   528:          bne     JDLFA83
   529:          lda     #$57
   530:  JDLFA83:
   531:          sta     (zFNADR),y
   532:          iny
   533:          sty     zFNLEN
   534:          ldy     #$0C
   535:  JDLFA8A:
   536:          jsr     JDLFAB2
   537:          jsr     JDLF73D
   538:          jsr     JDLF8B2
   539:          pla
   540:          jsr     LF541
   541:          lda     $13
   542:          beq     JDLFAA7
   543:          cmp     #$7F
   544:          bne     JDLFA38
   545:          jsr     LABB7
   546:          lda     #$7F
   547:          jmp     kCLOSE
   548:  JDLFAA7:
   549:          ldx     #$04
   550:          jsr     zCHRGET
   551:          jsr     JDLE229
   552:          jsr     JDLF75C
   553:  JDLFAB2:
   554:          sty     zSA
   555:          ldx     #$7F
   556:          stx     $13
   557:          lda     zFNLEN
   558:          jmp     JDLF8C7
   559:          tax
   560:          bne     JDLFA8A
   561:          lda     zNXTBIT
   562:          beq     JDLFACE
   563:  JDLFAC4:
   564:          jsr     OutputLoadingOrVerify
   565:          tsx
   566:          lda     $0102,x
   567:          cmp     #$F7
   568:          .byte   $D0
   569:  JDLFACE:
   570:          php
   571:          lda     zEAL
   572:          sta     $55
   573:          lda     $AF
   574:          sta     $56
   575:          bit     zTSFCNT
   576:          bmi     JDLFADE
   577:          jmp     LF4F3
   578:  JDLFADE:
   579:          sei
   580:          ldy     #$03
   581:  JDLFAE1:
   582:          lda     $AF,y
   583:          pha
   584:          dey
   585:          bne     JDLFAE1
   586:          lda     VIC + VICII_O_SprEnable
   587:          sta     zCMPO
   588:          jsr     JDLF0D8
   589:  JDLFAF0:
   590:          jsr     iUDTIM_CheckRunStop
   591:          bpl     JDLFB27
   592:          lda     VIC + VICII_O_ControlReg1
   593:          and     #$07
   594:          clc
   595:          adc     #$2F
   596:          sta     $B1
   597:          lda     CIA2
   598:          and     #$07
   599:          sta     zTAPE1
   600:          sta     CIA2
   601:          ora     #$20
   602:          tax
   603:  JDLFB0C:
   604:          bit     CIA2
   605:          bvc     JDLFB0C
   606:          bpl     JDLFB3E
   607:          ldx     #$64
   608:  JDLFB15:
   609:          bit     CIA2
   610:          bvc     JDLFB20
   611:          dex
   612:          bne     JDLFB15
   613:          lda     #$42
   614:          .byte   $2C
   615:  JDLFB20:
   616:          lda     #$40
   617:          jsr     SetStatus
   618:          clc
   619:          .byte   $24
   620:  JDLFB27:
   621:          sec
   622:          lda     zCMPO
   623:          sta     VIC + VICII_O_SprEnable
   624:          pla
   625:          sta     zCMPO
   626:          pla
   627:          sta     $B1
   628:          pla
   629:          sta     zTAPE1
   630:          bcs     JDLFB3B
   631:          jmp     KLOAD_UntalkClose
   632:  
   633:  JDLFB3B:
   634:          jmp     IecCloseBecauseStopKey
   635:  JDLFB3E:
   636:          bit     CIA2
   637:          bpl     JDLFB3E
   638:          sec
   639:  JDLFB44:
   640:          lda     VIC + VICII_O_Raster
   641:          sbc     $B1
   642:          bcc     JDLFB4F
   643:          and     #$07
   644:          beq     JDLFB44
   645:  JDLFB4F:
   646:          lda     zTAPE1
   647:          stx     CIA2
   648:          bit     CIA2
   649:          bvc     JDLFAF0
   650:          nop
   651:          sta     CIA2
   652:          ora     CIA2
   653:          lsr     a
   654:          lsr     a
   655:          nop
   656:          ora     CIA2
   657:          lsr     a
   658:          lsr     a
   659:          eor     zTAPE1
   660:          eor     CIA2
   661:          lsr     a
   662:          lsr     a
   663:          eor     zTAPE1
   664:          eor     CIA2
   665:          cpy     zVERCKK
   666:          bne     JDLFB83
   667:          sta     (zEAL),y
   668:  JDLFB7A:
   669:          inc     zEAL
   670:          bne     JDLFB44
   671:          inc     zEAL + 1
   672:          jmp     JDLFB44
   673:  JDLFB83:
   674:          cmp     (zEAL),y
   675:          beq     JDLFB7A
   676:          sec
   677:          lda     #$10
   678:          sta     zSTATUS
   679:          bne     JDLFB7A
   680:  
   681:  Copy_zSTAL_to_zSAL:
   682:          lda     zSTAL + 1
   683:          sta     zSAL + 1
   684:          lda     zSTAL
   685:          sta     zSAL
   686:          rts
   687:          ; -------------------------
   688:  
   689:  JDLFB97:
   690:          pha
   691:          jsr     JDLF0D8
   692:          jsr     JDLFBB4
   693:          pla
   694:          sta     VIC + VICII_O_SprEnable
   695:          lda     zTBTCNT
   696:          rts
   697:  JDLFBA5:
   698:          lda     #$00
   699:          jmp     JDiACPTR
   700:  JDLFBAA:
   701:          sei
   702:          bit     zTSFCNT
   703:          bvc     JDLFBA5
   704:          lda     VIC + VICII_O_SprEnable
   705:          bne     JDLFB97
   706:  JDLFBB4:
   707:          lda     CIA2
   708:          cmp     #$40
   709:          bcc     JDLFBB4
   710:          and     #$07
   711:          pha
   712:  JDLFBBE:
   713:          lda     VIC + VICII_O_Raster
   714:          sbc     VIC + VICII_O_ControlReg1
   715:          and     #$07
   716:          cmp     #$07
   717:          bcs     JDLFBBE
   718:          pla
   719:          .byte   $8D
   720:          brk
   721:  JDLFBCD:
   722:          cmp     $A485,x
   723:          ora     #$20
   724:          pha
   725:          nop
   726:          nop
   727:          ora     CIA2
   728:          lsr     a
   729:          lsr     a
   730:          nop
   731:          ora     CIA2
   732:          lsr     a
   733:          lsr     a
   734:          eor     zTBTCNT
   735:          eor     CIA2
   736:          lsr     a
   737:          lsr     a
   738:          eor     zTBTCNT
   739:          eor     CIA2
   740:          sta     zTBTCNT
   741:          pla
   742:          bit     CIA2
   743:          sta     CIA2
   744:          bvc     JDLFC22
   745:          bpl     JDLFC1D
   746:          lda     #$42
   747:          jmp     IecSetStatusAndFreeBus
   748:  JDLFBFE:
   749:          sei
   750:          bit     zTSFCNT
   751:          bvc     JDLFC14
   752:  JDLFC03:
   753:          lda     VIC + VICII_O_SprEnable
   754:          beq     JDLFC27
   755:          pha
   756:          jsr     JDLF0D8
   757:          jsr     JDLFC27
   758:          pla
   759:          sta     VIC + VICII_O_SprEnable
   760:          rts
   761:  JDLFC14:
   762:          lda     zTSFCNT
   763:          cmp     #$A0
   764:          bcs     JDLFC03
   765:          jmp     IecOutputByte
   766:  JDLFC1D:
   767:          lda     #$40
   768:          jsr     SetStatus
   769:  JDLFC22:
   770:          lda     zTBTCNT
   771:  JDLFC24:
   772:          cli
   773:          clc
   774:          rts
   775:  JDLFC27:
   776:          txa
   777:          pha
   778:          lda     zBSOUR
   779:          and     #$F0
   780:          pha
   781:          lda     zBSOUR
   782:          and     #$0F
   783:          tax
   784:  JDLFC33:
   785:          lda     CIA2
   786:          bpl     JDLFC33
   787:          and     #$07
   788:          sta     zBSOUR
   789:          sec
   790:  JDLFC3D:
   791:          lda     VIC + VICII_O_Raster
   792:          sbc     VIC + VICII_O_ControlReg1
   793:          and     #$07
   794:          cmp     #$06
   795:          bcs     JDLFC3D
   796:          lda     zBSOUR
   797:          sta     CIA2
   798:          pla
   799:          ora     zBSOUR
   800:          sta     CIA2
   801:          lsr     a
   802:          lsr     a
   803:          and     #$F0
   804:          ora     zBSOUR
   805:          sta     CIA2
   806:          lda     JDLFC8A,x
   807:          ora     zBSOUR
   808:          sta     CIA2
   809:          lsr     a
   810:          lsr     a
   811:          and     #$F0
   812:          .byte   $05
   813:  JDLFC6A:
   814:          sta     $8D,x
   815:          brk
   816:          cmp     $0F29,x
   817:          bit     zTSFCNT
   818:          bmi     JDLFC76
   819:          ora     #$10
   820:  JDLFC76:
   821:          sta     CIA2
   822:          pla
   823:          tax
   824:          lda     zBSOUR
   825:          ora     #$10
   826:          sta     CIA2
   827:          bit     CIA2
   828:          bpl     JDLFC24
   829:          jmp     SendTimeout
   830:  
   831:  ; @@@ todo table?
   832:  
   833:  JDLFC8A:
   834:          .byte   $00,$80,$20,$A0
   835:          .byte   $40,$C0,$60,$E0
   836:          .byte   $10,$90,$30,$B0
   837:          .byte   $50,$D0,$70,$F0
   838:  
   839:  JDLFC9A:
   840:          jsr     JDLF7A2
   841:          jmp     OutputFilename
   842:          jsr     bGTBYTC
   843:          stx     zMYCH
   844:          rts
   845:  JDLFCA6:
   846:          jsr     JDLF0E2
   847:  JDLFCA9:
   848:          jsr     kCHRIN
   849:          sta     (zFNADR),y
   850:          iny
   851:          bit     zSTATUS
   852:          bvs     JDLFCBB
   853:          cpy     #$FE
   854:          bcs     JDLFCBB
   855:          cmp     #$01
   856:          bcs     JDLFCA9
   857:  JDLFCBB:
   858:          rts
   859:          ldx     #$05
   860:  JDLFCBE:
   861:          lda     LF1A3,x
   862:          sta     lIERROR,x
   863:          dex
   864:  JDLFCC5:
   865:          bpl     JDLFCBE
   866:          stx     zPRTY
   867:          rts
   868:          lda     zCNTDN
   869:          ora     ($29,x)
   870:          sbc     $0185,x
   871:  
   872:  
   873:  
   874:  ; Taken from vanilla C64/VIC-20 KERNAL
   875:  ; (tape.a65)
   876:  
   877:  
   878:  ; Check if the end address has been reached
   879:  ; in writing
   880:  ;
   881:  ; Return:
   882:  ; C = 0: End address has not yet been reached
   883:  ; C = 1: End address has been reached
   884:  ;
   885:  ; This routine calculated zSAL/zSAL+1 - zEAL/zEAL+1.
   886:  ; If zSAL/zSAL+1 is smaller than zEAL/zEAL+1, we end with C=0, as there was a "borrow".
   887:  ; Otherwise (equal or bigger), C=1 as no borrow occurred.
   888:  ;
   889:  ; This routine is also used in fileio.a65 for IEC transfers
   890:  ;
   891:  HasEndAddressBeenReached:
   892:          sec
   893:          lda     zSAL
   894:          sbc     zEAL
   895:          lda     zSAL + 1
   896:          sbc     zEAL + 1
   897:          rts
   898:  
   899:  ; Increment the zSAL/zSAL+1 address
   900:  ; That is, this routine proceeds the pointer to the next character to be written/read.
   901:  ;
   902:  ; This routine is also used in fileio.a65 for IEC transfers
   903:  ;
   904:  Increment_zSAL_Address:
   905:          inc     zSAL
   906:          bne     @Rts
   907:          inc     zSAL + 1
   908:  @Rts:
   909:          rts
   910:          ; ------------------------
   911:  
Valid XHTML 1.0 Strict
jiffydos.a65.html; generated on Fri Sep 18 21:44:54 2015 by ca65html
uz@cc65.org