"ZNAK"



    на главную



 Это библиотека прерываний REDERа. Некоторые подпрограммы я не мог написать много
лет. Но сейчас все работает, как часы.


X
J048
 'в REDER входить через вектор 92 (редактор)
перенос блоков данных (IR-SR) Ut имеет вектор 90,
редактор (RDG-SR) - 92,
транслятор (TRG-SR) - 93,
16-ричный редактор (HR-SR) - 94,
M310 пошаговое UH - 95,
M238 контрточка n - 03,
печать числа r (TRG)- 96,
каталог (KT) VK - 97,
выбор цвета (KT) VЦ - 98,
выбор знака (KT) VЗ - 99,
диск файловый (IR-SR) ud - 80,
диск секторный (IR-SR) uD - 81,
M000 запись символа в AL LA - A0
M001 запись символа и атрибута в AX La - A1
M002 распечатать AL L1 - A2
M003 распечатать AX L2 - A3
M008 побитовая распечатка AL LB - A4
M004 распечатка текста LT - A5
M010 по адресу в E:d распечатать число в AL Ld - A6
M011 число AL на принтер LF - A7
M012 знак в AL на принтер LP - A8
M013 десятичная распечатка AX LД - A9
M014 десятичная распечатка AL Lд - AA
M033 клавиша K - AB
M037 получить сдвиг мыши UM - AC
M046 записать AX в буфер клавиатуры UK - AD
M049 чтен из c:E 2-х цифр в CL ZC  - AE
M050 чтен из c:E 4-ч цифр в CX Zc  - AF
M051 растяжка UR - B0
M052 очистка экрана LO - B1
M053 запись пиксела VP - B2
M054 считывание атрибута  и знака ZA - B3
M055 вывести курсор k - B4
M056 очистка до конца строки Lo - B5
M057 случайное US - B6
M058 расширпамять Ur - B7
M059 чтение положения курсора Zk - B8
M060 проверка нажатой клавиши ZK -B9
M061 комстрока Us - BA
M062 сканер Zs - BB
M063 таймер UT - BC
M064 текст t - BD
M065 поиск Y - BE
M066 видеорежим VGN - BF
M067 текстовый режим VTN - C0
M068 знак в AX вписать в экран коорд DX (текстрежимы) Vk - C1
M069 чтение пиксела VS - C2
M070 обьем VV - C3
M030 фонты - C4
M071 рисунок в файл VO - C5
M072 рисунок из файла VI - C6
M073 линия VL - C7
M074 закраска области VZ - C8
M075 обьект мышки VM - C9
M076 распечатка знаков в графрежимах VA - CA
M077 выход W - CB
M078 корень кв из R-числа ^ - CC
M079 преобразование R-числа в 16-ричное Ш - CD
M080 преобразование R-числа в десятичное Д - CE
M081 синус R -числа s - CF
M082 чтение r-числа из текста в c:E в r<> ur - D0
M083 чтение числа из текста с адреса в c в двойное b в вещ виде - D1
M084 не использ - случайное для r S - D2
M094 очистка буфера клавиатуры Uk - D3
M106 распечатать EAX L4 - D4
M107 распечатать на экр текст с адр d:G Lt - D5
M137 установить цвета знака и его фона VC - D6
M167 окно VW - D7
M168 выделение памяти UP - D8
M169 удалить выделенный блок памяти UU - D9
M182 убрать окно Vw - DA
M235 выдать данные о блоке памяти номер AL Up - DB
M806 коорд курсора под мышкой Vm - DC
M201 звук UZ - DD
M102 чтение файла в расширпамять UI - DE
M047 поворот координат VU - DF
M312 кнопка VB - E0
M342 опред нажатия кнопки Vb - E1
M357 запись текста в текст редактора UW - E2
M354 RELPHI UF - E3
M362 рамка VQ - E4
M372 джойстик - E5
M373 запись блока расширпам в файл UO - E6
.
M000'запись символа в AL LA.[A AH,h0E`CD`10 ]A`CF
VG2
M001'запись символа и атрибута в AX La. [A[B BL,AH AH,h09 BHiBH`CD`10 ]B]A`CF

M003'распечатать AX L2. [A AL%AH L1 AL%AH L1 AL,h20 P127 ]A`CF
M127 :S sh30A6?h10<128 LA.M128 VA.

M002'распечатать AL L1.`FB [A AH,AL ALohF0 AL}h04 P005 AL,AH ALoh0F P005 ]A`CF
 M005 AL+h30 AL?h3A<006 AL+h07 M006 P127.

M106'распечатать EAX L4.`FB [B"[A BLiBL "AX}h10 AH%AL P239 AH%AL P239
"]A[A AH%AL P239 AL,AH ALohF0 AL}h04 P139 AL,AH ALoh0F P005 AL,' P127 ]A]B`CF
 M239 [A AH,AL ALohF0 AL}h04 P139 AL,AH ALoh0F P139 ]A.
M139 BLdAL AL+h30 AL?h3A<240 AL+h07 M240 AL?'1>127 BLoBL#127.

M008'побитовая распечатка AL LB.`FB
[A[C AH,AL CL,h07 M009 AL,AH AL}CL ALoh01 AL+h30 P127 )CL CL?hFF#009 ]C]A`CF

M004'распечатка текста LT. [:D[c c,SP c+H0006 :S DS,sc P015 ]c]:D`CF
 M015'вывод текста с адр в AX:D до точки.[d[D d,AX Zk :C sM096,DL
M017 AL,sd (d AL?h2E=016 AL?h06=097
AL?h07=143 AL?h09=039 AL?h0C=040 AL?h0B=041 AL?h0D=141 AL?h0A=142 AL?h08=144
AL?h0E=145 AL?h0F=146 P127 ALoAL#017 AL,sd (d P127 J017 M016 AX,d ]D]d.
M097'06-под начало предыд строки.:C DL,sM096 (DH J157
M039'09-табуляция.CL,h08 AL,' M042 P127 )CL#042 J017
M040'0C-очистка до конца строки. Lo J017
M041'0B-в начало следующей строки. Zk (DH DLiDL J157
M141'0D.Zk DLiDL J157
M142'0A-вниз.Zk (DH J157
M143'07-звонок.LA J017
M144'08-возврат на шаг.Zk )DL :S sh30CE?DL>157 :S DL,sh30CE )DL J157
M145'0E-вперед на шаг.Zk (DL J157
M146'0F-вверх.Zk )DH :S sh30CF?DH>157 :S DH,sh30CF )DH
M157 k J017 M096N

M107'распечатка на экр текста с адр d:G Lt. [:D AX,GS DS,AX AX,d P015 ]:D`CF

M010'по адресу в E:d распечатать число в AL Ld.
[A[C CL,AL AL}h04 P172 AL,CL P172 ]C]A`CF
M172 ALoh0F AL+h30 AL?h3A<018 AL+h07 M018 :E sd,AL (d.

M011'число AL на принтер LF. [A[C CL,AL AL}h04 P174 AL,CL P174 ]C]A`CF
 M174 ALoh0F AL+h30 AL?h3A<173 AL+h07 M173 [A[D DXiDX AHiAH`CD`17 ]D]A.

M012'знак в AL на принтер LP. P173`CF

M013'десятичная распечатка AX LД.
[A[B[D[C BLiBL DXiDX CX,Д10000 P251 CX,Д01000 P251
M098 CX,Д00100 P251 CX,Д00010 P251 AL+h30 P127 ]C]D]B]A`CF
M251 / ALoAL#253 BLoBL=254 M253 (BL AL+h30 P127 M254 AX,DX DXiDX.

M014'десятичная распечатка AL Lд. [A[B[D[C BLiBL AHiAH DXiDX J098

M033'клавиша K.AHiAH`CD`16
'щелчек."[A AL,hB6`E6`43 ALiAL`E6`42 AL,h02 :C sM021th01#160 AL,h0C
M160`E6`42`E4`61 ALdh03`E6`61 "AX,H0000`10`00 M019 ")AX#019`E4`61 ALohFC`E6`61
"]A :C sM021th01=023`CF M023'точка на доп. AX?H532E=194 AL?h20>024 M194`CF
M024 AL?h80<025`CF M025 [c[A AHiAH AX+M026 c,AX c-H0020 ]A :C AL,sc
[:G cic GS,c c,H0417 :G scth40#027 ]:G]c`CF
M027 ]:G]c AL?'б=028 AL?'ю=029 AL?'ж=029 AL?'э=029 AL?'х=029 AL?'ъ=029`CF
M029 AL-h30 M028 AL-h20`CF
M026T !Э#`24:`2Eэ()*+б-ю/0123456789ЖжБ=Ю?"ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯх|ъ,
`60фисвуап`E0шолдьтщзйкыегмцчняХ\Ъ~`FF.M021`01
M086'прерыв клавиатуры.`FA[A[B[:G`E4`60 AL?h1D#620 :C sM021ih01
BX,H0040 GS,BX BX,H0017 :G sBih40 BHiBH :C sM021th01#635 BH,h02
M635 AX,H1001`CD`10 J509
M620 AL?h57=508 AL?h58=508 AL?h36=508 M509]:G]B]A`FB`EA @M487NN @M488NN
M508 [C CH,AL CLiCL AH,h05`CD`16 ]C J509

M030'фонты. [A[B[C[D[:E[b AX,CS ES,AX b,M032 AX,H1100 BX,H1000 CX,H0080
DX,H0080`CD`10 ]b]:E]D]C]B]A`CF

M031'ошибка при делении.t Ошибка при делении .]A L2 t:.]A L2 K J101

M034'прерывание мышки.`FA"[V`E4`60 c,M802 :C c+sM099 :C sc,AL :C sM099+h01
:C sM099?h03<163 :C sM099,h00 [A :C c,M802 :C AL,sc ALoh07 :C sM045,AL
:C scohF0 :C sc?h00#308'вправо. (c :C AL,sc AHiAH b,AX 'вверх. AHiAH J390
M308 :C sc?h20#296'вправо. (c :C AL,sc AHiAH b,AX 'вниз. AH,hFF J390
M296 :C sc?h10#391'влево. (c :C AL,sc AH,hFF b,AX 'вверх. AHiAH J390
M391 :C sc?h30#390'влево. (c :C AL,sc AH,hFF b,AX 'вниз. AH,hFF
M390 (c :C AL,sc did d-AX :C sM044+d :C sM043+b ]A
 M163 AL,h60`E6`64 AX,H4000
M122 )AX#122 AL,h47`E6`60 AL,h20`E6`A0`E6`20"]V`FB`CF

M037'получить сдвиг мыши UM.`FA :C c,sM043 :C sM043,H0000
:C d,sM044 :C sM044,H0000 :C b,sM045 :C sM045,h00 `FB`CF
@M802NNNN@M043`00`00@M044`00`00@M045`00`00@M099`00`00

M035'прерывание таймера. [A[c AH,h12`CD`16 ALth10=232'если Scroll.
`FA c,SP c+H0004 :S sc,M095 (c(c :S sc,CS`FB
M232 ]c]A`EA @M411NN @M412NN
 M095 AX,H1000 UR AL,hA8`E6`21 AL,h20`E6`20 Uk AH,h01 DL,h80`CD`13 AH,h01
DLiDL`CD`13`CD`92

M046'записать AX в буфер клавиатуры UK. [C CX,AX AH,h05`CD`16 ]C`CF

