True Colors and High res.
True Colors and High res.
Ive heard about people doing 24 bit (r-255,g-255,b-255) colors and high resolution (800x600, 1024x7680,ect...) graphics in QB. Does anybody know how to do this without the use of librarys? I mean... I dunno... OUT statements or something.
C:\DOS
C:\DOS\RUN
RUN\DOS\RUN
C:\DOS\RUN
RUN\DOS\RUN
- {Nathan}
- Veteran
- Posts: 1169
- Joined: Thu Aug 19, 2004 6:08 pm
- Location: The wetlands of central Ohio, USA
- Contact:
Uhh... it is REALLY slow, but wizard Aaron Severn released something on that... its in the tutorials sections.
FREEBASIC! *cough cough*
www.freebasic.net
FREEBASIC! *cough cough*
www.freebasic.net
Code: Select all
red% = 222: green% = 0: blue% = 0
OUT &H3C8, 0
OUT &H3C9, red%
OUT &H3C9, green%
OUT &H3C9, blue%
Code: Select all
'Subject:?VGA/SVGA?INTERRUPTS??????Date:?03-03-96?(20:38)
'Author:?Mike?Huff?????????????????Code:?Text
'Origin:?FidoNet?QUIK?BAS?Echo?????Packet:?FAQS.ABC
'___________________________________________________
'>?inreg.ax?=?&H1C?'?Sets?640X480X256?mode
'>?CALL?INTERRUPT(&H10,?inreg,?outreg)
'This?routine?doesn't?work?so?great?on?my?machine?(or?at?least?my?Trident?VESA
'card.)?You?used?the?wrong?value?for?the?AX?register.?Here's?a?list?that
'should?work?on?any?VGA/SVGA?machine:
'AX??????Resolution??????Text?H/W?????????Segment
'5Ch?for?640x400x256?????(80x25)??????????A000h
'5Dh?for?640x480x256?????(80x30)??????????A000h
'6Ch?for?640x480x16M?????(80x30)??????????A000h
'5Bh?for?800x600x16??????(100x75)?????????A000h
'5Eh?for?800x600x256?????(100x75)?????????A000h
'5Fh?for?1024x768x16?????(128x48)?????????A000h
'62h?for?1024x768x256????(128x48)?????????A000h
'63h?for?1280x1024x16????(160x64)?????????A000h
'64h?for?1280x1024x256???(160x64)?????????A000h
'Some?of?the?higher?res?or?color?modes?may?not?work?on?every?video?card.
'You?should?also?use?direct?memory?writes?instead?of?the?extremely?slow?BIOS
'"PSET"?routines.?Here's?an?example?in?case?you?don't?know:
'DEF?SEG?=?&HA000
'POKE?(Xmax&?*?Y&?+?X&),?TheColorYaWant%
'DEF?SEG
Code: Select all
' Subject: COLOR MIXER Date: 09-22-97 (21:59)
' Author: David Calhoun Code: QB, QBasic, PDS
' Origin: _gotmilk_@geocities.com Packet: GRAPHICS.ABC
'---------------------------------------------------------------------------
'? This is HEXCOLORS.BAS by David--- ?
'? Calhoun '97. This is a helpful--- ?
'? prog. for finding the RGB value-- ?
'? of just about any color. -------- ?
'
SCREEN 12
COLOR 4
PRINT "Press R for more red",
COLOR 2: PRINT "Press G for more green",
COLOR 1: PRINT " Press B for more blue"
COLOR 4
PRINT "Press 1 for less red",
COLOR 2: PRINT "Press 2 for less green",
COLOR 1: PRINT " Press 3 for less blue"
COLOR 7
PRINT
PRINT " Press "; CHR$(24); " for all up Press D for Default color. Press "; CHR$(25); " for all down"
COLOR 3
r = 0: g = 0: b = 0
rr = 310: gg = 310: bb = 310
l$ = ""
DO UNTIL l$ = CHR$(27)
l$ = UCASE$(l$)
l$ = INKEY$
IF l$ = "r" AND r < 63 THEN LINE (30, rr)-(50, rr), 0: r = r + 1: rr = rr - 3
IF l$ = "g" AND g < 63 THEN LINE (90, gg)-(110, gg), 0: g = g + 1: gg = gg - 3
IF l$ = "b" AND b < 63 THEN LINE (150, bb)-(170, bb), 0: b = b + 1: bb = bb - 3
IF l$ = "1" AND r > 0 THEN LINE (30, rr)-(50, rr), 0: r = r - 1: rr = rr + 3
IF l$ = "2" AND g > 0 THEN LINE (90, gg)-(110, gg), 0: g = g - 1: gg = gg + 3
IF l$ = "3" AND b > 0 THEN LINE (150, bb)-(170, bb), 0: b = b - 1: bb = bb + 3
IF l$ = CHR$(0) + "H" AND r < 63 AND g < 63 AND b < 63 THEN
LINE (30, rr)-(50, rr), 0
LINE (90, gg)-(110, gg), 0
LINE (150, bb)-(170, bb), 0
r = r + 1: g = g + 1: b = b + 1
rr = rr - 3: gg = gg - 3: bb = bb - 3
END IF
IF l$ = CHR$(0) + "P" AND r > 0 AND g > 0 AND b > 0 THEN
LINE (30, rr)-(50, rr), 0
LINE (90, gg)-(110, gg), 0
LINE (150, bb)-(170, bb), 0
r = r - 1: g = g - 1: b = b - 1
rr = rr + 3: gg = gg + 3: bb = bb + 3
END IF
IF l$ = "d" THEN
LINE (30, rr)-(50, rr), 0
LINE (90, gg)-(110, gg), 0
LINE (150, bb)-(170, bb), 0
r = 0: g = 0: b = 0: rr = 310: gg = 310: bb = 310
END IF
LINE (40, 122)-(40, 309), 4
LINE (100, 122)-(100, 309), 2
LINE (160, 122)-(160, 309), 1
LINE (30, rr)-(50, rr), 4
LINE (90, gg)-(110, gg), 2
LINE (150, bb)-(170, bb), 1
OUT &H3C8, 3
OUT &H3C9, r
OUT &H3C9, g
OUT &H3C9, b
CIRCLE (400, 240), 131, 8
CIRCLE (400, 240), 130
PAINT (400, 240)
COLOR 12
LOCATE 7, 4
PRINT r
LOCATE 7, 11
PRINT g
LOCATE 7, 18
PRINT b
COLOR 3
LOOP
COLOR 12
i need help cleaning my home and my mind