| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen   | 
	
	
	
		| Autor | 
		Nachricht | 
	
	
		Progger_X Mr. Lagg
 
  Anmeldungsdatum: 24.11.2004 Beiträge: 784 Wohnort: Leipzig
  | 
		
			
				 Verfasst am: 30.05.2006, 20:40    Titel: Maus+Vesa=Bum? | 
				     | 
			 
			
				
  | 
			 
			
				Hallo!
 
 
Ich habe versucht, Maus und Vesa gleichzeitig zu initiallisieren, und zwar hiermit:
 
 
 	  | Code: | 	 		  '$INCLUDE: 'qb.bi'
 
 
DIM reg AS RegTypeX
 
DIM regaus AS RegTypeX
 
 
CONST xmax = 1024
 
CONST ymax = 768
 
 
CLS
 
SCREEN 13
 
 
'DIM puffer AS STRING * 280
 
puffer$ = SPACE$(280)
 
reg.ax = &H4F01
 
reg.es = VARSEG(puffer$)
 
reg.di = SADD(puffer$)
 
CALL INTERRUPTX(&H10, reg, regaus)
 
IF (regaus.ax <> &H4F) THEN
 
 PRINT "Leider wird von ihrer Graphikkarte kein VESA Graphikmodus unterst?tzt"
 
 SLEEP: END
 
END IF
 
 
 
reg.ax = &H4F02
 
reg.bx = 261
 
CALL INTERRUPTX(&H10, reg, regaus)
 
IF regaus.ax <> &H4F THEN
 
  PRINT "Leider wird dieser Graphikmodus NICHT unterst?tzt"
 
  SLEEP: END
 
END IF
 
 
grosse = 65536
 
 
FOR y = 1 TO 600
 
 x = x + 1
 
 offset& = (1024 * y) + x
 
 bank& = CINT(offset& / grosse)
 
 offset& = offset& - grosse * bank&
 
 reg.ax = &H4F05
 
 reg.bx = 0
 
 reg.dx = bank&
 
 DEF SEG = &HA000
 
 CALL INTERRUPTX(&H10, reg, regaus)
 
 POKE offset&, 15
 
 DEF SEG
 
NEXT
 
 
reg.bx = 0
 
reg.cx = 0
 
reg.dx = 0
 
reg.es = 0
 
reg.di = 0
 
 
 
 
reg.ax = &H0
 
CALL INTERRUPTX(&H33, reg, reg)
 
IF regaus.ax <> &HFFFF THEN
 
   PRINT "Mauszeiger installiert"
 
  ELSE
 
   PRINT "Mauszeiger nicht installiert"
 
   SLEEP: END
 
END IF
 
 
DIM neureg AS RegTypeX
 
reg.ax = 1
 
CALL INTERRUPTX(&H33, reg, regaus)
 
 
 
WHILE ende = 0
 
  ende = 1
 
WEND
 
 
 | 	  
 
 
Kann mir jemand bitte sagen, wieso bei dem Interrupt &H33 bei AL=01 das ganze abstürzt, und wie ich das verhindern kann?(Pif bla error) | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		A.K.
 
  
  Anmeldungsdatum: 02.05.2005 Beiträge: 467 Wohnort: HH
  | 
		
			
				 Verfasst am: 30.05.2006, 21:40    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				hi,
 
 
 	  | Zitat: | 	 		  reg.ax = &H0 
 
CALL INTERRUPTX(&H33, reg, reg) 
 
IF regaus.ax <> &HFFFF THEN 
 
   PRINT "Mauszeiger installiert" 
 
  ELSE 
 
   PRINT "Mauszeiger nicht installiert" 
 
   SLEEP: END 
 
END IF 
 
 | 	  
 
 
da stimmt einmal das regaus.ax nicht, das müßte reg.ax heißen.
 
 
 
 
Und zu dem Absturz ist zu sagen das der "Hardware"-Mauszeiger nicht in VESA-Modi funktioniert. Scheint wohl daran zu liegen das niemand dem Maustreiber mitteilt das sich die Auflösung geändert hat.
 
Da hilft nur, daß du die Mauskoordinaten direkt abfragst und einen eigenen Mauscursor benutzt.
 
 
MFG A.K. _________________
   
 
http://forum.IconSoft.de 
 
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU* | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Sebastian Administrator
  
  Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
  | 
		 | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		A.K.
 
  
  Anmeldungsdatum: 02.05.2005 Beiträge: 467 Wohnort: HH
  | 
		
			
				 Verfasst am: 30.05.2006, 21:48    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				[OffTopic] 
 
 
lach, hi seb,
 
 
nee das ist der name eines älteren projektes den ich für ein neues projekt mißbrauche. und das schreibt man mit C am ende  
 
 
Und das ist der Codename für mein OS, welches im übrigen schon auf einem meiner Rechner am rödeln ist  
 
 
MFG A.K.
 
 
[/OffTopic] _________________
   
 
http://forum.IconSoft.de 
 
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU* | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Sebastian Administrator
  
  Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
  | 
		 | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		A.K.
 
  
  Anmeldungsdatum: 02.05.2005 Beiträge: 467 Wohnort: HH
  | 
		
			
				 Verfasst am: 31.05.2006, 23:51    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Das OS wirds wahrscheinlich nicht zum Download geben da ich das Ganze eigentlich nur für mich progge um meine Kenntnisse ein wenig(oder auch mehr) zu erweitern. Aber mal sehen wie die Entwicklung weitergeht..
 
 
MFG A.K. _________________
   
 
http://forum.IconSoft.de 
 
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU* | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Sebastian Administrator
  
  Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
  | 
		 | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		Progger_X Mr. Lagg
 
  Anmeldungsdatum: 24.11.2004 Beiträge: 784 Wohnort: Leipzig
  | 
		
			
				 Verfasst am: 05.06.2006, 17:49    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				| [ontopic]Und wie lese ich die Mauskoordinaten auf so nem großen Bildschirm aus, ohne den Interrupt 33?[/ontopic] | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		A.K.
 
  
  Anmeldungsdatum: 02.05.2005 Beiträge: 467 Wohnort: HH
  | 
		
			
				 Verfasst am: 06.06.2006, 07:34    Titel:  | 
				     | 
			 
			
				
  | 
			 
			
				Den INT 33h kannst du benutzen wie gehabt, du darfst dann nur nicht den Mauszeiger einschalten. Dann sollte das auch in VESA gehen.
 
Die Mauskoordinaten kann man auch abfragen wenn der Zeiger nicht vorhanden ist.
 
 
MFG A.K. _________________
   
 
http://forum.IconSoft.de 
 
http://www.pnpbb.de - hol dir jetzt dein eigenes kostenloses Forum *NEU* | 
			 
		  | 
	
	
		| Nach oben | 
		 | 
	
	
		  | 
	
	
		 |