размер консоли & absolute

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Kinsler
незнакомец
Сообщения: 1
Зарегистрирован: 15.12.2005 06:07:18

Сообщение Kinsler »

1. Стандартно консоль запускается в режиме 80*25, а можно сделать 90*30 например?

2. В паскале это делалось так:
Buf: array[1..80*25*2] of byte absolute $B800:$0000;
или
rec = record ch: char; atr: byte end;
Buf: array[1..80*25] of rec absolute $B800:$0000;
и можно было через массив писать на экран...
можно ли сделать это на Free Pascal (если да, то как)
Аватара пользователя
Иван Шихалев
энтузиаст
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург
Контактная информация:

Сообщение Иван Шихалев »

1. Можно, но в разных системах по разному. Для винды см. Console Functions. В Linux, полагаю, нужно общаться с программой X-терминала.
2. Вообще говоря, подобное возможно только в DOS. В Windows можно работать с буфером консоли, но далеко не так тривиально.
SergKam
постоялец
Сообщения: 251
Зарегистрирован: 16.11.2005 20:31:11
Откуда: Украина,Харьков

Сообщение SergKam »

а можно сделать 90*30 например
в линуксе в командной строке при запуске читай man xterm

Buf: array[1..80*25*2] of byte absolute $B800:$0000;
естественно работать не будет.
читай ncurses или ncrt ocrt модули
можно такой массив сэмулировать специальным классом
Ответить