October 10, 2001
Jag håller för fullt på att lär mig C++. Jag plöjer en bok som är en standardbok om man vill lära sig programmera. En sån 3 veckors bok.
Jag skulle gärna vilja ha ett exempel (enkelt!) på lite grafik i c++. Jag har läst lite på en guide på nätet om grafik till C. men jag skulle vilja veta syntaxen i c++. Länken till den sidan är:
http://www.algonet.se/%7Eandyr.....urser.html
Vore väldigt vänligt om någon ville hejälpa till. Ibland kan det vara lätt att sluta progga ett tag, men om jag får se vad som väntar när jag behärskar c++ lite mer hjälper det nog.
Förresten, om det finns böcker på området är jag tacksam för boktips.
August 29, 2001
_asm{
mov AH,0 // BIOS Vid function number. (0 sets vid mode)
mov AL, 0x13 // Mode number
int 10h // Call BIOS interrupt
}
void* pointer = (void*)0xa0000000;
*((unsigned char*)pointer) = 15;
Följande kod byte till skärmläge 13 och ritar en vit punkt vid ( 0, 0 )
Funkar dock inte med MSVC++(det blir bluescreen)
Annars kan du använda OpenGL lr :spy: DirectX
August 29, 2001
Därför att det går c:a 3x fortare att göra egen 2d grafik om man har en compiler som klarar av bios anrop
Kanhända att DX är snabbare än GL på 2D, men Direct3D...DET suger...
_________________
1200TB @ 1333, 1400 el. 1466. Beror på humör
Titta gärna på min mod:
[ Detta Inlägg ändrades av: Tjoppen den 2001-10-10 19:47 ]
October 10, 2001
tack för svaren, men jag fick inte koden att kompilera. skulle du kunna skicka en klar version som innehåller alla referenser som behövs. jag har gcc kompilatorn för linux.
förresten, att progga openGL (som jag tycker om bäst), är det mycket svårare än den typen du beskrev i kodeexemplet?
December 28, 2000
On 2001-10-10 19:46, Tjoppen wrote:
Därför att det går c:a 3x fortare att göra egen 2d grafik om man har en compiler som klarar av bios anrop
Kanhända att DX är snabbare än GL på 2D, men Direct3D...DET suger..._________________
1200TB @ 1333, 1400 el. 1466. Beror på humör
Titta gärna på min mod:[ Detta Inlägg ändrades av: Tjoppen den 2001-10-10 19:47 ]
Det går ännu fortare om man skriver direkt till minnet.
Se denna sida:
http://home5.swipnet.se/%7Ew-55127/kurser.html
August 29, 2001
Följande kod ska nu förklaras:
_asm{
mov AH,0 // BIOS Vid function number. (0 sets vid mode)
Säger åt bios att vi vill byta skärmläge
mov AL, 0x13 // Mode number
Vilket skärmläge(13h i detta fall)
int 10h // Call BIOS interrupt
Anropa bios interrupt 10h(lr 16 om man så vill)
}
void* pointer = (void*)0xa0000000;
Gör en pekare till grafik minnet
*((unsigned char*)pointer) = 15;
Ändra första unsigned char(0,0) till 15(vit)
*((unsigned char*)pointer+1) = 15;
Ändra andra unsigned char(1,0) till 15(vit)
Denna kod KRÄVER Birland C++ lr en annan dos compiler...
August 2, 2001
On 2001-10-14 20:13, Mikkoloo wrote:
OK, men eftersom jag nu inte programerar under dos/windows så söker jag kod som fungerar garanterat med unix kompilatorer. Nåtgra tips nån?
Gjorde en sökning på nätet och hittade följande på Linux Assembly Archive:
". It sounds as
though you want to access the DOS VGA memory at real mode address
segment A000. This location is mearly data for the video card stored
at this location by DOS system software. This is a software thing not
a function of the actual physical hardware. The linux SVGAlib maps
video memory at virtual memory address 0x04000000. X windows uses a
system software interface to the memory mapped VGA via an entry in the
/proc/ directory tree."
"> Hello, I am a relatively new-to-assembly programmer. I was wondering
> if itwas safe to use INT 10h for doing simple graphics I/O?
No, there's no access to realmode BIOS services.Try linux fbcon (frame buffer) for doing graphics."
Så det ser ut som du måste skriva om koden helt och hållet för att få den att fungera under Linux. Tough shit
October 10, 2001
För det första: DirectX är bra!
Det är ett snabbt och relativt enkelt verktyg för grafik, ljud, nätverk m.m i windows.
För det andra: Anledningen till att du inte kan anropa bios i MSVC++ är att du där bara kan kompilera Win32 och då tillåts inga biosanrop, då bör du programmera DOS, vilket är bra. Underskatta inte DOS, måhända är det inte särskilt modernt men det är ganska enkelt och framför allt så är det stabilt!
Programmering i Linux kan jag inte så mycket om men mitt råd till dig är att programmera antingen DOS(enkelt) eller windows och DirectX(inte lika enkelt).
October 10, 2001
Förresten så kan du skippa den där boken också, har provat att läsa sådana, de är värdelösa. Hitta en bra tutorial på nätet istället http://www.programmersheaven.com är en bra sida.
Lycka till!
October 10, 2001
ah, tack för tipsen, har märkt att programmersheaven.com är rätt bra Förresten har jag kommit på hur man skapar lite enkel grafik i Linux. Det finns ett lib som heter SDL. Kolla libsdl om du hade samma problem som jag. Nu ska jag bara försöka göra något användbart.
Men sen har jag en fråga till. Det jag lär mig nu, om slingor, relationuttryck och saker, har jag stor nytta av det sen? Jag har kollat i koden på små spel, det är inte mycket sånt alls juh...
August 29, 2001
On 2001-10-18 17:07, Quaero wrote:
För det första: DirectX är bra!
Det är ett snabbt och relativt enkelt verktyg för grafik, ljud, nätverk m.m i windows.
För det andra: Anledningen till att du inte kan anropa bios i MSVC++ är att du där bara kan kompilera Win32 och då tillåts inga biosanrop, då bör du programmera DOS, vilket är bra. Underskatta inte DOS, måhända är det inte särskilt modernt men det är ganska enkelt och framför allt så är det stabilt!
Programmering i Linux kan jag inte så mycket om men mitt råd till dig är att programmera antingen DOS(enkelt) eller windows och DirectX(inte lika enkelt).
Hrrrrmff.....Hrrr....Humppf.... :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe:
DirectX snabbt....Det dummaste jag ngnsins hört!! :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe: :hehe:
1 Guest(s)