Subversion Repositories pentevo

Rev

Rev 764 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

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