Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 июля!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Давно заметил, что всё-таки языки С/C++ это не самый лучший вариант программирования под Windows. Сейчас появилась масса более современных и удобных языков, например тот же Python - кроссплатформенный язык, очень легок в изучение. Я его изучил буквально за несколько дней по этому курсу - ссылка. Автор постарался, там видеоуроки на удивление легкие и понятные.

biosprint

 
 Функция            Ввод/вывод на принтер при помощи BIOS.
 
 
 
 Синтаксис          #include<bios.h>
 
                    int biosprint(int cmd, int abyte, int port);
 
 
 
 Файл, содержащий   bios.h
 
 прототип
 
 
 
 Описание           biosprint выполняет различные операции  с
 
                    принтером, определяемым аргументом port, при помощи
 
                    прерывания BIOS 0x17.
 
 
 
                    Значение аргумента  port  =  0  соответствует LPT1;
 
                    port = 1 соответствует LPT2 и т.д..
 
 
 
                    Значение аргумента  cmd   может   быть   одним   из
 
                    следующих:
 
 
 
                    0   Печать символа, содержащегося в abyte.
 
 
 
                    1   Инициализация порта принтера.
 
 
 
                    2   Считывание статуса принтера.
 
 
 
                    Значение аргумента  abyte  может быть пределах от 0
 
                    до 255.
 
 
 
 Возвращаемое       Значение, возвращаемое функцией biosprint в любой
 
 значение           из описанных выше операций, представляет собой
 
                    статус принтера,  получаемый  посредством  операции
 
                    "ИЛИ" со следующими битовыми значениями:
 
 
 
                    Бит 0   0x01 Таймаут устройства.
 
                    Бит 3   0x08 Ошибка ввода/вывода.
 
                    Бит 4   0x10 Включено.
 
                    Бит 5   0x20 Нет бумаги.
 
                    Бит 6   0x40 Подтверждение приема.
 
                    Бит 7   0x80 Не занято.
 
 
 
 Переносимость      biosprint поддерживается только на компьютерах
 
                    IBM PC или совместимых с ними.
 
 
 
 Пример:
 
 
 
 #include<stdio.h>
 
 #include<conio.h>
 
 #include<bios.h>
 
 
 
 int main(void)
 
 {
 
    #define STATUS  2 /* команда получить статус принтера */
 
    #define PORTNUM 0 /* LPT1 */
 
 
 
    int status,abyte = 0;
 
 
 
    printf("Пожалуйста, выключите принтер. Для продолжения нажмите
 
               любую клавишу\n");
 
    getch();
 
    status = biosprint(STATUS,abute,PORTNUM);
 
    if(status & 0x01)
 
      printf("Таймаут устройства\n");
 
    if(status & 0x08)
 
      printf("Ошибка ввода/вывода\n");
 
    if(status & 0x10)
 
      printf("Включено\n");
 
    if(status & 0x20)
 
      printf("Конец бумаги\n");
 
    if(status & 0x40)
 
      printf("Подтверждение приема\n");
 
    if(status & 0x80)
 
      printf("Не занято\n");
 
    return 0;
 
 }

<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS