PRG44 - ��� DOS-���� �⤠���� �p��� (�������)
From
FAQServer@2:5020/181 to
All on Fri Jun 27 07:37:09 2025
[Q]: ��� DOS-���� �⤠���� �p��� (�������)
[A]: Anton Shuko (2:5005/28.66)
��� ��砫� ������让 ���yp�:
���y � 94� ��� ���p���������, �⮡� ��� ���-�p��� ����� �p����쭮 �⤠����
⨪� ��� ����. ���� � p������ y ���� �� �뫮, �� �뫮 � 䠪�� (� �뫨 ��
��� ⮣�� ? :) ���ᠢ p��y � ��襫 ����� �����宩 ᯮᮡ (� ��� ����), ���p� �p������ �� ⮫쪮 � ��. H� �� ��宭쪨� ������⮪ - ������
�p� ����� py��� ⥪�� �p�᪠������ ������᪨� (������ �p��� � � p�
�� �p����). H������ �p����� �p�襫 ����� � � �⠫ ������ 䠪� � �p��� ��������. �p������ ax=1680, int2f - �⤠�� ������, �� ��᮫�⭮ �� ���室�� ��� ����� ���p� 祣�-� ������, � ���p䥩� � ���� ��������� - �� ����� ���믠�� �� ������ �� ����y ��� �� ��⨢���樨 ��� (�py�y � 横��
�p�����, �p���p�y �� ����y, ����, � ��⥬ �⤠� ⨪� - �p� ���y�ᢨ� ��⨢���� 䮭��� �p����� ��뢠���� 2 p��� � ᥪy��y :( � ��� ������
�y��� ��⨢���p������� p�� ⠪ 100 � ᥪy��y), �p� ⠪�� ᯮᮡ� �⤠�
�ᮢ "���믠��" ���� - � �p���� ���� �� �������� ��� � ���p���. Hlt ⮦� �� ����� - �p��� hlt, ���� � 横��:
mov cx, 10000
l:
hlt
loop l
��祣� �� �⤠���, � � ��:
mov ax, xx
mov dx, yy
hlt
db 035h
db 0CAh
(�� � �� ����� ���y - ��� � �訡�����)
y ���� ��᪠����� �p�� (� ���y ��� 16 p��p來� ���⥭��p��, � �� ���
���⨪� �� hlt � �⮬ p����� �p�����), ⠪ �� � ���� �� ᬮ�
�p���p��� ���쪮 �� ��䥪⨢��.
�p�諮�� ��� ���p��� ����� � ����p��쪮 ������, �y�� �������� py�᪨�
�y�����, �� 祣� � ��p���� � ��堭��� � �p������� ��� ���. :)
��堭��� ⠪��: �p��p���� �ᥣ�� ���� ����� � �������yp� (int16, �y���� 0
��� ��ᮢ᪨�� ��� C �y���ﬨ) �p�祬 ������ ����, � �� ��p�訢���,
���� �� ⠬ �y�騩 ᨬ��� ��� ���. ��� ⮣� �⮡� �p��p���� �����
���p��� p����p����� �� ���� � ������� � �� �p����py ��p����稪 (���������� �����-� �y��樥�) � �⮬ ��p����稪� �������� � �� ���� � ����������
� ����� ���������� �����-� ���� ᨬ��� (� �ᯮ��y� 0xFFFx ).
� �y�p ���뫠���� �p��� - ���� � ���� ��� y����⥫� �� ��� �y�p,
��� ���짮������ ����ᠭ� � ���p��yp�. � ��� (2.11, 3.0, 4.0) � win �
win95 � �p��� ��� �� ��������! �p�祬 ��� ��� ����, ⠪ � ���
�p�窠�� ������ �p��� ���� ����� � �p���⭮ �⤠�� � ⨪�. ���
���y᪠ ��p�������� �p���ᮢ � ��p�墠�뢠� int8 - �� p��y��p�� ���y᪠�� 横� ��p���⪨ ᮡ�⨩ ���뫪�� ������ ���� � �y�p. ��筮 ⠪ �� �
���-��p⠬� � �p�稬. ��� ⮣� �⮡� ���ᯥ��� ���p�p뢭�� �ᯮ������ �����p�� �p���ᮢ (����� ���� ᮦp��� ���ᨬy� �p����� � ����� ������) ��p��� ����⥣������� �p��y��⥫쭮� ���뫪�� ᨬ���� � �y�p �������yp�. ����p ⮭�����, ��-�� ���p�� py�䨪��p� (p����) ����:
� ���� ��p���⪠ int9, � � ��� ������ ��뢠���� �py��� �p�p뢠���,
���p�� �믥� � �y�p ᨬ���, ������� ��p��⭮��� �� ��p���⪠ int9 ����� ����p����� ���p����쭮. ���⮬y � �⫠������ int9 � ��p����뢠� ⠪:
void int9(){
keyBusy=YES;
(*oldInt9)();
keyBusy=NO;
}
� ���� keyBusy=YES � �py��� ��p����稪�� � �y�p ��祣� ����� ���������.
��⮤ ����筮 ���, �p��y�� �p�襣� ������ �p�p뢠��� � �p��y��
�����p�� ��p���⪨ � �⫠���, �� � ����� ��祣� �� ������� ����� ���p������� ᤥ���� �� ⠪�� ��p����.
� ��� ��直� �p����� �p��p����p���� ⠩��p �� 182 �� (��p��y ��p����稪y �⤠��� ����� ������ ⨪), ��몠� �� � �p��y � �p���᪨� ���p�ᮬ, ��p������묨 �p���ᠬ� � ��⨢�� �ᯮ�짮����� ���, �� �� ������ ���
���� (�p�祬 ��ᥫ� ���쪮 ⠪�� ��ᨩ) � ���py��� �� �p����p �뫠 �������쭠. ��� ��直� ��p������ �� 室�� ��� win95 (� ⠪ �� � �������쭮� ���py����) � ��� ���� ��ᮬ. � ��� ����室����� ⠩��p �y�� ��
�p����� (�� ��p��p��p����p����� ����y). � ���� ���� ���쪮 �������, ���p� ���y᪠���� �� p���� ������� � 祣�-� ������ - ��⠫쭮� �p���
��� ��� � �����y �� ����� - �y��� �� dx80 - �� �y��. ���� ����� ���� ��⨢�� ���� (��p뢠���, ��p���饭��, ���p뢠��� ���襪, ����襪 - ��
�� � �p�䨪� - � ⥪�⮢�� ���� ���py��� �������쭠) ���py��� �p����p�
�� �y���y ����᮪�.
��: p� ��� ��� ����y �� ���� ����� ��� ��ᮬ - ��p�� ��p���⮪ �����.
H� ���� �� � ���⥭��p�� + �p���᪨� ��設� ���p䥩� + ��p���쭠� p���� ��� ���� � 稪�� (���� ��� p����� �p���) ��� ��p���쭮 ������� ���
��直� ��p������ :)
--- INN 2.7.3
* Origin: This echo is READ-ONLY. Send %HELP to FAQSERVER at (2:5020/181)