Аппаратное обеспечение персонального компьютера

           

Программа TESTHMA


Первая программа с названием TESTHMA (листинг 11.1) демонстрирует проверку подключения драйвера и использование его основных функций.

Листинг 11.1. Файл testhma\testhma.asm

; =====================================================

; Вызов основных функций API драйвера HIMEM.SYS

;

; (C) A. Frolov, 1997

;

; E-mail: frolov@glas.apc.org

; WWW:    http://www.glasnet.ru/~frolov

;            or

;         http://www.dials.ccas.ru/frolov

; =====================================================

@@out_ch MACRO c1,c2,c3,c4,c5,c6,c7,c8,c9,c10

  mov   ah,02h

  IRP   chr,<c1,c2,c3,c4,c5,c6,c7,c8,c9,c10>

  IFB   <chr>

  EXITM

  ENDIF

  mov   dl,chr

  int   21h

  ENDM

  ENDM

@@out_str MACRO

  mov   ah,9

  int   21h

  ENDM

BEEP  MACRO

  mov bx,0

  mov ax, 0E07h

  int 10h

  ENDM

  .model small

  .STACK  100h

  .DATA

msg    DB 13,10,"HIMEM.SYS API Demo", 13, 10

       DB "(C) Frolov A., 1997",13,10,13,10

       DB "$"

noHMM     DB 13,10

          DB "HIMEM.SYS not installed",13,10,"$"

yesHMM    DB 13,10,"HIMEM.SYS istalled, ", "$"

ver1      DB "version: ", "$"

ver2      DB ", modification: ", "$"

errmsg    DB 13,10,"Error code ", "$"

okmsg     DB 13,10,"Success!", "$"

hmareq    DB 13,10,"Request HMA", "$"

hmarel    DB 13,10,"Release HMA", "$"

enA20     DB 13,10,"Open A20", "$"

dsA20     DB 13,10,"Close A20", "$"

loc_enA20 DB 13,10,"Local open A20","$"

loc_dsA20 DB 13,10,"Local close A20", "$"

check_A20 DB 13,10,"Check A20", "$"

free_ext_mem DB 13,10,"Extended memory, Kbyte: ", "$"

max_ext_block DB 13,10,"Max free Extended memory block, Kbyte: ", "$"




Содержание  Назад  Вперед