/[projet1]/public/oric/demos/OricTech/code/loader.asm
Defence Force logotype

Diff of /public/oric/demos/OricTech/code/loader.asm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1398 by Jede, Sun Apr 9 18:38:29 2017 UTC revision 1399 by Jede, Mon Apr 10 18:53:46 2017 UTC
# Line 386  end_change_track Line 386  end_change_track
386          sei          sei
387    
388          lda current_sector          lda current_sector
 __fdc_sector_1    
389          .dsb ((FDC_sector_register&3)-((*+3)&3))&3,$ea          .dsb ((FDC_sector_register&3)-((*+3)&3))&3,$ea
390    __fdc_sector_1  
391          sta FDC_sector_register          sta FDC_sector_register
392          inc current_sector          inc current_sector
393                                    
394          lda current_track                        ; Check if the drive is on the correct track                    lda current_track                        ; Check if the drive is on the correct track          
395            .dsb ((FDC_track_register&3)-((*+3)&3))&3,$ea  
396  __fdc_track_1    __fdc_track_1  
         .dsb ((FDC_track_register&3)-((*+3)&3))&3,$ea  
397          cmp FDC_track_register          cmp FDC_track_register
398          beq stay_on_the_track          beq stay_on_the_track
399                            
400    
401            .dsb ((FDC_data&3)-((*+3)&3))&3,$ea    
402  __fdc_data_1      __fdc_data_1    
         .dsb ((FDC_data&3)-((*+3)&3))&3,$ea  
403          sta FDC_data                             ; Set the new track          sta FDC_data                             ; Set the new track
404                                    
405          lda #CMD_Seek          lda #CMD_Seek
 __fdc_command_1  
406          .dsb ((FDC_command_register&3)-((*+3)&3))&3,$ea          .dsb ((FDC_command_register&3)-((*+3)&3))&3,$ea
407    __fdc_command_1
408          sta FDC_command_register                  sta FDC_command_register        
409          jsr WaitCompletion          jsr WaitCompletion
410  stay_on_the_track  stay_on_the_track
# Line 415  __fdc_flags_2 Line 416  __fdc_flags_2
416    
417  __fdc_readsector  __fdc_readsector
418          lda #CMD_ReadSector          lda #CMD_ReadSector
419            .dsb ((FDC_command_register&3)-((*+3)&3))&3,$ea
420  __fdc_command_2  __fdc_command_2
         .dsb ((FDC_command_register&3)-((*+3)&3))&3,$ea  
421          sta FDC_command_register          sta FDC_command_register
   
422          jsr WaitCommand          jsr WaitCommand
423    
424          ; Read the sector data          ; Read the sector data
425          ldx #0          ldx #0
426            .dsb ((FDC_drq&3)-((*+3)&3))&3,$ea
427  loop_read_sector  loop_read_sector
428  __fdc_drq_1  __fdc_drq_1
         .dsb ((FDC_drq&3)-((*+3)&3))&3,$ea  
429          lda FDC_drq          lda FDC_drq
430      bmi loop_read_sector      bmi loop_read_sector
431  __fdc_data_2  
432          .dsb ((FDC_data&3)-((*+3)&3))&3,$ea              .dsb ((FDC_data&3)-((*+3)&3))&3,$ea    
433    __fdc_data_2
434          lda FDC_data          lda FDC_data
435          sta LOADER_SECTOR_BUFFER,x              ; Store the byte in the sector buffer          sta LOADER_SECTOR_BUFFER,x              ; Store the byte in the sector buffer
436          inx          inx
437          bne loop_read_sector          bne loop_read_sector
438    
439            .dsb ((FDC_status_register&3)-((*+3)&3))&3,$ea  
440  __fdc_status_1  __fdc_status_1
         .dsb ((FDC_status_register&3)-((*+3)&3))&3,$ea  
441          lda FDC_status_register          lda FDC_status_register
442          and #$1C          and #$1C
443    
# Line 469  r_wait_completion Line 470  r_wait_completion
470          bne r_wait_completion          bne r_wait_completion
471          plp          plp
472    
473            .dsb ((FDC_status_register&3)-((*+3)&3))&3,$ea  
474  r2_wait_completion  r2_wait_completion
475  __fdc_status_2  __fdc_status_2
         .dsb ((FDC_status_register&3)-((*+3)&3))&3,$ea  
476          lda FDC_status_register          lda FDC_status_register
477          lsr          lsr
478          bcs r2_wait_completion          bcs r2_wait_completion

Legend:
Removed from v.1398  
changed lines
  Added in v.1399

  ViewVC Help
Powered by ViewVC 1.1.26