Търся...
14 отговора
617 прегледа
Търся...
...библиотека за С, съдържаща фунции като window(), gotoxy(), settextcolor(), setbkcolor() и др.... или подобни на тях, които ще улеснят създаването на прозорци, менюта и т.н.
Благодаря ви предварително
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
Благодаря ви предварително
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
Re: Търся...
na borland c++ 3.1 imashe takava biblioteka :) sigurno i segashnite borlandski compileri si go imat tva neshto
niakade na codeguru ili codeproject imashe podobni divotii za vc++
udari edin search
Agent Orange
niakade na codeguru ili codeproject imashe podobni divotii za vc++
udari edin search
Agent Orange
Re: Търся...
за с++ има, но на мен ми трябват за с
search-а ми беше без резултат :(
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
search-а ми беше без резултат :(
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
GUI Toolkit page
[линк]
za chisto C - ima GTK, obache kato gledam ti iskash gotoxy(), settextcolor(), setbkcolor() - koeto navjava TEXTOV rezhim - mozhe bi trjawba da vidish "ncurses" bibliotekata (za Linux, i Win32 prez CygWin).
tirulirutatuutuu
za chisto C - ima GTK, obache kato gledam ti iskash gotoxy(), settextcolor(), setbkcolor() - koeto navjava TEXTOV rezhim - mozhe bi trjawba da vidish "ncurses" bibliotekata (za Linux, i Win32 prez CygWin).
tirulirutatuutuu
Re: Търся...
Библиотеката conio.h в Борландските компилатори ги съдържа всички тези
неща които ти трябват.
Мисля че става и за С само.
Надявам се това да ти помогне...
неща които ти трябват.
Мисля че става и за С само.
Надявам се това да ти помогне...
Re: Търся...
Знам, че ги има, но не ми е позволено да ги използвам 
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
Re: GUI Toolkit page
Благодаря, ще погледна
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
курсова задача а?
... Предполагам че искат да им направиш прозорец с меню и т.н.....
Гадна работа .... Виж това може да ти свърши някаква работа:
// отпечатва текст на екрана с координати x, y и със атрибути (цвят и фон) attr
void my_puttextXY(int x, int y, char *text, int attr)
{
unsigned char *vmem = (unsigned char *)(0xB0000000UL) ;
vmem += x + y * 160 ;
while (*text)
{
*(vmem++) = attr ; // а може би беше *text++
*(vmem) = *text++ ; // а тука attr... пробвай
}
}
с помоща на тази финкция може да направиш всичко останало.
Гадна работа .... Виж това може да ти свърши някаква работа:
// отпечатва текст на екрана с координати x, y и със атрибути (цвят и фон) attr
void my_puttextXY(int x, int y, char *text, int attr)
{
unsigned char *vmem = (unsigned char *)(0xB0000000UL) ;
vmem += x + y * 160 ;
while (*text)
{
*(vmem++) = attr ; // а може би беше *text++
*(vmem) = *text++ ; // а тука attr... пробвай
}
}
с помоща на тази финкция може да направиш всичко останало.
Re: курсова задача а?
0xB0000000 (0xB000:0000) - ne beshe li ako si w Mode 7 (Hercules/MGA)
w mode 3 (puk i 0,1,2) ne beshe li ot 0xB800:0000
wupreki che na 0000:0467 - ili negde tam blizhe (0463??) se zapiswashe w koj rezhim si - ma tez raboti otpredi 9-10 godini - de sja da si gi spomnjam!?!?!?
tirulirutatuutuu
w mode 3 (puk i 0,1,2) ne beshe li ot 0xB800:0000
wupreki che na 0000:0467 - ili negde tam blizhe (0463??) se zapiswashe w koj rezhim si - ma tez raboti otpredi 9-10 godini - de sja da si gi spomnjam!?!?!?
tirulirutatuutuu
Re: курсова задача а?
Благодара ви! Точно това търсех!
Между дугото... за mode 3 наистина е B800:0000
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
Между дугото... за mode 3 наистина е B800:0000
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
Редактирано от ¤ asamus ergin ¤ на
Re: курсова задача а?
Странно, но не се получава и по двата начина....
намерих функция, подобна на тази, която прави същото.... или би трябвало да прави същото, но и при нея резултат няма.
Интересното е, че няма никакви промени по екранната памет (не се променя написан вече там текст, например).
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
намерих функция, подобна на тази, която прави същото.... или би трябвало да прави същото, но и при нея резултат няма.
Интересното е, че няма никакви промени по екранната памет (не се променя написан вече там текст, например).
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
... да изясним задачата
1. Операционна система... това работи за MS Dos и за Dos прозорец под Win...
Пробвал съм го със компилатора BC3.1... но компилатора няма нищо общо с това...
2. Предполагам, че си забелязал че пойнтъра трябва да сочи към 0xB8000000...
3. Какво по-точно се случва, когато извикаш функцията?
4. пробвай тази програмка...
void main()
{asm
{
mov ax, 0xb800
mov es, ax
xor di, di
mov cx, 2000
rep movsw
}
}
ако тя не ти запълни екрана с глупости значи наистина нещо се е спекло...
Пробвал съм го със компилатора BC3.1... но компилатора няма нищо общо с това...
2. Предполагам, че си забелязал че пойнтъра трябва да сочи към 0xB8000000...
3. Какво по-точно се случва, когато извикаш функцията?
4. пробвай тази програмка...
void main()
{asm
{
mov ax, 0xb800
mov es, ax
xor di, di
mov cx, 2000
rep movsw
}
}
ако тя не ти запълни екрана с глупости значи наистина нещо се е спекло...
Re: курсова задача а?
Това работи само за монохромен адаптер.
За цветен трябва да се сложи 0xB8000000UL
За цветен трябва да се сложи 0xB8000000UL
Re: курсова задача а?
Ia probvai taka:
unsigned char far *vmem = (unsigned char far *)(0xB8000000UL) ;
vmem += x * 160 + y * 2 ;
unsigned char far *vmem = (unsigned char far *)(0xB8000000UL) ;
vmem += x * 160 + y * 2 ;
Re: курсова задача а?
Опитах следното:
char far *pv;
pv = (char far *)0xb8000000 + y*160 + x*2;
*pv++=c;
*pv=(b<<2)|f;
...и се получи.
Много се радвам!
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?
char far *pv;
pv = (char far *)0xb8000000 + y*160 + x*2;
*pv++=c;
*pv=(b<<2)|f;
...и се получи.
Много се радвам!
...нормалното състояние на нещата е да са повредени..., защо тогава да ги поправяме?