IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Рисование прямой и пр.
сообщение
Сообщение #1


Гость






Вот, решил написать простенький модуль для работы с графикой, но не могу написать процедуры рисования прямой и окружности.
Подскажите, если не сложно.

Код

Unit graphix;
{$G+}

interface
 procedure Init;
 procedure DeInit;
 procedure Wait;
 procedure FillScreen(col:byte);
 procedure PutPixel(x,y:word;col:byte);
 procedure Box(x1,y1,x2,y2:word;col:byte);
implementation

procedure Init; assembler;
 asm
   mov  ax,13h
   int  10h
 end;

procedure DeInit; assembler;
 asm
   mov  ax,3h
   int  10h
 end;

procedure Wait; assembler;
 asm
   xor  ax,ax
   int  16h
 end;

procedure FillScreen(col:byte); assembler;
 asm
   pusha
   mov  ax,0A000h
   mov  es,ax
   xor  di,di
   mov  al,[col]
   mov  cx,64000
   cld
   rep  stosb
   popa
 end;

procedure PutPixel(x,y:word;col:byte);
 begin
   y := y * 320;
   asm
     pusha
     mov  ax,0A000h
     mov  es,ax
     mov  ax,[y]
     mov  di,ax
     add  di,[x]
     mov  al,[col]
     cld
     stosb
     popa
   end;
 end;

procedure Box(x1,y1,x2,y2:word;col:byte);
 var
   i,j:integer;
 begin
   for i := x1 to x2 do
     for j := y1 to y2 do
       PutPixel(i,j,col);
 end;

begin
end.
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 9.09.2025 2:15
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name