Non mi è chiaro quale sia il compito della funzione MK_FP(). Vi riporto un esempio:
Il che, secondo me, avrebbe acceso un pixel rosso alle coordinate [100,0], mentre invece ciò non avviene e lo schermo rimane nero. Quindi io mi chiedo come devo sostituirecodice:#pragma inline #include <dos.h> int main(void){ unsigned char far *schermo; unsigned char pixel; asm mov ax,0x13; asm int 0x10; schermo=(unsigned char *)MK_FP(0xA000,0); schermo+=100; pixel=0x04; *schermo=pixel; asm xor ax,ax; //attendi un tasto asm int 0x16; asm mov ax,0x03; //modalità testo asm int 0x10; return 0; }
[CODE]*schermo=pixel;[CODE]
che funziona benissimo se io invece che assegnare l'indirizzo al puntatore schermo tramite la funzione MK_FP() lo assegno al momento della dichiarazione(unsigned char far *schermo=0xA0000000).

 
			
			 
					
					
					
						 Rispondi quotando
  Rispondi quotando