M049'чтение из c:E 2-х цифр в CL, если AH=0,число считано правильно ZC.
)c P746 (c`CF

M050'чтен из c:E 4-ч цифр в CX (см предыдущее) Zc. )c P746 AHoAH#507
CH,CL P746 (c M507`CF
 M746 [A P207 AL{h04 CL,AL P207 CL+AL ]A AHiAH.
M207 (c :E AL,sc AL?h30<205 AL?h3A>206 AL-h30.
M206 AL?'A<205 AL?'G>205 AL-h37.M205 ]A]A AH,h01.

M051'растяжка в AX UR.`FB [A[C M394 CX,AX M385 [C]C )CX#385 )AX#394 ]C]A`CF

VG0
M076'распечатка знаков в графрежимах VA: 930FA-FB - коорд курсора,
930AE - буфер страницы, 930CE - число знаков в строке, 930CF - число строк,
AL - код знака, цвет опред командой VC.

`FB [:D[:F"[V ALoAL#155 :C sM153,h01 J124
M155 c,H9300 DS,c CX,sh00FA (sh00FA DL,sh00CE sh00FA?DL<140
sh00FB+h01 DL,sh00CF sh00FB?DL<165 sh00FB,h00 M165 sh00FA,h00
M140 FS,sh00AE c,CX coH00FF [A DL,CH DHiDH AL,sh00CE AHiAH * c+AX ]A
c?H0E80>087 :F sc,AL
M087 :C sM153?h00=154 :C sM153,h00 AL?h80<156 d,HC000 FS,d d,H28AD J152
M156 d,CS FS,d d,M038 J152
M154 AL?h80<151 d,CS FS,d d,M038 J152 M151 d,HC000 FS,d d,H28AD
M152 AHiAH AX{h04 d+AX DL,CH DHiDH CHiCH
sh00CC?H0010#125'16 цветов. BL,sh00F4 BH,sh00F7 AX,sh00C8 AX{h01 * AX+CX c,AX
ALiAL P229 DX,H03CE AX,H0205 DXpAX CX,sh00C8 CX}h03 CH,h10
M129 :E sc,BH :F AH,sd CH?h01#138 sh00A5th01=138 AH,hFF
M138 CH?h08#159 sh00A5th02=159 AH,hFF
M159 (d AL,h08 DXpAX :E AL,sc :E sc,BL AL,CL AHiAH c+AX )CH#129
AX,H0005 DXpAX AX,HFF08 DXpAX M124 "]V]:F]:D`CF
 M125 DX{h04 CX{h03 c,CX CH,h10
M134 [c CL,h80 M126 :F sdtCL#136 AX,sh00F7 BL,sh00F9
M135 c%CX VP (CX c%CX CL}h01#126 (DX(d ]c )CH#134 J124
M136 AX,sh00F4 BL,sh00F6 J135 M153`00
M229'запись видеостраницы.:S AL?sh309F=228 DX,H03D7 DXpAL :S sh309F,AL M228.

 M052'очистка экрана LO. [A[D[:F"[c[B[b[:D :C sM118,BL b,AX c,H9300 DS,c
c,HB800 FS,c cic BX,H0FA2 sh00A6?h12=489 BX,H07D2 sh00A6?h13=489
BX,H2582 sh00A6?h14=489
'очистка буфзнаков. c,H00AE FS,sc cic M088 :F sc,H0000 (c(c c?H0E80<088
sh00A6?h07<629 'CCCC цветов.BHiBH :C BL,sM118
 M388 [A cic DX,H03D4 AL,h1D AH,BH DXpAX ]A
M387 :E sc,AX (c(c :E sc,BL (c(c#387 (BH(BH BH?h3C<388
]:D]b]B"]c]:F]D]A`CF
 M629'16 цветов."cic c,sh00C8 R<<=c c,sh00CA R<<*c
R<<}01 BXiBX DX,H03CE AX,H0205 DXpAX cic M110 AX,c P229
M111 :E AL,sB AX,b :E sB,AL (BX#111 (c R<<-00010000?10000000 <110
DX,H03CE AX,H0005 DXpAX M114 ]:D]b]B"]c]:F]D]A`CF
 M489 :F sc,h20 (c :F sc,AL (c c?BX<489 J114 M118N

M053'запись пиксела VP. :S DX?sh30CA>829 :S CX?sh30C8>829
:S sh30CC?HCCCC=382
'16 цветов. [D[B[C[A BX,CX BX}h03 :S AX,sh30C8 AX}h03 * BX+AX
AL,h00`10`D0 P229 CLoh07 AX,H8008 AH}CL DX,H03CE DXpAX AX,H0205 DXpAX :E AL,sB
]A[A :E sB,AL AX,HFF08 DXpAX AX,H0005 DXpAX ]A]C]B]D`CF
 M382 "[d"[B[c[D"[A d,BX :S AX,sh30C8 * BX,DX "BX{h10 BX,AX "AXiAX AX,CX "BX+AX
"BX{h02 c,BX "BX}h0F :S BL?sh309F=386 DX,H03D4 AL,h1D AH,BL DXpAX :S sh309F,BL
M386 "d{h10 "]A d,AX :E "sc,d ]D]c"]B"]d M829`CF

 'M822 режим работы в защищреже 640*480*4 и 800*600*4.
 'мой GeForce FX 5200 имеет в расширпамяти участок видеопамяти с адреса D0000000;
в режимах 32-битного цвета каждая точка на экране имеет 4 байта в этой памяти.
 "[A[D[A :S AX,sh30C8 * d,DX "d{h10 d,AX "d+CX "d{h02 "d+H0000`00`D0
DX,BX "DX{h10 ]A DX,AX 'в d -адр памяти этой точки; в "DX -ее цвет.
`FA [:D 'загрузить регистр глоб дескр табл. BX,M674 :C`0F`01`17
'войти в защищреж.`0F`20`C0 AXdH0001`0F`22`C0 J675
M675 AX,H0008 DS,AX
'переслать.  `66`67 sd,DX
'выйти из защищрежа.`0F`20`C0 AXiH0001`0F`22`C0 ]:D]D"]A"]d`FB`CF

M054'считывание атрибута  и знака ZA.[c[:D :S sh30A6?h10>164
[A[D :S c,sh30FA coH00FF :S DL,sh30FB DHiDH :S AL,sh30CE AHiAH * :S DS,sh30AE
c+AX ]D]A ALiAL c?H0E80>166 AL,sc J166
M164 [B AH,h08 BHiBH`CD`10 ]B M166 ]:D]c`CF

M055'вывести курсор k. [c[D[A[B AH,h02 BXiBX`CD`10 ]B]A
:S DH?sh30CF<147 DHiDH
M147 :S DL?sh30CE<148 DLiDL (DH :S DH?sh30CF<148 DHiDH
M148 :S sh30FA,DX ]D]c`CF

M056'очистка строки от курсора до конца Lo.`FB[:D[c c,H9300 DS,c sh00A6?h10>158
]c]:D [A[D Zk [D M150 Zk DLoDL=149 AL,' P127 J150 M149 ]D k ]D]A`CF
 M158 ]c]:D[A[B[C[D[c AH,h03 BHiBH`CD`10 c,DX DHiDH CX,H0050 CX-DX ZA AL,'  La
DX,c AH,h02 BXiBX`CD`10 ]c]D]C]B]A`CF

M057'случайное US; входное-выходное RSL и "AX.
`FB [:D[c R<?=RSL[0E R??=RSL]07 RSL[0AdR??
AX,H0040 DS,AX c,sh006C AX,sh
 "AX{h08 "c+AX RSL+c+R<? ]c]:D`CF

M058'расширпамять Ur: R00 -откуда, R01 -куда,R02 -сколько в абс величинах.
"[A R02oR02 =161
[B"[C"[c"[d R===R01+R02 "CX,AX
R01"c,AX R00"d,AX 'запретить прерывания.`FA [:D
        'адрес таблицы глоб дескрипторов "AXiAX AX,CS"AX{h04
        "AX+M672`00`00 'переслать в регист дескр табл c,M673 :C"sc,AX.
'загрузить регистр глоб дескр табл. BX,M674 :C`0F`01`17
'войти в защищенный режим.`0F`20`C0 AXdH0001`0F`22`C0 J381
'сброс очереди,перезагрузка сегментных регистров.
M381 AX,H0008 DS,AX
M676'переслать. "c?CX>131 `67`8A`07 `67`88`06 "(d"(c J676
M131`0F`20`C0 AXiH0001`0F`22`C0
]:D"]d"]c"]C]B M161"]A`FB`CF
M672'нулевой дескриптор.`00`00`00`00`00`00`00`00
'дескр сегм данных. `FF`FF 'предел. `00`00 'база.
`00 'база.`92 'байт прав доступа для сегмента данных R/W.
`8F 'предел и GDXU. `00 'база.
M674'GDTR. `18`00 @M673`00`00`00`00

M061'комстрока Us. [V[:D :S DS,sh30C2 Zk :C sM089,DX :C sM276,h01
M281'найти 0D. did cic M866 sc?h0D=893 (c c?H0020<866 cic sc,h0D
M893'вывод строки.cic :C DX,sM089 k M863 AL,sc ALoAL#891 P127 (c AL,sc J862
M891 AL?h0D=892 M862 P127 (c c?d#863 Zk J863
M892 :C sM112%c :C sM112?c>113 :C c-sM112 M115 AL,' P127 )c#115
M113 AL,' P127 [D Zk :C sM282,DX ]D
'показать курсор в графреже.k AL,sd AL?h0D#876 AL,'
M876 ALoAL#865 P127 (d AL,sd )d
M865 :S DX,sh30F4 :S sh30F7%DX :S sh30F4,DX :S DL,sh30F6 :S sh30F9%DL
:S sh30F6,DL P127 :S DX,sh30F4 :S sh30F7%DX :S sh30F4,DX :S DL,sh30F6
:S sh30F9%DL :S sh30F6,DL t`08.
M864 Vm AXoAX=267 ALoAL=252 AL?h08=259 AL?h0D=255 AH?h01=256
'раздвинуть. M265 d?H0020>893 c,H001F BX,c )BX [A
M258 AL,sB sc,AL )c)BX d?c<258 ]A'вставить знак. sd,AL (d J893
M259'забой. dod=864 )d dod=261 )d sd?h00=261 (d
M261'del. sd?h0D=893 BX,d c,d (c M260 AL,sc sB,AL (c(BX BX?H0020#260 J893
 M252 AH?h4D=860 AH?h4B=861 AH?h48=869 AH?h50=868 AH?h53=261 AH?h58=769
AH?h47=273 AH?h4F=274 AH?h3D=263 AH?h3C=290 J864
 M860 sd?h0D=864 sd?h00#257 (d M257 (d J893
M861 dod=864 )d dod=893 )d sd?h00=893 (d J893
 M869'вверх.:C AL,sM276 AL?h07>278 :C sM276+h01 J279
M278 :C sM276,h01 M279 :C DL,sM276 AX,H0020 DHiDH * did c,AX
M277 AL,sc sd,AL (c(d d?H0020<277
M284'убр предыд с экрана -F12.
:C DX,sM089 k AL,' M283 P127 Zk :C DX?sM282<283 J281
 M868'вниз. :C AL,sM276 AL?h01=280 :C sM276-h01 J279
M280 :C sM276,h07 J279
 M769'новое; отодвинуть.c,H00DF BX,H00FF M262 AL,sc sB,AL )c)BX BX?H001F#262
cic sc,h0D J284
 M263'F3 -знаки.VЗ AHoAH=264 J265
M264 c,H001F BX,c )BX)BX [A
M268 AL,sB sc,AL )c)BX d?c<268 ]A'вставить AX. sd,AH (d sd,AL (d J893
 M290'F2 -каталог.VK :C sM370?h01#371 AX,H01D1 VB M371 ]:D]V J061
 M256'выход Esc.]:D]V AH,h01`CF
 M255'выход Ok.:C DX,sM282 k ]:D]V AHiAH`CF
 M267'клав мыши. b?H0003=864 :C sM370,h00 Vb AHoAH#367 AL?hD0#368'Ok.J255
M368 AL?hD1#369'каталог. AH,h02 VB :C sM370,h01 J290
M369 AL?hD2#367'Esc.J256
M367'найти нач слова. cic M269 k ZA AL?h41<272 DLoDL=270 )DL J269
'переслать.M272 (DL M270 k ZA AL?h41<271 sc,AL (c(DL c?H001F#270
M271 sc,h0D did J893
 M273'HOME. did J893
 M274'END. did M275 sd?h0D=893 (d J275
M089NNM276NM282NNM370NM112`10`00

M059'чтение положения курсора Zk.[c[C[:D c,H9300 DS,c sh00A6?h10<133
[A[B AH,h03 BHiBH`CD`10 ]B]A]:D]C]c`CF
M133 DX,sh00FA ]:D]C]c`CF

