Subversion Repositories pentevo

Rev

Rev 736 | Rev 764 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.  
  2. ;LAST UPDATE: 31.12.2016 savelij
  3.  
  4.         IF EMU
  5. CMP_VARSTRDOS   CALL SET_RWPORT0
  6.                 LD HL,(CHANS)
  7.                 RET
  8.  
  9. LOC_2A53_       IF EMU3D2F=1
  10.                 RST30 WOUTCA
  11.                 RET
  12.                 RET
  13.                 ELSE
  14.                 PUSH AF
  15.                 INC C
  16.                 JR Z,LOC2A53
  17.                 ENDIF
  18.                 DEC C
  19.                 POP AF
  20.                 OUT (C),A
  21.                 RET
  22.  
  23. LOC2A53         DEC C
  24.                 POP AF
  25.                 RST30 WOUTCA
  26.                 RET
  27.  
  28. EMU_LDIR        PUSH AF
  29.                 LD A,H
  30.                 CP 0X2A
  31.                 JR NZ,EMU_LDIR2
  32.                 LD A,L
  33.                 CP 0X54
  34.                 JR NC,EMU_LDIR2
  35.                 CP 0X50
  36.                 JR C,EMU_LDIR2
  37.                 ADD HL,BC
  38.                 PUSH HL
  39.                 LD HL,0X3FF0-3
  40.                 CP 0X53
  41.                 JR NZ,EMU_LDIR0
  42.                 LD HL,0X3FF0
  43. EMU_LDIR0       LDIR
  44.                 POP HL
  45.                 POP AF
  46.                 RET
  47.  
  48. EMU_LDIR2       LD A,(NUM_ALT_PAGE)
  49.                 PUSH AF
  50.                 PUSH BC
  51.                 LD A,ROM_BAS48|0X80
  52.                 LD BC,WIN_A0
  53.                 CALL WR_BYTE_RET
  54.                 POP BC
  55.                 LDIR
  56.                 POP AF
  57.                 PUSH BC
  58.                 LD BC,WIN_A0
  59.                 CALL WR_BYTE_RET
  60.                 POP BC
  61.                 POP AF
  62.                 RET
  63.  
  64. EMU_LDIR_RBC    CALL EMU_LDIR
  65.                 POP BC
  66.                 RET
  67.  
  68. EMU_LDIR_RHL    CALL EMU_LDIR
  69.                 POP HL
  70.                 RET
  71.  
  72. PRINT_VIRTDRV   LD H,VIRT_REAL_DRIVE
  73.                 CALL READCMOS           ;ЧТЕНИЕ НОМЕРА ВИРТУАЛЬНОГО ДИСКА
  74.                 AND 3                   ;НАМ НУЖНЫ ТОЛЬКО 2 МЛАДШИХ БИТА
  75.                 ADD A,"A"               ;ПРЕОБРАЗОВАЛИ В ТЕКСТ
  76.                 RST 0X10                ;НАПЕЧАТАЛИ БУКВУ
  77.                 RET
  78.  
  79. CMP_RAMDISK     RST30 _CMP_RAMDISK
  80.                 LD HL,SET_VARS
  81.                 RET
  82.         ENDIF
  83.  
  84. PRINT2ZERO      LD A,(HL)
  85.                 INC HL
  86.                 AND A
  87.                 RET Z
  88.                 RST 0X10
  89.                 JR PRINT2ZERO
  90.  
  91.         IF EMU
  92. ADD_TXT_VERS    LD HL,TEXT4VIRTDRV      ;ТЕКСТ ПРО ВИРТУАЛЬНЫЙ ДИСКОВОД
  93.                 RST 0X18                ;ПЕЧАТЬ НА ЭКРАНЕ
  94.                 LD H,VIRT_REAL_DRIVE
  95.                 CALL READCMOS           ;ЧТЕНИЕ НОМЕРА ВИРТУАЛЬНОГО ДИСКА
  96.                 AND 3                   ;НАМ НУЖНЫ ТОЛЬКО 2 МЛАДШИХ БИТА
  97.                 ADD A,"A"               ;ПРЕОБРАЗОВАЛИ В ТЕКСТ
  98.                 RST 0X10                ;НАПЕЧАТАЛИ БУКВУ
  99.                 RET
  100.         ENDIF
  101.