������������, ��������� ����������.



���� ������, ����� �������, ���������. ����� ����� ����� � ������ ���� ���������. � ���, ����� ���� ������ ����� � ���� ��� 3600 �����������, ��� �� ����� �� ��������!!! :) ������� �� ������� � ��� �����.

������ �6

� ���� ������� �� ��������� �� ��������� ����. ��������, ��� �� ����� ����������, �� � ��� �� ���� ������� ���������. � ��� �� �� ��������� �������� ��� ���������� ����� ����������, �� �������, ��� ����� �����. � ��� �� ������� ��������� ��� ����������� ����� ���������� 8086.

����������� � ������� ��������...


� 4-� �������, ����� � ���������� ���, ��� ������ boot sector, � ������� ���� ���������� ��������� ������, ������� ������� � ��������� Bug Maker'�, �� ��, ��� ������� �� ��� ��� ���������. � ��������� load_sector �, ������ �����, ���� ����� ������� �� ���������� ������� �� �������. ��� ������� ��������� ����������� ������� div, �������������� �������� ax � dx:ax �������� �������� cwd. ������ ���� ������ ��� ������������ ���������� �������� �� ������ ����� �� ��������� 2880, �� �������, ��������, ��� ax ������ �������. ��, ��� �� �����, ������ �������������. ���� �������� ���� ����� ������ ���:

load_sector:
        push    ax
        push    cx

        mov     cl, 18
        div     cl

        mov     cx, dx
        inc     cx

������������, � ������ ����� ������� cwd, � ������ ���� �� ���� cl. ��� ���, � ���� ��, ���������� ��� ��� �����. :)

�� ��� ��� �� ���.. ��� ��������� boot sector'� � �������, ��� ��� ������ �� ������������� ������. ��� ��� � ����������. �� ���������� �� ������ ��� �������� kernel. ���� ����� ���������� ��������� setup. �������������, boot sector'� �������� ������ ������� setup � �������� ���... ���� ���� ������� ����� ���������� ��������� ������ ������, � ��� �������� ����� 250 ���� �� ������ �����������... :)

� setup ������ ����� ����� ���������� ������. � ���� ����� �������� ��������� �������� �������, ��������� ����������� �������� ������. �� ���������� ������ ���������, � setup'� �������� ��������� ������ ���� ��� ��������� �������������� ��������, ������� ����������� ��� ��� ����������� ������ �������.

�� �� ���� �����. � ������ ���������� ����������� � ���������� �������.

�����


� ������� �������, ����� � ������� � ������������ � ������������� �������� � �� ����� �� �������� � ������������� ������� ���������� (Interrupt description table ��� IDT). ��� ������� ��� �� ������� �� ������������, �� � ������� �� LDT � GDT � ���� ������� ����� ����������� ������ �����. � ���������� ������ ��� ���������� ���������� ����� IDT. ������������ ������� �������� ���������� ����� �� ������������.

������ ������������ ������ ���������� �� ����������� ��������.
��� ������ ���������� ���� ������.
7 6 5 4
�������� 31-16 ����� ������� ���������� ���� �����
3 2 1 0
�������� �������� 15-0

� ���� ���� ������� �������� ������� ����������, ������� ������ ���� ���� CPL �������� ��������, ��� ����������� � ��������������� ��� � ��������� �����.
�������� � �������� ������ ����� ���������� �������, ��� ���� �������� ������ �������������� ���� � GDT ���� � �������� LDT.
�������� "���������� ���� �����" ������ ��� �������� ���������� � ���������� �������, ��� ���� ��������������� ���������� ���� ���������� �� ����� �������� ������ ���������� � ���� ������ ���������� ���������� �������. ��� ���� ���������� ������ ������� 5 ��� ���������� �����. ��������� ���� ������ ���� ��������.
���������� � ������ �����, ���� ���������� �� ���������� � IDT, ����� ������ �������� call far, ��� ���� ����������� � ������� �������� ������������. � �������� ������ ��������� �� ���������� ����� ������.

���� ���������� � ���� ������� ����� ���������� ������, ���������� ����� ����� ������ � ����� ���� �������. � ������� �� ����� ������ ��� ����� �� �������� � ���� ���������� ���� �����, ��������� ���������� ������ ����������� � �������� � ��� ���������� ����� ���� - ������������. ��� ����� ������������ ������ ������ � IDT.

���� ������ �������� � ���� ����������� ������ ����������.
�� ������ � ������� ����� ����������� ������������ �������� TSS (�������� ��������� ������). ���� ���� ������� ����������� ���������� ������ ������, �� � ��������������� �����. ��������� ���� ����������� �� ������������.
��� ������ ������ ����� ���������� ������������ ��������� ������. ��� ���� ���������� ������ ����������� � �� ����� ���� ������� �� ��� ���, ���� ��������� ������ �� ������ �� ���������� �������� iret.

��� ������� ������� � ������ � ������� � ������� �������, � � ���� ��� � ������� �� ����. � ��������� ������� �������� ��� ���������� ����� ��������.

����������� ����� ���������� 8086.


��� ����������� ������� �� ����������� ������ ��������, ��������������� ��� ���������, ���������� ��� ���������� "����������� ����� ���������� 8086". ��� ���� ���������� �������� ��������� �������������� ������� ����������� ������. � ��� �� ������������� �������, ������� ����� ������������ ��������� ��� ���������� ������, ��� � �����������. ��� ���� ��������� � ����������� ������ �������������� ������������ ��� 8086 ������� - �������/��������.

��������� � ����������� �������������� ����� IDT, �� ������� ���������� ��������� ������ ����� ���� ���������� �� �������, ����� ������� ����������� � IDT.
��������� ����������� ������ � ������ ��� �� ����� ���� ��������� ����� ���������� ����������� ������. ��� ��������� � ����������� ������ ���������� ����������.
��� ������� ����� ���� ���������� ��������� ���������� ������ ���������� ����������� ����� � ����� �������������� �����. �� �� ���� ������������ �� ����� ������������, � � ����� ������ ����� ������������ �� ��������� ������������� ����������� ������.

�� ���� � ������� ����������. �� ��������� ��������. ������.

���������� 2001-08-10 ��� 3692 �����������.
������� �������� Dron