Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Вопрос про вывод пикселей на экран

5.5K
10 декабря 2005 года
Ded pendos
40 / / 13.05.2005
Если кто знает толковый мануал( с работающими примерами)по поводу вывода пикселей на эран-как вывести точу, ее цвет, линию и т.п.
Буду очень если кто-нить выложит приметивный текст на форум с коментами или без них, главное, чтоб он работал. А то я уже запарился ковырять ошибки из книжных вариантов, еще не одного действительно работающего с начала до конца примера не наковырял, конечно наверно мало искал...
Вообщем я поковыряю пока, если кто чего напишет буду оч благодарен...
2.2K
11 декабря 2005 года
Brezhnev1980
156 / / 13.08.2005
Смотри прерывания БИОСА!
Или прямо в память!
5.5K
21 декабря 2005 года
Ded pendos
40 / / 13.05.2005
Долго не был в сети, вроде с пиксилями разобрался, пока вроде работает но бывают траблы... а вот пример хорошо бы было все же посмотреть, чтоб синус рисовал хотябы. У меня просто скачками как то получается. Правда сидел над этим не очень много, так как запарок хватает.
2.2K
21 декабря 2005 года
Brezhnev1980
156 / / 13.08.2005
Можешь использовать прямую запись в видеобуфер(вроде по адрессу 0A000),ох попробую помочь:
1.При разрешении 320*200 размер буфера: 320*200=64 000,тоесть 64 кило (байтов),при этом режиме доступно 256 цветов,аддрес первого пикселя-0,последнего собственно 63 999...

x=0 x=1 ... x=318 x=319
y=0 0 1 ... 318 319
y=1 320 321 ... 638 639
... ... ... ... ... ...

Адресс пикселя=320*y+x

(Initialization)

mov ah,0h
mov al,13h
int 10h

(Close graph)

mov ah,00h
mov al,03h
int 10h

(Example for FASM with FPU)(несовсем то :D )

org 100h

mov ax,13h
int 10h
push 0A000h
pop es

mov dx,3C8h
xor al,al
out dx,al
inc dl
mov cx,64
vga_palette:
out dx,al
out dx,al
out dx,al
inc al
loop vga_palette

xor di,di
xor dx,dx
finit
fld [y_top]
fstp [y]
screen:
xor bx,bx
fld [x_left]
fstp [x]
row:
finit
fldz
fldz
mov cx,63
iterate:
fld st0
fmul st0,st0
fxch st1
fmul st0,st2
fadd st0,st0
fxch st2
fmul st0,st0
fsubp st1,st0
fxch st1
fadd [y]
fxch st1
fadd [x]
fld st1
fmul st0,st0
fld st1
fmul st0,st0
faddp st1,st0
fsqrt
fistp
cmp ,2
ja over
loop iterate
over:
mov al,cl
stosb
fld [x]
fadd [x_step]
fstp [x]
inc bx
cmp bx,320
jb row
fld [y]
fsub [y_step]
fstp [y]
inc dx
cmp dx,200
jb screen

xor ah,ah
int 16h
mov ax,3
int 10h
int 20h

x_left dd -2.2
y_top dd 1.25

x_step dd 0.009375
y_step dd 0.0125

x dd ?
y dd ?

i dw ?

Скоро дам нормальный соурс,просто времени нет!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог