home *** CD-ROM | disk | FTP | other *** search
/ Commodore 64 Scene Diskmags Assortment / Vision_02_19xx_Vision_Side_C.d64 / ldfile.s < prev    next >
Text File  |  2023-02-26  |  915b  |  44 lines

  1.  ;mozart tue14dec93 ml file load
  2.  ;
  3.  ;file open, file close and error
  4.  ;checking done by basic
  5.  ;
  6.  ;define assembler constants
  7.  ;
  8. chkin  = $ffc6 ;designate input file
  9. chrin  = $ffcf ;read a byte
  10. clrchn = $ffcc ;clear all channels
  11. genptr = $fd ;zero page pointer
  12. sov    = $2d ;basic start of vars
  13. status = $90 ;basic status byte
  14. temp   = $57 ;temporary byte dump
  15.  ;
  16. *=$0aca ;sys 2762
  17.  ;
  18.  jsr clrchn ;clear all i/o channels
  19.  ldy #3 ;get basic il% value
  20.  lda (sov),y ;is logical file
  21.  tax
  22.  jsr chkin ;designate as input file
  23.  ;
  24.  jsr chrin ;get lo byte header
  25.  sta genptr
  26.  jsr chrin ;get hi byte header
  27.  sta genptr+1
  28.  ;
  29. rdloop jsr chrin ;get data byte
  30.  ldx status ;get i/o status byte
  31.  stx temp ;save for later
  32.  ;
  33.  ldy #0
  34.  sta (genptr),y ;store data byte
  35.  inc genptr ;increment pointer
  36.  bne skip
  37.  inc genptr+1
  38. skip lda temp ;test status now
  39.  beq rdloop ;zero means get more
  40.  ;
  41.  jsr clrchn ;clear i/o channels
  42.  rts
  43. .end
  44.