M060'проверка нажатой клавиши ZK, если =0 - нет, если #0 - в AX код.
AH,h01`CD`16=767 K`CF M767 AXiAX`CF

M062`CF

M063'таймер UT; AX -сколько секунд,CL -команда (0 -поставить период AX,
01 -поставить будильник AH -часы,AL -минуты,02 -снять),E:BX -обработчик.
 [A[D CL?h02=775 :C sM090,AX :C sM091,AX :C sM779,BX :C sM780,ES
[c[:G AXiAX GS,AX`FA c,H01C0 AX,M786 CL?h01=783 AX,M777 CLoCL=162 J784
 M783 [A AL,h01`E6`70 ALiAL`E6`71 AL,h03`E6`70 :C AL,sM090`E6`71 AL,h05`E6`70
:C AL,sM092`E6`71 ]A M162 :G sc,AX (c(c :G sc,CS`E4`A1 ALohFE`E6`A1
AL,h0B`E6`70 AL,h22 CL?h01=022 AL,h12
M022`E6`71 P020 M784 ]:G]c]D]A`CF
 M775 AL,h0B`E6`70 AL,h02`E6`71 ]D]A`CF
 M777 [A :C )sM091#778 :C AX,sM090 :C sM091,AX ]A
M786 [A P020 ]A`EA @M779NN @M780NN
M778 P020 ]A`CF M090N@M092NM091NN
M020`FA AL,h0C`E6`70`E4`71 AL,h20`E6`20`E6`A0`FB.

M064'текст t.:C sM085,SP [c[B[A :C c,sM085 :S AX,sc (c(c :S BX,sc
[:D DS,BX BL,hFF P015 ]:D :C c,sM085 :S sc,AX ]A]B]c`CF M085NN

M065'поиск слова Y из :G-[0000] до <ВК>, в :E-c EBX байт; нашел,если EBX#0.
`FB [A"[d M332"did M104 :G sd?h0D=234 :E AL,sc")BX=327 (c#233
[A AX,ES AX+H1000 ES,AX ]A M233 :G AL?sd#132 (d J104
M132 "BX+d c-d >332 AX,ES AX-H1000 ES,AX J332
M234 "BX+d c-d >327 AX,ES AX-H1000 ES,AX M327"]d]A`CF

M066'видеорежим.[:D[c c,H9300 DS,c ]c sh009F,hFF :S sh30C5,hFF
AH?'1=535 AH?'2=545 AH?'7=827 AH?'8=828 ]:D`CF
 M535 sh00A6,h01 [A AX,H0012`CD`10 sh00C8,Д00640 sh00CA,Д00480 sh00CC,H0010
rXG=140 rYG=F0 rZG=2D0 sh00CE,H1E50
M525'шрифт пользователя для графрежимов.
[B BHiBH :C sM021th01#176 BH,h02 M176 AX,H1001`CD`10 ]B AX,HA000 ES,AX ]A]:D`CF
 M545 sh00A6,h02 [A AX,H0058`CD`10 sh00C8,Д00800 sh00CA,Д00600 sh00CC,H0010
rXG=190 rYG=12C rZG=384 sh00CE,H2564 J525
 M827 sh00A6,h07 [A AX,H0022`CD`10 sh00C8,Д00800 sh00CA,Д00600 sh00CC,HCCCC
rXG=190 rYG=12C rZG=384 sh00CE,H2564 P383 J525
 M828 sh00A6,h08 [A AX,H0021`CD`10 sh00C8,Д00640 sh00CA,Д00480 sh00CC,HCCCC
rXG=140 rYG=F0 rZG=2D0 sh00CE,H1E50 P383 J525
 M383 DX,H03C4 ALpDX
DX,H03CE ALpDX
DX,H03CC ALpDX
DX,H03D4 ALpDX AL,h1F DXpAL
DX,H03D5 ALpDX AL,h57 DXpAL
DX,H03D4 AL,h38 DXpAL
DX,H03D5 ALpDX
DX,H03D4 AX,H0538 DXpAX
DX,H03D0 AXpDX
DX,H03D2 AXpDX
DX,H03CC ALpDX
DX,H03D4 AL,h44 DXpAL AXpDX AX,H0344 DXpAX
DX,H03CC ALpDX
DX,H03D4 AL,h4C DXpAL AXpDX AX,H0444 DXpAX
DX,H03CC ALpDX
DX,H03D4 ALpDX AX,H0029 DXpAX AL,h1D AH,BH DXpAX AL,h44 DXpAL
DX,H03CC ALpDX
DX,H03D4 ALpDX  AX,H0029 DXpAX  AX,H141E DXpAX AL,h44 DXpAL.

M067'текстовый режим.[:D[c c,H9300 DS,c ]c AH?'0=536 AH?'1=494 AH?'2=621`CF
 M536 [A AX,H0003 sh00A6,h12 sh00CE,H1950
M709`CD`10 [B AX,H1003 BLiBL`CD`10 ]B]A`CD`C4 ]:D`CF
 M494 [A AX,H0001 sh00A6,h13 sh00CE,H1928 J709
 M621 [A AX,H0023 sh00A6,h14 sh00CE,H3C84 J709

M068'знак в AL с цветом AH вписать в экран коорд DX Vk (текстрежимы).
[c[:G[A AX,HB800 GS,AX P100 ]A:G sc,AX ]:G]c`CF
 M100 AL,DH AHiAH cic M120 ALoAL=119 )AX c+H0050 J120
M119 AL,DL AHiAH c+AX c{h01.

M069'чтение пиксела VS.`FB :S DX?sh30CA>093 :S CX?sh30C8>093
:S sh30CC?H0010=527
'32 бита.[c[D :S AX,sh30C8 * BX,DX "BX{h10 BX,AX "AXiAX AX,CX "BX+AX
"BX{h02 c,BX "BX}h0F :S sh30C5?BL=389 DX,H03D4 AL,h1E AH,BL DXpAX :S sh30C5,BL
M389 :E AX,sc (c(c :E BX,sc ]D]c M093`CF
 M527'16 цветов. AH,h0D`CD`10 `CF

M070'обьем VV; rXG,rYG, -коорд горизонта на экране; rZG -расстояние от экрана
до глаз - эти данные определяются оператором входа в графрежим;
на вход подаются rXV,rYV,rZV; на выходе -DX-CX коорд точки на экране.
rZV?.01 <286 "[b r===rZG/(rZG+rZV) r;;=rYG-(rYV*r==)b DX,b r;;=rXG+(rXV*r==)b
CX,b "]b M286`CF


M071'рис в файл с именем в 95F00 (VO).
"[V[:D[:F [c "cic :S c,sh30A0 DS,c "c{h04 R??=RVG-coFFFF0000 :C "sM305,AX ]c
b,H95F0 FS,b "bib :C sMA35,h00 DX+d )DX b,c r??=b
[c cic 'заголовок. sc,H4D42 c,H0012 "sc,b c,H0016 sc,d (c(c sc,H0000 "AXiAX
c,H000A "sc,H0076`00`00 c,H000E "sc,H0028`00`00 c,H001A sc,H0001 c,H001E
"sc,AX c,H0022 "sc,AX c,H0026 "sc,H0ECE`00`00 c,H002A "sc,H0EC4`00`00
c,H002E "sc,AX c,H0032 "sc,AX
'перегнать изобр в память. "cic :S sh30CC?H0010=A02
 '16млн цв. r??*3b boH0003 r??+4-b b,d r??*b+76b c,H0002 "sc,b
c,H001C sc,H0018 c,H0076 "bib ]b
MA12 [b[C MA38 VS sc,AL PA40 sc,AH PA40 sc,BL PA40 (CX)b#A38 ]C P2A3 ]b
)DX)d#A12
MA03 "coc=A06 P304 MA06 :C sM298,h00 MA11 ]:F]:D"]V :C AH,sM298`CF
 MA02'16 цв. r??/2ob boH0003 r??+4-b b,d r??*b+76b
c,H0002 "sc,b c,H001C sc,H0004 c,H0076 BXiBX
M295 P294 (BX BX?H0010<295 c,H0076 "bib ]b
MA15 [b[C MA50 VS BH,AL (CX VS BH{h04 ALdBH sc,AL PA40 (CX)b=A04 )b#A50
MA04 P2A3 ]C]b )DX)d#A15 JA03
 MA40 "(c :C "sM305?c =304 coc=A44. MA44 [A AX,DS AX+H1000 DS,AX ]A.
M304 [V "CX,c :S c,sh30A0 [:E ES,c BXiBX cic :C sMA35?h00#A46 AH,h02
MA45 ud :C sMA35,h01 ]:E :C sM298,AH AHoAH#A48 :S DS,sh30A0 ]V "cic M291.
MA46 AH,h03 JA45
MA48 ]V"]A]A JA11
 M2A3 BX,c BL-h02
M292 BLoh0F BLoBL=291 BL?h04=291 BL?h08=291 BL?h0C=291 PA40 (BL J292
 M294 [C[D AX,H1015`CD`10 CX{h02 DH{h02 sc,CX (c(c sc,DH (c sc,h00 ]D]C.
MA35NNM305NNNN

M072'VI - ввод файла BMP по имени в H95F00 на экран;
DX/CX - верхний левый угол рисунка;
если получилось,на выходе AH=0, AL -число цветов, c/d -длина/высота изобр.

[B"[C[D[:F[:D d,DX :S c,sh30A0 DS,c
[:E[C ES,c BXiBX c,H95F0 FS,c cic "CX,H0000`01`00 AHiAH ud ]C]:E :C sM298,AH
:C sMA35,b DX,sh0016 [D b,sh0012 [b DX+d )DX c,sh000A AL,sh001C [A AHoAH#B09
AL?h01=B17 AL?h02=B15 AL?h04=B13 AL?h08=B07 AL?h10=B10 AL?h18#B09
MB01 [C[b MB00 AL,sc PB03 AH,sc PB03 BL,sc PB03 AL?hFF#306 )AL
M306 VP (CX)b#B00 ]b]C P297 DX?HF000>B09 DX?d>B01
MB09 ]A]c]d]:D]:F]D"]C]B :C AH,sM298 :C b,sMA35`CF
 MB07'256 цв. [C[b MB08 AL,sc PB03 VP (CX)b#B08 ]b]C
P297 DX?HF000>B09 DX?d>B07 JB09
 MB10'65000 цв. [C[b MB11 AL,sc PB03 AH,sc PB03 AX?HFFFF#307 )AX
M307 VP (CX)b#B11 ]b]C P297 DX?HF000>B09 DX?d>B10 JB09
 MB13'16 цв. [C[b MB14 AL,sc BL,AL AL}h04 VP (CX)b=349
AL,BL VP PB03 (CX)b#B14
M349 ]b]C P297 DX?HF000>B09 DX?d>B13 JB09
 MB15'4 цв. [C[b MB18 AL,sc BL,AL AL}h06 ALoh03 VP
AL,BL AL}h04 ALoh03 VP AL,BL AL}h02 ALoh03 VP
AL,BL ALoh03 VP (CX)b#B18 ]b]C P297 DX?HF000>B09 DX?d>B15 JB09
 MB17'2 цв. [C[b MB19 AL,sc BL,AL AL}h07 ALoh01 VP AL,BL AL}h06 ALoh01 VP
AL,BL AL}h05 ALoh01 VP AL,BL AL}h04 ALoh01 VP AL,BL AL}h03 ALoh01 VP
AL,BL AL}h02 ALoh01 VP AL,BL AL}h01 ALoh01 VP AL,BL ALoh01 VP
(CX)b#B19 ]b]C P297 DX?HF000>B09 DX?d>B17 JB09
 MB03 (c=B04.
MB04 [A[B[C[b[:E :S c,sh30A0
ES,c BXiBX cic "CX,H0000`01`00 AH,h01 :C b,sMA35 ud :C sMA35,b
]:E]b]C]B cic :C sM298,AH AHoAH=A10 ]A]A]A]A JB09
MA10 ]A.
M297 BX,c BL-h02
M350 BLoh0F BLoBL=352 BL?h04=352 BL?h08=352 BL?h0C=352 PB03 (BL J350
M352 )DX.
M298N


