Программирование на C и C++

Онлайн справочник программиста на C и C++

intr

void intr(int intr_num, struct REGPACK *reg)

Прототип: 
Описание: 

Эта функция не определена стандартом ANSI С.

Функция intr() выполняет программное прерывание, заданное параметром intr_num. Она яв­ляется альтернативой функции int86(), но не выполняет каких-то дополнительных функций.

Величины регистров в структуре, на которую указывает параметр reg, копируются в регистры процессора перед вызовом прерывания. После возврата из прерывания структура содержит зна­чения регистров, установленные процедурой обработки прерывания. Структура REGPACK опре­делена следующим образом:

struct REGPACK {
unsigned r_ax, r_bx, r_cx, r_dx;
unsigned r_bp, r_si, r_di, r_ds, r_es;
unsigned r_flags;
};

Любые регистры, не используемые прерыванием, игнорируются.

Пример: 
Следующая программа выводит на экран, используя прерывание 5:
/* печать экрана */
#inciude <dos.h>
int main(void)
{
struct REGPACK r;
intr (5, &r);
return 0;
}