ПредишенСледващото

Делфи. Софтуер и интерфейс. вашата кандидатура

Начин за създаване на TSR програми без PSP

Тази статия описва метод за изграждане на TSR - TSR (Прекратяване и постоянен престой), което позволява да се използва площта PSP (Програма сегмент префикс), за да се настанят кода на жител.

Нещо за неописана DOS функции.
TSR за разбиране разработването на механизъм без PSP трябва да е запознат с някои от недокументирани функции на DOS и PSP форматите и МСВ - контролен блок памет.

PSP - програма сегмент префикс.

PSP е винаги на базата DOS, когато стартирате всяка програма, както и непосредствено предхожда началото на програмата. Помислете формат PSP.

Тя осигурява INT 20h команда, която се използва за завършване на програмата

дълъг разговор DOS функция диспечер. Той съдържа командата на един дълъг преход към диспечерските DOS функции. Използва се в програми, насочени към CP / M. Изместване на екипа на дълъг скок
Той съдържа броя байтове на разположение в сегмента на код.

Копирайте прекъсване вектор 22h, с което контролът се прехвърля
завършване на програмата.

Копиране прекъсване вектор 23h, към който контролира се предава, когато се натисне CONTROL-почивка, или CONTROL-C.

Блок Размер - 16 байта.

Без документи за DOS функции.
Помислете сега недокументираните DOS функции, които се използват за изграждане на TSR без PSP.

настроите текущите PSP.

Тази функция показва DOS, че това трябва да се използва, както е посочено PSP.

създаване на подчинен PSP.

Тази функция изисква DOS създаде подчинен PSP. За разлика от данните за функция 26h не се копира от сегашната PSP, и построен наново.

Разглеждане на последователност от действия, когато програмата се прекратява.

Този метод е бил тестван в различни съвместими операционни среди:

- MS / PC DOS 3.30;
- MS / PC DOS 4;
- MS DOS 5 бета освобождаване;
- DR DOS 3.41;
- DR DOS 5;
- използване LOADHI товарач от QEMM 5.0 система;
- използване на натоварване в горната HiLoad памет DR DOS 5.

Пример за резидент програма без PSP.
За по-добро разбиране на реда на изпълнение на програмата за пребиваване, ще дам един пример, без PSP.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!