M073'линия VL.
"[A[C[D :C sM204,AX :C sM285,BL
RX1?00000320 >760 RX2?00000320 >760 RY1?00000320 >760 RY2?00000320 >760
RX1?RX2 <750 R??=RX1-RX2 R?:=RX2 R?;=RY2 R>>=RY1J751
M750 R??=RX2-RX1 R?:=RX1 R?;=RY1 R>>=RY2
M751 RY1?RY2 <752 R::=RY1-RY2 R?<=RY2 R?>=RX2 R<<=RX1 J753
M752 R::=RY2-RY1 R?<=RY1 R?>=RX1 R<<=RX2
M753 R::?R?? <754 R::?00000000 =760
R??*00011000/R::( R?==R?:*00011000 R::=00000001 R?;?R>> <755 R::=FFFFFFFF
M755 R?: CX,AX R?; P649 R?;?R>> =760
R?=+R?? R?:=R?=/00011000 R?;+R:: J755 M760 ]D]C"]A`CF
 M754 R::*00011000/R??( R=?=R?<*00011000 R??=00000001 R?>?R<< <758 R??=FFFFFFFF
M758 R?> CX,AX R?< P649 R?>?R<< =760 R=?+R:: R?<=R=?/00011000 R?>+R?? J758
 M649 DX,AX :C AX,sM204 :C BL,sM285 VP. M204NNM285N

 M074'закраска области VZ (только 24-битный цвет); CX-DX -коорд точки;
AX-BL -цвет закраски; b-BH -цвет границы; требует 1 страницу памяти.
 [:D[V :S DS,sh30A0 did cic [A[B VS b?AX#B20 BL?BH#B20 ]B]A JB37
MB20 ]B]A :C sMB32,AX :C sMB33,BL VP PB23
MB27 :C sMB38,d
MB31 CX,sc (c(c DX,sc (c(c
[A[B VS :C sMB32?AX#B36 :C sMB33?BL#B36 ]B]A JB35
MB36 ]B]A VP PB23
MB35 :C sMB38?c#B31 :C sMB38?d#B27 MB37 ]V]:D`CF
 MB23'запомнить адреса верх,нижн и боковых точек,если они не цвета границы или
закраски. [C[D[A[B )DX PB26 (DX(DX PB26 )DX)CX PB26 (CX(CX PB26 ]B]A]D]C.
 MB26 VS b?AX#B24 BL?BH=B25
MB24 :C sMB32?AX#B34 :C sMB33?BL=B25 MB34 sd,CX (d(d sd,DX (d(d MB25.
MB32NNMB33NMB38NN

M075'обьект мышки VM.`FB "[A R?<=RVM AX?DX#511 R?<}10 AX?CX#511"]A`CF
M511 [B[b[d"[c[D[C :F b,sc AX,b (c(c :F DX,sc BX,DX * (c(c d,c DX,AX
AX{h01 AX+DX d+AX R?<=RVM DX,AX R?<}10 CX,AX [d[b
M512 [C[B
 M513 [B :F AX,sd (d(d :F BL,sd AL?hFF=514 VP M514 ]B (d(CX)BX#513
]B]C (DX)b#512 ]b]d]C]D[D
M520 [C[B
 M521 [B :F AX,sc (c(c :F BL,sc AL?hFF#524 :F sd,AX (d(d :F sd,BL J523
M524 [A[B VS :F sd,AX (d(d :F sd,BL ]B]A VP
 M523 ]B (c(d(CX)BX#521
]B]C (DX)b#520 ]D c,CX"c{h10 c,DX RVM=c "]c]d]b]B"]A`CF

M077'выход W. SP+H000A SP?HFBF0#580
M101'в REDER.":S AX,sh30DC":C sM108,AX J109
M109`EA @M108NNNN
M580 t`07T СТЕК? . AX,HFBF0 AX-SP L2 K J101

M078'корень квадратный из R-числа.
"[C"[c"c,AX"CX,AX R?>=c"`0F`BD`F0 c}h01 (c R?>}co0001FFFFd00000001
"c,CX CL,h04 M604 R?>=c/R?>+R?>}01 )CL#604 "]c"]C`CF

M079'преобразование R-числа в 16-ричное.
"[c "c,AX R?:iR?: R?;=R?:( R?<=R?:
M599 R?<=c}R?:o0000000F*R?;+R?< R?;*0000000A R?:+00000004 AL?h20<599
R?<=R?< "]c`CF

M080'преобразование R-числа в десятичное."[c "c,AX R?>=c R?;iR?; R?:=R?;
M609 R?>/0000000A "c,DX R?:=c{R?;+R?: R?;+00000004 AL?h20<609 R?:=R?:
"]c`CF

M081'синус R -числа s.
"[c"[D"c,AX R?<=c/00044000 "c,DX R?<=c?00011000<631 R?<?00022000<632
R?<?00033000<633 R?<-00033000 R?<=00011000-R?< R?<*R?<\00046100 J634
M631 R?<*R?<\00046100 J634
M632 R?<-00011000 R?<=00011000-R?< R?<*R?<\00046100 R?<=00008400-R?< J634
M633 R?<-00022000 R?<*R?<\00046100 R?<=00008400-R?< M634"]D"]c`CF

M082'чтение r-числа из текста в c:E в r<> ur. [b`CD`D1":S sh0848,b ]b`CF

M083'чтение числа из текста с адреса в c в двойное b в вещ виде;
если AH=0 - получилось.
"[d[C"[D"bib"did"AXiAX CLiCL
DXiDX :E AL,sc AL?'-#211"bdH0000`00`80 M222 P300 :E AL,sc
M211 P212 AL?hFF=217 (DL DL?h07=224"d{h04 ddAX J222
M217 :E AL,sc AL?'.#216 ALiAL CLoCL#221 DH,DL DH{h02 (CL J222
M224 :E AL,sc
M216 CLoCL#220 DH,DL DH{h02
M220 DL{h02 CXiCX AL?'e#219 P300 :E CH,sc CH?'-=218 P302
M218 P300 ZC AL,h01 AHoAH#221 AL,h02 CL?h20>221 CL{h02 CH?'-#219`F6`D9
M219"d?H0000`00`00#130"bib P302 "]D]C"]d`CF
M130 DH+h7F DH+CL"`0F`BD`C7 DH+AL DH-DL CL,h17 CL-AL
"DXoHFF00`00`00"DX{h0F"d{CL"bdd"boHFFFF`7F`FF"bdDX P302"]D]C"]d`CF
M212'чтение одной цыфры. AL?'0<213 AL?':>214 AL-h30.
M214 AL?'A<213 AL?'G>213 AL-h37.
M213 AL,hFF.
M221"]D]C"]d AL,hA0`CF
M300 (c=301.M301 c,ES c+H1000 ES,c cic.
M302 )c c?HFFFF=303.M303 c,ES c-H1000 ES,c c,HFFFF.

M084'не использ - случайное для r. "[A US "]A`CF

M094'очистка буфера клавиатуры.[A
M230 AH,h01`CD`16=202 AHiAH`CD`16 J230 M202 ]A`CF

M137'установить цвета знака (CX,BH) и его фона (AX,BL) VC - D6.
[:D[c c,H9300 DS,c c,H00F4 sc,CX (c(c sc,BH (c sc,AX (c(c sc,BL ]c]:D`CF

M167'окно VW; DX -верхлев угол (как курсор), CX -(высота,длина) в знаках,
VC -цвет знака и фона, AX:D -адр текста; на выходе -AL -номер окна.
`FB :C sM181,AX :C AL,sM183 (AL AL?h05<185'не более 4-х окон.`CF
M185 k :C sM183,AL'увелич счет окон. [B[C[D[b"[c[d[:F
'сохранить коорд начала окна. )AL
BX,DX AHiAH DX,H0005 * c,AX c+M184 :C sc,BX (c(c :C sc,CX (c(c [c
"cic 'сохранить R-числа. R<>=R00 R><=R01 R<<=R02 R::=RRR
'рассчет обьема памяти для сохр точек экрана и буфера знаков в расширпамяти.
c,CX RRR=co000000FF{03(( b,AX R>>=c}08{04(( d,AX RRR*R>>*00000003 AX,CX DX,CX
AXoH00FF DX}h08 * c,AX RRR+c UP ]c AHoAH#192
'сохр ном запр памяти.:C sc,AL
'сначала запис в буфер величиной в 1 страницу.
[:D :S c,sh30A0 :S AL,sh30CE :C sM226,AL :S FS,sh30AE DS,c
R00=c{04 R01=RRP R02=00010000 DX,BX cic [D[C[d
'сначала знаки.M187 [C[D
M186 [D d,DX doH00FF AL,DH AHiAH :C DL,sM226 DHiDH * d+AX ]D :F AL,sd
sc,AL (DL(c)CL#186 ]D]C (DH)CH#187 ]d
'первая точка окна.
DHiDH DX{h03 CX,BX CX}h08 CX{h04 DX%CX )DX)CX :C sM208,CX :C sM209,DX
'сохранить точки окна.:S sh30CC?H0010=380 [d
M190 [C[b M188 VS sc,AL P189 sc,AH P189 sc,BL P189
(CX)b#188 ]b]C (DX)d#190 ]d coc=192 R02=c( Ur
M380'печать текста. :C AX,sM181 ]C]D]:D P015
'кант.:C CX,sM208 :C DX,sM209 AX,HFEFE BL,hFE
[C[b M210 VP (CX)b#210 ]b]C [d M215 VP (DX)d#215 ]d
)DX AXiAX BLiBL M223 VP (CX)b#223 )CX M225 VP )DX)d#225
M192'все восстановить. R00=R<> R01=R>< R02=R<< RRR=R::
:C AL,sM183 ]:F]d"]c]b]D]C]B`CF
M189'если промежуточный буфер полон. (c=191.M191 [A Ur R01+R02 ]A.
M181NNM183`00 M184NNNNN NNNNN NNNNN NNNNN M208NNM209NNM226N

M182'убрать верхнее окно Vw; на выходе -AL -номер убранного окна.
`FB :C AL,sM183 ALoAL#193'нечего убирать.`CF
M193 )AL :C sM183,AL [B[C[D[b"[c[d[:D[:F
'прочитать данные из буфера данных окна с номером AL.
AHiAH DX,H0005 * c,M184 c+AX :C DX,sc (c(c :C CX,sc (c(c :C AL,sc BH,AL Up
'сохранить R-числа.R<>=R00 R><=R01 R<<=R02
'определить промежбуфер величиной в 1 страницу.
R00=RRP "cic c,H9300 DS,c BL,sh00CE FS,sh00AE c,sh00A0 DS,c
R01=c{04 R02=00010000 Ur cic [D[C
'сначала поставить на место знаки в буфере знаков.
M196 [C[D M195 [D d,DX doH00FF AL,DH AHiAH DL,BL DHiDH * d+AX ]D AL,sc
:F sd,AL (DL(c)CL#195 ]D]C (DH)CH#196 ]C]D
'длины сторон окна.
[c c,CX R>>=co000000FF{03(( b,AX R>;=c}08{04(( d,AX ]c
'первая точка окна.
CX,DX DX}h08 DX{h04 CHiCH CX{h03 )DX)CX
'восстановить изображение.
M199 [C[b M200 AL,sc P197 :S sh30CC?H0010=309 AH,sc P197 BL,sc P197
M309 VP (CX)b#200 ]b]C (DX)d#199
'восстановить R-числа, удалить запроспамяти.
R00=R<> R01=R>< R02=R<< AL,BH UU :C AL,sM183 (AL ]:F]:D]d"]c]b]D]C]B`CF
M197'если промежуточный буфер выбран. (c=198.M198 [A R00+R02 Ur ]A.

 M168'выделение памяти UP; RRR - обьем;  на выходе если AH=0, RRP -адр блока,
AL - номер блока (0-7F), если AH#0, AH -номер ошибки.
`FB [:D"[c[d :S DS,sh30FC did M170"sd?H0000`00`00=171
d+H0008 d?H0400<170 'не хватило номеров.AH,h02 J175
M171 :S"AX,sh30E0"sd,AX"c,AX RRP=c R??=c+RRR?10000000<177 AH,h01 J175
M177 :S"sh30E0,AX c,d d+H0004 RRR"sd,AX c}h03 AX,c AHiAH
M175 ]d"]c]:D`CF

 M169'удалить выделенный блок памяти номер AL UU; AH -номер ошибки,если AH#0.
`FB [:D"[c[d"[A :S DS,sh30FC AHiAH d,AX d{h03"c,sd"sd,H0000`00`00
R<>=R00 R><=R01 R<<=R02
R01=c?00000000#178"]A AH,h01 J179
M178 d+H0004"c,sd "sd,H0000`00`00 R00=R01+c?R01>180"]A AH,h02 J179
M180 :S"c,sh30E0 R02=c-R00 Ur R::=R00-R01 R:;=R01+R02
:S"sh30E0,AX"c,AX RRP=c did R01"c,AX
M236"c?sd>237 R:: "sd-AX M237 d+H0008 d?H0400<236
R00=R<> R01=R>< R02=R<< "]A AHiAH M179 ]d"]c]:D`CF

 M235'Up -выдать данные по блоку номер AL; в RRP -адрес, в RRR -обьем.
[:D[d"[c[A :S DS,sh30FC AHiAH d,AX d{h03"c,sd RRP=c d+H0004"c,sd RRR=c
]A"]c]d]:D`CF

M238'прерыв 3 (контрточка) n.
:C sM347,SP"[V"[F[:D[:S[:E[:F[:G AX,HA000 ES,AX Zk :C sM351,DX
DX,H0500 k :C c,sM347 :S AX,sh30F4 [A :S AX,sh30F6 [A :S AX,sh30F8 [A
:S sh30F4,H7777 :S sh30F6,H0077 :S sh30F8,H0000 :C sM318,c
AL,' P127 :S AX,sc BX,AX L2 t`08:.(c(c :S AX,sc DS,AX L2 (c(c :S d,sc t`0B`60.
 M704 :C sM311,BX "AX,sB :C "sM319,AX AL%AH
[A P468P468P468P468P468P468 t`08 `0B .]A CXiCX
'дизасемблер.
AL,'+ AH?h06<744 AL,'[ AH?h06=744 AH?h0E=744 AH?h16=744 AH?h1E=744
AL,'] AH?h07=744 AH?h17=744 AH?h1F=744 AL,'d AH?h0E<744 AL,'+ AH?h16<744
AL,'- AH?h1E<744 AL,'o AH?h26<744 AL,': CL,'E AH?h26=744 CLiCL
AL,'Д AH?h27=744 AH?h2F=744 AH?h37=744 AH?h3A=744
AL,'- AH?h2E<744 AL,': CL,'C AH?h2E=744 CLiCL
AL,'i AH?h36<744 AL,': CL,'S AH?h36=744 CLiCL AL,'? AH?h3E<744
AL,': CL,'D AH?h3E=744 CLiCL AL,'( AH?h48<744 AL?') AH?h50<744
AL,'[ AH?h58<744 AH?h68=744 AH?h6A=744 AL,'] AH?h62<744 AH?h8F=744
AL,' AH?h64<744
AL,': CL,'F AH?h64=744 CL,'G AH?h65=744 CLiCL AL,' AH?h68<744 AL,'* AH?h69=744
AH?h6B=744 AL,'п CL,'ц AH?h70<744 AL,'J CLiCL AH?h80<744 AL,' AH?h84<744
AL,'t AH?h86<744 AL,'% AH?h88<744 AL,', AH?h8F<744 AL,'% AH?h98<744
AL,'з CL,'p AH?h9A<744 AL,'p CL,'M AH?h9A=744 AL,'W CLiCL AH?h9B=744
AL,'[ CL,'F AH?h9C=744 AL,'] CL,'F AH?h9D=744 AL,', CL,'F AH?hA0<744
AL,', CLiCL AH?hA6<744 AL,'t CLiCL AH?hAA<744 AL,', AH?hAE<744 AL,'? AH?hB0<744
AL,', AH?hC0<744 AL,'{ CL,'} AH?hC2<744 AL,'. CL,'. AH?hC2=744 CLiCL
AL,'. AH?hC3=744
AL,', AH?hC8<744 AL,'S CL,'K AH?hCA<744 AL,'. CL,'. AH?hCC<744
AL,'I CL,'3 AH?hCC=744 CL,h07 AH?hCD=744 CL,'4 AH?hCE=744 CL,h07 AH?hCF=744
AL,'{ CL,'} AH?hD4<744 AL,'Д CLiCL AH?hD7<744 AL,', AH?hD7=744 AL,'F CL,'P
AH?hE0<744 AL,') CL,'J AH?hE4<744 AL,'A CL,'p AH?hE6<744 AL%CL AH?hE8<744
AL,'J CLiCL AH?hEB<744 AL,'P AH?hEB=744 AL,'A CL,'p CH,'D AH?hEE<744
AL%CH AH?hF0<744 AL,'Б CL,'Л CHiCH AH?hF0=744 AL,'п CL,'ц AH?hF4<744
AL,'H CL,'L AH?hF4=744 AL,'f CLiCL AH?hF5=744 AL,' AH?hF7<744 AL,'f AH?hFE<744
AL,' M744 P127 CLoCL=747 AL,CL P127 M747 CHoCH=749 AL,CH P127
 M749 t  `0B . )c)c)c)c AL,'A P469 AL,'C P469 AL,'D P469 AL,'B P469
AL,'S P469 AL,'b P469 AL,'c P469 AL,'d P469
[c c-H0004 :S sc,d ]c AL,'F P469 t`08.
AL,'D P293 AL,'S P293 AL,'E P293 AL,'F P293 AL,'G P293
"[A[c c,H3000 GS,c :C "AX,sM319 :C c,sM121 :G "sc,AX :C sM121+H0004 ]c"]A
:C AL,sM319 :S sh30BF?h00=116 :S sh30BF?h01=320
AL?h6C=321 AL?h6D=321 AL?h6E=321 AL?h6F=321
AL?hE4=321 AL?hE5=321 AL?hEC=321 AL?hED=321 AL?hE6=321
AL?hE7=321 AL?hEE=321 AL?hEF=321 AL?hCD#320
M321 :S sh30BF?h02#116 "AXiAX M117 ")AX#117 J320 M116 K
M320 ALoAL=701 :C sM315,h00 AH?h1F#314 :C sM315,hFF
 M314 ]A :S sh30F8,AX ]A :S sh30F6,AX ]A :S sh30F4,AX :C DX,sM351 k
]:G]:F]:E]A]:D"]A"]V :C sM315?h00#316
:C sM347,AX ]A :C AX,sM311 [A :C AX,sM347`CF
M316 SP+H000C AXoHFEFF [A]F c,HA000 ES,c W
 M701 AH?h4B#702 :C BX,sM311 )BX
M317 :C c,sM318 DX,H0500 k AL,' P127 AX,BX L2 t`08:. AX,DS L2 t`0B`60.J704
 M702 AH?h4D#314 :C BX,sM311 (BX J317
M468 AL,sB L1 AL,'`P127 (BX.
M293 t:. P127 AL,'=P127 )c)c :S AX,sc L2 t`0B..
M469 P127 AL,'=P127 c-H0004 ":S AX,sc L4
M249 Zk DL?h0C>250 AL,' P127 J249 M250 t`0B ..
M121NNM347NNM351NNM311NNM315NM318NNM319NNNN

M806'коорд курсора под мышкой в DX,если AX=0; если AX#0, AX -клавиша; Vm.
[C"[c"[d[:F AX,CS FS,AX RMM DX,AX "AX}h10 CX,AX
M971 ZK AXoAX#242 UM c?H0400<243 c?HFC00<971 M243 d?H0400<299 d?HFC00<971
M299 DX+d :S AX,sh30CA DX?AX<245 DX?H8000<247 AXiAX M247 DX,AX
M245 CX+c :S AX,sh30C8 CX?AX<246 CX?H8000<248 AXiAX M248 CX,AX
M246 c,M244 VM bob=971 AXiAX
M242 c,M244 [D[C DX,H5555 CX,H5555 VM ]C]D
"c,CX "c{h10 c,DX [A RMM=c ]A CX}h03 DX{h04 DL,CL ]:F"]d"]c]C`CF
M244`09`00`09`00
`DE`DE`DE`00`00`00`00`00`00`00`00`00
`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF
`00`00`00`DE`DE`DE`DE`DE`DE`00`00`00
`00`00`00`00`00`00`00`00`00`FF`FF`FF`FF`FF`FF
`00`00`00`DE`DE`DE`DE`DE`DE`DE`DE`DE
`DE`DE`DE`DE`DE`DE`00`00`00`FF`FF`FF`FF`FF`FF
`00`00`00`00`00`00`DE`DE`DE`DE`DE`DE
`DE`DE`DE`00`00`00`00`00`00`FF`FF`FF`FF`FF`FF
`FF`FF`FF`00`00`00`DE`DE`DE`DE`DE`DE
`DE`DE`DE`DE`DE`DE`00`00`00`00`00`00`FF`FF`FF
`FF`FF`FF`00`00`00`DE`DE`DE`00`00`00
`DE`DE`DE`DE`DE`DE`DE`DE`DE`00`00`00`00`00`00
`FF`FF`FF`00`00`00`00`00`00`00`00`00
`00`00`00`DE`DE`DE`DE`DE`DE`DE`DE`DE`00`00`00
`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF
`00`00`00`00`00`00`DE`DE`DE`DE`DE`DE`DE`DE`DE
`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF
`FF`FF`FF`00`00`00`00`00`00`DE`DE`DE`DE`DE`DE

NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNN


M201'звук UZ; AX-частота,RZZ-длина.`FB "[A AL,hB6`E6`43 "]A"[A`E6`42 AL,AH
`E6`42`E4`61 ALdh03`E6`61 [A RZZ M203")AX#203 ]A ALohFC`E6`61 "]A`CF

M102'UI -чтение файла с именем по адресу 95F00 в расширпамять;
если прочитал - AH=0, AL - номер блока выделения памяти;
если нет - в AH номер ошибки.
"[V[:F[:E "cic :S c,sh30A0 R00=c{04 ES,c BXiBX c,H95F0 FS,c cic
"CX,H0000`01`00 AHiAH ud AHoAH#500
:G c,sh009A c+H001C ":G c,sc RRR=c UP AHoAH#500 :C sM103,AL
R01=RRP R02=00010000
M501 Ur R01+R02 bob=266
:S c,sh30A0 ES,c BXiBX cic "CX,H0000`01`00 AH,h01 ud AHoAH=501
M500 :C sM227,AH ]:E]:F"]V :C AX,sM103`CF
M266 AHiAH J500
M103N@M227N

M047'VU -поворот координат rXV,rYV и rZV вокруг оси X (если AH=0), оси Y (если
AH=1), оси Z (если AH=2) со смещением по двум другим осям rYS или rXS,или rZS
на угол rUG (в радианах); если AH>3, поворота нет.
 AHoAH#287 r??=rUGc*(rYV-rYS)-(rUGs*(rZV-rZS))+rYS
rZV=rUGs*(rYV-rYS)+(rUGc*(rZV-rZS))+rZS rYV=r?? `CF
 M287 AH?h01#288 r??=rUGc*(rXV-rXS)+(rUGs*(rZV-rZS))+rXS
rZV=rUGc*(rZV-rZS)-(rUGs*(rXV-rXS))+rZS rXV=r?? `CF
 M288 AH?h02#289 r??=rUGc*(rYV-rYS)+(rUGs*(rXV-rXS))+rYS
rXV=rUGc*(rXV-rXS)-(rUGs*(rYV-rYS))+rXS rYV=r?? M289`CF

M310'пошаговое UH.`FA :C sM121,H0000 [c[F]c cdH0100 [c]F]c`FB`CB

M312'кнопка VB; на входе: AL- ее индивидномер; AH- команда: 0- инициализация
(DX,CX- коорд верхлев угла, d,c- длины вертик,горизонт), 1- свободна, 2-
нажата, 3- удалить клавишу (обнулить 4-7 байты), 4- удалить все клавиши,
5- иниц строковых клавиш.
 [D[C[d[c[A[B BX,H5700
 AHoAH#313'иниц.P356 J334
M313 AH?h01#323'свободна.P322
M334 AX,HEFEF BL,hEF [d[D M324 VP (DX)d#324 ]D]d[d[D (DX)d)d [C (CX
M325 VP (DX)d#325 ]C]D]d[c[C M326 VP (CX)c#326 ]C]c[c[C[D (CX)c)c(DX
M328 VP (CX)c#328 ]D]C]c[d[D CX+c AXiAX BLiBL
M329 VP (DX)d#329 ]D]d (DX)d)d)CX
M330 VP (DX)d#330 [c[C)c)c M331 VP )CX)c#331 ]C]c (CX(DX M333 VP )CX)c#333
M348'выход.]B]A]c]d]C]D`CF
 M323 AH?h02#231'нажата.P322
AXiAX BLiBL [d[D M335 VP (DX)d#335 ]D]d[d[D (DX)d)d [C (CX
M336 VP (DX)d#336 ]C]D]d[c[C M337 VP (CX)c#337 ]C]c[c[C[D (CX)c)c(DX
M338 VP (CX)c#338 ]D]C]c[d[D CX+c AX,HEFEF BL,hEF
M339 VP (DX)d#339 ]D]d (DX)d)d)CX
M340 VP (DX)d#340 [c[C)c)c M341 VP )CX)c#341 ]C]c (CX(DX M343 VP )CX)c#343 J348
 M322 AHiAH AX{h03 BX+AX :S DX,sB (BX(BX :S CX,sB (BX(BX :S d,sB (BX(BX
:S c,sB.
 M231 AH?h03#241'удалить.AHiAH AX{h03 BX+AX BX+H0004 :S sB,H0000 J348
 M241 AH?h04#355'удалить все. c,H5704 M353 :S sc,H0000 c+H0008 c?H5F00<353 J348
 M355 AH?h05#348'строковые клавиши. AHiAH P356 J348
M356 AX{h03 BX+AX :S sB,DX (BX(BX :S sB,CX (BX(BX :S sB,d (BX(BX :S sB,c.

M342'нажатие кнопки мышкой Vb; на входе:
RMM=(X)(Y); на выходе: AL- номер нажатой кнопки при AH=0.
[D[C[c RMM DX,AX "AX}h10 CX,AX c,H56F8 [c
M345 ]c c+H0008 [c c?H5F00<344 ]c AH,h01 M346'выход.]c]C]D`CF
M344 c+H0004 :S sc?H0000=345 (c(c :S sc?H0000=345 ]c[c
:S AX,sc DX?AX<345 c+H0004 :S AX+sc AX?DX<345 )c)c
:S AX,sc CX?AX<345 c+H0004 :S AX+sc AX?CX<345 ]c c-H5700 c}h03 AX,c J346

M357'UW -вставить текст c:E  b байт в текст редактора с курсора;
на выходе - курсор за вставкой.
"[c[:E[d[:G"[b"[c[:E "boHFFFF`00`00
"[b R>>=RBT+RAK c,AX "AX}h04 ES,AX coH000F [c"c,b R>>+c d,AX "AX}h04
GS,AX doH000F RAK+c RKT+c R>>=RKT-RAK ]c[c[:E "b,AX Ut ]:G]d"]b]:E"]c Ut RBT
"AX}h04 GS,AX RAK :G "sh0015,AX RKT :G "sh000D,AX R>>=RBT+RKT}04( :S sh30A0,AX
"]b]:G]d]:E"]c`CF

M354'RELPHI UF. ]A]A]A BXiBX [:E c,H7000 ES,c c,M361
[:C]:F "CX,H2000`00`00 AHiAH ud ]:E
AHoAH#360 j0000:7000
M360t Ошибка .KW
M361TD:REL.TSA .

M362'рамка VQ; DX,CX- верхлевточка рамки (X,Y); d,c- длины сторон (бок,верх).
[D[C[d[c[A d-H0004 c-H0004 [d[D[C d+H0004
M363 ]C[C AX,HEFEF BL,hEF VP (CX AX,HB7B7 BL,hB7 VP (CX
AX,H6868 BL,h68 VP (CX AXiAX BLiBL VP (DX)d#363
]C]D]d[C CX+c [d[D[C d+H0001
M364 ]C[C AX,HEFEF BL,hEF VP (CX AX,HB7B7 BL,hB7 VP (CX
AX,H6868 BL,h68 VP (CX AXiAX BLiBL VP (DX)d#364
]C]D]d]C[c[C[D
M365 ]D[D AX,HEFEF BL,hEF VP (DX AX,HB7B7 BL,hB7 VP (DX AX,H6868 BL,h68
VP (DX AXiAX BLiBL VP (CX)c#365 ]D]C]c DX+d [c[C[D
M366 ]D[D AX,HEFEF BL,hEF VP (DX AX,HB7B7 BL,hB7 VP (DX AX,H6868 BL,h68
VP (DX AXiAX BLiBL VP (CX)c#366 ]D]C]c]A]c]d]C]D`CF

M372'UG -джойстик; c,d -X,Y; b -акселератор; биты 0-3 в AL - кнопки - соотв
задняя,нижняя,верхлев и верхправ.
[D DX,H0201 cic did bib DXpAL
M900 ALpDX (c ALth01#900 DXpAL
M901 ALpDX (d ALth02#901 DXpAL
M902 ALpDX (b ALth08#902 AL}h04 ]D`CF

M373'UO -запись файла с именем по адресу 95F00 из блока AL расширпамяти;
если записал - AH=0,если нет - в AH номер ошибки.
"[V[:F[:E Up R00=RRP RRR?00010000>374 R02=RRR RRRiRRR J375
M374 R02=00010000 RRR-R02
M375 "cic :S c,sh30A0 R01=c{04 ES,c Ur R00+R02 BXiBX
c,H95F0 FS,c cic R02 "CX,AX AH,h02 ud AHoAH#377
M378 RRRoRRR =379 RRR?00010000>376 R02=RRR M376 RRR-R02
Ur R00+R02 :S c,sh30A0 ES,c BXiBX cic R02 "CX,AX AH,h03 ud AHoAH#377 J378
M379 AHiAH M377 :C sM407,AH ]:E]:F"]V :C AH,sM407`CF
M407N


M038'фонты с кода 0.
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`01`01`01`01`01`01`01`01`01`01`01`01`01`01`01`FF
`FF`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`0E`19`18`18`18`18`18`18`18`18`18`18`18`18`98`70
`00`00`18`18`18`7E`FF`BD`BD`BD`BD`24`24`24`24`00
`00`00`08`08`1C`7F`3E`1C`36`22`00`00`00`00`00`00
`FE`C6`60`20`30`10`18`0C`18`10`30`20`60`40`C6`FE

`FF`81`81`81`81`81`81`81`81`81`81`81`81`81`81`FF
`FE`FE`FE`FE`FE`FE`FE`FE`FE`FE`FE`FE`FE`FE`FE`00
`06`0C`0C`0C`0C`0C`06`00`00`00`00`00`00`00`00`00
`C0`60`60`60`60`60`C0`00`00`00`00`00`00`00`00`00
`00`00`00`7E`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`06`0C`0C`0C`0C`0C`06`00
`00`00`00`00`00`00`00`00`C0`60`60`60`60`60`C0`00
`00`00`00`00`00`00`00`00`00`00`00`7E`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
'фонты с кода 20 по 7F.
`7C`CE`DE`F6`E6`C6`7C`00`00`00`00`00`00`00`00`00
`30`70`30`30`30`30`FC`00`00`00`00`00`00`00`00`00
`78`CC`0C`38`60`CC`FC`00`00`00`00`00`00`00`00`00
`78`CC`0C`38`0C`CC`78`00`00`00`00`00`00`00`00`00
`1C`3C`6C`CC`FE`0C`1E`00`00`00`00`00`00`00`00`00
`FC`C0`F8`0C`0C`CC`78`00`00`00`00`00`00`00`00`00
`38`60`C0`F8`CC`CC`78`00`00`00`00`00`00`00`00`00
`FC`CC`0C`18`30`30`30`00`00`00`00`00`00`00`00`00
`78`CC`CC`78`CC`CC`78`00`00`00`00`00`00`00`00`00
`78`CC`CC`7C`0C`18`70`00`00`00`00`00`00`00`00`00
`00`00`78`0C`7C`CC`76`00`00`00`00`00`00`00`00`00
`E0`60`60`7C`66`66`DC`00`00`00`00`00`00`00`00`00
`00`00`78`CC`C0`CC`78`00`00`00`00`00`00`00`00`00
`1C`0C`0C`7C`CC`CC`76`00`00`00`00`00`00`00`00`00
`00`00`78`CC`FC`C0`78`00`00`00`00`00`00`00`00`00
`38`6C`64`F0`60`60`F0`00`00`00`00`00`00`00`00`00
`00`00`76`CC`CC`7C`0C`F8`00`00`00`00`00`00`00`00
`E0`60`6C`76`66`66`E6`00`00`00`00`00`00`00`00`00
`30`00`70`30`30`30`78`00`00`00`00`00`00`00`00`00
`0C`00`1C`0C`0C`CC`CC`78`00`00`00`00`00`00`00`00
`E0`60`66`6C`78`6C`E6`00`00`00`00`00`00`00`00`00
`70`30`30`30`30`30`78`00`00`00`00`00`00`00`00`00
`00`00`CC`FE`FE`D6`D6`00`00`00`00`00`00`00`00`00
`00`00`B8`CC`CC`CC`CC`00`00`00`00`00`00`00`00`00
`00`00`78`CC`CC`CC`78`00`00`00`00`00`00`00`00`00
`00`00`DC`66`66`7C`60`F0`00`00`00`00`00`00`00`00
`00`00`76`CC`CC`7C`0C`1E`00`00`00`00`00`00`00`00
`00`00`DC`76`62`60`F0`00`00`00`00`00`00`00`00`00
`00`00`7C`C0`70`1C`F8`00`00`00`00`00`00`00`00`00
`10`30`FC`30`30`34`18`00`00`00`00`00`00`00`00`00
`00`00`CC`CC`CC`CC`76`00`00`00`00`00`00`00`00`00
`00`00`CC`CC`CC`78`30`00`00`00`00`00`00`00`00`00
`00`00`C6`C6`D6`FE`6C`00`00`00`00`00`00`00`00`00
`00`00`C6`6C`38`6C`C6`00`00`00`00`00`00`00`00`00
`00`00`CC`CC`CC`7C`0C`F8`00`00`00`00`00`00`00`00
`00`00`FC`98`30`64`FC`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`7C`CE`DE`F6`E6`C6`7C`00
`00`00`00`00`00`00`00`00`30`70`30`30`30`30`FC`00
`00`00`00`00`00`00`00`00`78`CC`0C`38`60`CC`FC`00
`00`00`00`00`00`00`00`00`78`CC`0C`38`0C`CC`78`00
`00`00`00`00`00`00`00`00`1C`3C`6C`CC`FE`0C`1E`00
`00`00`00`00`00`00`00`00`FC`C0`F8`0C`0C`CC`78`00
`00`00`00`00`00`00`00`00`38`60`C0`F8`CC`CC`78`00
`00`00`00`00`00`00`00`00`FC`CC`0C`18`30`30`30`00
`00`00`00`00`00`00`00`00`78`CC`CC`78`CC`CC`78`00
`00`00`00`00`00`00`00`00`78`CC`CC`7C`0C`18`70`00
`00`00`00`00`00`00`00`00`00`00`78`0C`7C`CC`76`00
`00`00`00`00`00`00`00`00`E0`60`60`7C`66`66`DC`00
`00`00`00`00`00`00`00`00`00`00`78`CC`C0`CC`78`00
`00`00`00`00`00`00`00`00`1C`0C`0C`7C`CC`CC`76`00
`00`00`00`00`00`00`00`00`00`00`78`CC`FC`C0`78`00
`00`00`00`00`00`00`00`00`38`6C`64`F0`60`60`F0`00
`00`00`00`00`00`00`00`00`00`00`76`CC`CC`7C`0C`F8
`00`00`00`00`00`00`00`00`E0`60`6C`76`66`66`E6`00
`00`00`00`00`00`00`00`00`30`00`70`30`30`30`78`00
`00`00`00`00`00`00`00`00`0C`00`1C`0C`0C`CC`CC`78
`00`00`00`00`00`00`00`00`E0`60`66`6C`78`6C`E6`00
`00`00`00`00`00`00`00`00`70`30`30`30`30`30`78`00
`00`00`00`00`00`00`00`00`00`00`CC`FE`FE`D6`D6`00
`00`00`00`00`00`00`00`00`00`00`B8`CC`CC`CC`CC`00
`00`00`00`00`00`00`00`00`00`00`78`CC`CC`CC`78`00
`00`00`00`00`00`00`00`00`00`00`DC`66`66`7C`60`F0
`00`00`00`00`00`00`00`00`00`00`76`CC`CC`7C`0C`1E
`00`00`00`00`00`00`00`00`00`00`DC`76`62`60`F0`00
`00`00`00`00`00`00`00`00`00`00`7C`C0`70`1C`F8`00
`00`00`00`00`00`00`00`00`10`30`FC`30`30`34`18`00
`00`00`00`00`00`00`00`00`00`00`CC`CC`CC`CC`76`00
`00`00`00`00`00`00`00`00`00`00`CC`CC`CC`78`30`00
`00`00`00`00`00`00`00`00`00`00`C6`C6`D6`FE`6C`00
`00`00`00`00`00`00`00`00`00`00`C6`6C`38`6C`C6`00
`00`00`00`00`00`00`00`00`00`00`CC`CC`CC`7C`0C`F8
`00`00`00`00`00`00`00`00`00`00`FC`98`30`64`FC`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00


@M032'16-ти битные фонты русалфавита с кода 80 по FF.
`00`00`1E`36`66`C6`C6`FE`C6`C6`C6`C6`00`00`00`00
`00`00`FE`62`62`60`7C`66`66`66`66`FC`00`00`00`00
`00`00`FC`66`66`66`7C`66`66`66`66`FC`00`00`00`00
`00`00`FE`62`62`60`60`60`60`60`60`F0`00`00`00`00
`00`00`1E`36`66`66`66`66`66`66`66`FF`C3`81`00`00
`00`00`FE`66`62`68`78`68`60`62`66`FE`00`00`00`00
`00`00`D6`D6`54`54`7C`7C`54`D6`D6`D6`00`00`00`00
`00`00`7C`C6`06`06`3C`06`06`06`C6`7C`00`00`00`00
`00`00`C6`C6`CE`CE`D6`E6`E6`C6`C6`C6`00`00`00`00
`38`38`C6`C6`CE`CE`D6`E6`E6`C6`C6`C6`00`00`00`00
`00`00`E6`66`6C`6C`78`78`6C`6C`66`E6`00`00`00`00
`00`00`1E`36`66`C6`C6`C6`C6`C6`C6`C6`00`00`00`00
`00`00`C6`EE`FE`FE`D6`C6`C6`C6`C6`C6`00`00`00`00
`00`00`C6`C6`C6`C6`FE`C6`C6`C6`C6`C6`00`00`00`00
`00`00`7C`C6`C6`C6`C6`C6`C6`C6`C6`7C`00`00`00`00
`00`00`FE`C6`C6`C6`C6`C6`C6`C6`C6`C6`00`00`00`00
`00`00`FC`66`66`66`7C`60`60`60`60`F0`00`00`00`00
`00`00`3C`66`C2`C0`C0`C0`C0`C2`66`3C`00`00`00`00
`00`00`7E`5A`18`18`18`18`18`18`18`3C`00`00`00`00
`00`00`C6`C6`C6`C6`C6`7E`06`06`C6`7C`00`00`00`00
`00`3C`18`7E`DB`DB`DB`DB`DB`7E`18`3C`00`00`00`00
`00`00`C6`C6`6C`7C`38`38`7C`6C`C6`C6`00`00`00`00
`00`00`CC`CC`CC`CC`CC`CC`CC`CC`CC`FE`06`06`00`00
`00`00`C6`C6`C6`C6`C6`7E`06`06`06`06`00`00`00`00
`00`00`DB`DB`DB`DB`DB`DB`DB`DB`DB`FF`00`00`00`00
`00`00`DB`DB`DB`DB`DB`DB`DB`DB`DB`FF`03`03`00`00
`00`00`F8`B0`30`30`3E`33`33`33`33`7E`00`00`00`00
`00`00`C3`C3`C3`C3`F3`DB`DB`DB`DB`F3`00`00`00`00
`00`00`F0`60`60`60`7C`66`66`66`66`FC`00`00`00`00
`00`00`7C`C6`06`26`3E`26`06`06`C6`7C`00`00`00`00
`00`00`CE`DB`DB`DB`FB`DB`DB`DB`DB`CE`00`00`00`00
`00`00`3F`66`66`66`3E`3E`66`66`66`E7`00`00`00`00
`00`00`00`00`00`78`0C`7C`CC`CC`CC`76`00`00`00`00
`00`02`06`3C`60`60`7C`66`66`66`66`3C`00`00`00`00
`00`00`00`00`00`FC`66`66`7C`66`66`FC`00`00`00`00
`00`00`00`00`00`7E`32`32`30`30`30`78`00`00`00`00
`00`00`00`00`00`1E`36`36`66`66`66`FF`C3`C3`00`00
`00`00`00`00`00`7C`C6`FE`C0`C0`C6`7C`00`00`00`00
`00`00`00`00`00`D6`D6`54`7C`54`D6`D6`00`00`00`00
`00`00`00`00`00`3C`66`06`0C`06`66`3C`00`00`00`00
`00`00`00`00`00`C6`C6`CE`D6`E6`C6`C6`00`00`00`00
`00`00`00`38`38`C6`C6`CE`D6`E6`C6`C6`00`00`00`00
`00`00`00`00`00`E6`6C`78`78`6C`66`E6`00`00`00`00
`00`00`00`00`00`1E`36`66`66`66`66`66`00`00`00`00
`00`00`00`00`00`C6`EE`FE`FE`D6`D6`C6`00`00`00`00
`00`00`00`00`00`C6`C6`C6`FE`C6`C6`C6`00`00`00`00
`00`00`00`00`00`7C`C6`C6`C6`C6`C6`7C`00`00`00`00
`00`00`00`00`00`FE`C6`C6`C6`C6`C6`C6`00`00`00`00
`11`44`11`44`11`44`11`44`11`44`11`44`11`44`11`44
`55`AA`55`AA`55`AA`55`AA`55`AA`55`AA`55`AA`55`AA
`DD`77`DD`77`DD`77`DD`77`DD`77`DD`77`DD`77`DD`77
`18`18`18`18`18`18`18`18`18`18`18`18`18`18`18`18
`18`18`18`18`18`18`18`F8`18`18`18`18`18`18`18`18
`18`18`18`18`18`F8`18`F8`18`18`18`18`18`18`18`18
`36`36`36`36`36`36`36`F6`36`36`36`36`36`36`36`36
`00`00`00`00`00`00`00`FE`36`36`36`36`36`36`36`36
`00`00`00`00`00`F8`18`F8`18`18`18`18`18`18`18`18
`36`36`36`36`36`F6`06`F6`36`36`36`36`36`36`36`36
`36`36`36`36`36`36`36`36`36`36`36`36`36`36`36`36
`00`00`00`00`00`FE`06`F6`36`36`36`36`36`36`36`36
`36`36`36`36`36`F6`06`FE`00`00`00`00`00`00`00`00
`36`36`36`36`36`36`36`FE`00`00`00`00`00`00`00`00
`18`18`18`18`18`F8`18`F8`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`F8`18`18`18`18`18`18`18`18
`18`18`18`18`18`18`18`1F`00`00`00`00`00`00`00`00
`18`18`18`18`18`18`18`FF`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`FF`18`18`18`18`18`18`18`18
`18`18`18`18`18`18`18`1F`18`18`18`18`18`18`18`18
`00`00`00`00`00`00`00`FF`00`00`00`00`00`00`00`00
`18`18`18`18`18`18`18`FF`18`18`18`18`18`18`18`18
`18`18`18`18`18`1F`18`1F`18`18`18`18`18`18`18`18
`36`36`36`36`36`36`36`37`36`36`36`36`36`36`36`36
`36`36`36`36`36`37`30`3F`00`00`00`00`00`00`00`00
`00`00`00`00`00`3F`30`37`36`36`36`36`36`36`36`36
`36`36`36`36`36`F7`00`FF`00`00`00`00`00`00`00`00
`00`00`00`00`00`FF`00`F7`36`36`36`36`36`36`36`36
`36`36`36`36`36`37`30`37`36`36`36`36`36`36`36`36
`00`00`00`00`00`FF`00`FF`00`00`00`00`00`00`00`00
`36`36`36`36`36`F7`00`F7`36`36`36`36`36`36`36`36
`18`18`18`18`18`FF`00`FF`00`00`00`00`00`00`00`00
`36`36`36`36`36`36`36`FF`00`00`00`00`00`00`00`00
`00`00`00`00`00`FF`00`FF`18`18`18`18`18`18`18`18
`00`00`00`00`00`00`00`FF`36`36`36`36`36`36`36`36
`36`36`36`36`36`36`36`3F`00`00`00`00`00`00`00`00
`18`18`18`18`18`1F`18`1F`00`00`00`00`00`00`00`00
`00`00`00`00`00`1F`18`1F`18`18`18`18`18`18`18`18
`00`00`00`00`00`00`00`3F`36`36`36`36`36`36`36`36
`36`36`36`36`36`36`36`FF`36`36`36`36`36`36`36`36
`18`18`18`18`18`FF`18`FF`18`18`18`18`18`18`18`18
`18`18`18`18`18`18`18`F8`00`00`00`00`00`00`00`00
`00`00`00`00`00`00`00`1F`18`18`18`18`18`18`18`18
`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF`FF
`00`00`00`00`00`00`00`FF`FF`FF`FF`FF`FF`FF`FF`FF
`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0`F0
`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F`0F
`FF`FF`FF`FF`FF`FF`FF`00`00`00`00`00`00`00`00`00
`00`00`00`00`00`DC`66`66`66`66`66`7C`60`60`F0`00
`00`00`00`00`00`7C`C6`C0`C0`C0`C6`7C`00`00`00`00
`00`00`00`00`00`7E`5A`18`18`18`18`3C`00`00`00`00
`00`00`00`00`00`C6`C6`C6`C6`C6`7E`06`06`C6`7C`00
`00`00`00`00`3C`18`7E`DB`DB`DB`DB`7E`18`18`3C`00
`00`00`00`00`00`C6`6C`38`38`38`6C`C6`00`00`00`00
`00`00`00`00`00`CC`CC`CC`CC`CC`CC`FE`06`06`00`00
`00`00`00`00`00`C6`C6`C6`C6`7E`06`06`00`00`00`00
`00`00`00`00`00`D6`D6`D6`D6`D6`D6`FE`00`00`00`00
`00`00`00`00`00`D6`D6`D6`D6`D6`D6`FE`03`03`00`00
`00`00`00`00`00`F8`B0`30`3E`33`33`7E`00`00`00`00
`00`00`00`00`00`C6`C6`C6`F6`DE`DE`F6`00`00`00`00
`00`00`00`00`00`F0`60`60`7C`66`66`FC`00`00`00`00
`00`00`00`00`00`3C`66`06`1E`06`66`3C`00`00`00`00
`00`00`00`00`00`CE`DB`DB`FB`DB`DB`CE`00`00`00`00
`00`00`00`00`00`7E`CC`CC`FC`6C`CC`CE`00`00`00`00
`6C`00`FE`66`62`68`78`68`60`62`66`FE`00`00`00`00
`00`00`00`6C`00`7C`C6`FE`C0`C0`C6`7C`00`00`00`00
`00`00`7C`C6`C0`C8`F8`C8`C0`C0`C6`7C`00`00`00`00
`00`00`00`00`00`3C`66`60`78`60`66`3C`00`00`00`00
`66`00`3C`18`18`18`18`18`18`18`18`3C`00`00`00`00
`00`00`7E`81`99`A5`91`89`A5`99`81`7E`00`00`00`00
`00`00`00`00`08`0C`FE`FF`FE`0C`08`00`00`00`00`00
`00`00`00`00`10`30`7F`FF`7F`30`10`00`00`00`00`00
`00`00`18`3C`7E`18`18`18`18`18`18`00`00`00`00`00
`00`00`00`18`18`18`18`18`18`7E`3C`18`00`00`00`00
`00`00`00`00`00`00`00`00`18`00`00`00`00`00`00`00
`00`00`00`01`03`02`06`04`CC`68`38`10`00`00`00`00
`00`00`00`DE`D0`D7`D5`D7`F0`F7`D0`D0`00`00`00`00
`00`00`3C`42`99`B5`B5`B1`B5`99`42`3C`00`00`00`00
`00`00`00`00`00`7E`7E`7E`7E`7E`00`00`00`00`00`00
`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00`00


M048 AXiAX DS,AX
'иниц принтера.`FA DX,H037A AL,h04 DXpAL
'поставить NumLock и CapsLock. c,H0417 scdh60
'скорость повторения символов. AX,H0305 BXiBX`CD`16
'вектор 0 (деление на 0). cic sc,M031 (c(c sc,CS
'вектор 1 (пошаговое). c,H0004 sc,M238 (c(c sc,CS c,H0254 sc,M310 (c(c sc,CS
'вектор 3 (контрточка n). c,H000C sc,M238 (c(c sc,CS
'вектор 9 (клавиатура). c,H0024 BX,sc :S sh30D0,BX :C sM487,BX (c(c
BX,sc :S sh30D2,BX :C sM488,BX c,H0024 sc,M086 (c(c sc,CS
'вектор 1F (фонты). c,H007C sc,M032 (c(c sc,CS
'вектор 1B (аварийный выход Ctrl-Break). c,H006C sc,M095 (c(c sc,CS
'вектор 8 (таймер). c,H0020 BX,sc :S sh30D8,BX :C sM411,BX (c(c BX,sc
:S sh30DA,BX :C sM412,BX c,H0020 sc,M035 (c(c sc,CS
'запретить будильник. AL,h0B`E6`70 AL,h02`E6`71 P020
'инициализ FPU.`9B`DB`E3
'линия A20. AL,hD1`E6`64 AL,hDF`E6`60 AL,hAE`E6`64 AL,h02`E6`92
c,H00A0 c{h02 BX,M000 P007 BX,M001 P007 BX,M002 P007 BX,M003 P007
BX,M008 P007 BX,M004 P007 BX,M010 P007 BX,M011 P007 BX,M012 P007 BX,M013 P007
BX,M014 P007 BX,M033 P007 BX,M037 P007 BX,M046 P007 BX,M049 P007 BX,M050 P007
BX,M051 P007 BX,M052 P007 BX,M053 P007 BX,M054 P007 BX,M055 P007 BX,M056 P007
BX,M057 P007 BX,M058 P007 BX,M059 P007 BX,M060 P007 BX,M061 P007 BX,M062 P007
BX,M063 P007 BX,M064 P007 BX,M065 P007 BX,M066 P007 BX,M067 P007 BX,M068 P007
BX,M069 P007 BX,M070 P007 BX,M030 P007 BX,M071 P007 BX,M072 P007 BX,M073 P007
BX,M074 P007 BX,M075 P007 BX,M076 P007 BX,M077 P007 BX,M078 P007 BX,M079 P007
BX,M080 P007 BX,M081 P007 BX,M082 P007 BX,M083 P007 BX,M084 P007 BX,M094 P007
BX,M106 P007 BX,M107 P007 BX,M137 P007 BX,M167 P007 BX,M168 P007 BX,M169 P007
BX,M182 P007 BX,M235 P007 BX,M806 P007 BX,M201 P007 BX,M102 P007 BX,M047 P007
BX,M312 P007 BX,M342 P007 BX,M357 P007 BX,M354 P007 BX,M362 P007 BX,M372 P007
BX,M373 P007
'вектор 74 (мышка PS).[:E c,CS ES,c BX,M034 AX,HC207`CD`15 ]:E
AX,HC200 BH,h01`CD`15 sh01D0,M034 sh01D2,CS

`FB AX,M048 AX}h04 (AX BX,CS BX+AX :S sh30A0,BX RMM=014000F0
'конец свобрасширпамяти.:S"sh30E0?H0000`00`00#809 :S"sh30E0,H0000`10`00
M809 :S sh30AE,H91CF'буф графтекста (до 92B70).
:S sh30FC,H92B7'буф адресов блоков запросов выделения памяти (до 92F70).
:S sh30C2,H95F0'буф комстроки.:S sh30BF,h00'фл пошагового.
'адрес таблицы глоб дескрипторов."AXiAX AX,CS"AX{h04
"AX+M672`00`00 'переслать в регист дескр табл. c,M673 :C"sc,AX
`CD`C4`CB

M007 sc,BX (c(c sc,CS (c(c.

$


на главную