Lines Matching refs:BX
286 mov bx, #0xc000
287 mov ds, bx
396 mov bx, #0xc000
397 mov ds, bx
430 mov bx, #msg_vga_init
431 push bx
456 mov bx, # BIOSMEM_INITIAL_MODE
457 mov ax, [bx]
461 mov [bx], ax
466 mov bx, # BIOSMEM_CHAR_HEIGHT
468 mov [bx], al
471 mov bx, # BIOSMEM_VIDEO_CTL
473 mov [bx], al
476 mov bx, # BIOSMEM_SWITCHES
478 mov [bx], al
481 mov bx, # BIOSMEM_MODESET_CTL
483 mov [bx], al
486 mov bx, # BIOSMEM_CURRENT_MSR
488 mov [bx], al
570 mov bx,#0x0000
575 mov bx,#0x000b
583 static void int10_debugmsg(DI, SI, BP, SP, BX, DX, CX, AX, DS, ES, FLAGS)
584 Bit16u DI, SI, BP, SP, BX, DX, CX, AX, ES, DS, FLAGS;
588 printf("vgabios call ah%02x al%02x bx%04x cx%04x dx%04x\n",GET_AH(),GET_AL(),BX,CX,DX);
596 static void int10_func(DI, SI, BP, SP, BX, DX, CX, AX, DS, ES, FLAGS)
597 Bit16u DI, SI, BP, SP, BX, DX, CX, AX, ES, DS, FLAGS;
637 BX=0x00;
672 biosfn_perform_gray_scale_summing(BX,CX);
742 biosfn_read_state_info(BX,ES,DI);
749 biosfn_read_video_state_size(CX,&BX);
752 BX);
755 biosfn_restore_video_state(CX,ES,BX);
777 vbe_biosfn_set_mode(&AX,BX,ES,DI);
780 vbe_biosfn_save_restore_state(&AX, CX, DX, ES, &BX);
1739 push bx
1773 pop bx
1778 push bx
1802 pop bx
2064 push bx
2065 mov bx, # BIOSMEM_CURRENT_PAGE
2066 mov al, [bx]
2067 pop bx
2069 push bx
2070 mov bx, # BIOSMEM_VIDEO_CTL
2071 mov ah, [bx]
2073 mov bx, # BIOSMEM_CURRENT_MODE
2074 mov al, [bx]
2076 mov bx, # BIOSMEM_NB_COLS
2077 mov ah, [bx]
2078 pop bx
2174 push bx
2177 pop bx
2185 push bx
2188 mov bx, dx
2197 mov al, [bx]
2199 inc bx
2206 mov al, [bx]
2212 pop bx
2221 push bx
2239 pop bx
2274 push bx
2278 pop bx
2288 push bx
2291 mov bx, dx
2302 mov [bx], al
2303 inc bx
2315 mov [bx], al
2323 pop bx
2354 push bx
2362 mov bx, dx
2366 mov al, [bx]
2368 inc bx
2370 mov al, [bx]
2372 inc bx
2374 mov al, [bx]
2376 inc bx
2381 pop bx
2390 push bx
2426 pop bx
2458 push bx
2466 mov bx, dx
2471 mov [bx], al
2472 inc bx
2475 mov [bx], al
2476 inc bx
2479 mov [bx], al
2480 inc bx
2485 pop bx
2643 div bx
2857 mov bx, # BIOSMEM_SWITCHES
2858 mov cl, [bx]
2860 mov bx, # BIOSMEM_CRTC_ADDRESS
2861 mov ax, [bx]
2862 mov bx, #0x0003
2887 push bx
2892 mov bx, # BIOSMEM_MODESET_CTL
2893 mov al, [bx]
2894 mov bx, # BIOSMEM_SWITCHES
2895 mov ah, [bx]
2905 mov bx, #msg_vert_res
2906 push bx
2940 mov bx, # BIOSMEM_MODESET_CTL
2941 mov [bx], al
2942 mov bx, # BIOSMEM_SWITCHES
2943 mov [bx], ah
2947 pop bx
2960 push bx
2967 mov bx, # BIOSMEM_MODESET_CTL
2968 mov al, [bx]
2971 mov [bx], al
2974 pop bx
2980 push bx
2994 pop bx
3000 push bx
3008 mov bx, # BIOSMEM_MODESET_CTL
3009 mov al, [bx]
3012 mov [bx], al
3015 pop bx
3022 push bx
3029 mov bx, # BIOSMEM_MODESET_CTL
3030 mov al, [bx]
3033 mov [bx], al
3036 pop bx
3104 mov bx, # BIOSMEM_DCC_INDEX
3105 mov al, [bx]
3115 push bx
3118 mov ax, bx
3119 mov bx, # BIOSMEM_DCC_INDEX
3120 mov [bx], al
3125 mov bx, #msg_alt_dcc
3126 push bx
3130 pop bx
3144 static void biosfn_read_state_info (BX,ES,DI)
3145 Bit16u BX;Bit16u ES;Bit16u DI;
3188 static void biosfn_read_video_state_size (CX, BX)
3189 Bit16u CX; Bit16u *BX;
3192 write_word(ss, BX, biosfn_read_video_state_size2(CX));
3195 static Bit16u biosfn_save_video_state (CX,ES,BX)
3196 Bit16u CX;Bit16u ES;Bit16u BX;
3202 write_byte(ES, BX, inb(VGAREG_SEQU_ADDRESS)); BX++;
3203 write_byte(ES, BX, inb(crtc_addr)); BX++;
3204 write_byte(ES, BX, inb(VGAREG_GRDC_ADDRESS)); BX++;
3207 write_byte(ES, BX, ar_index); BX++;
3208 write_byte(ES, BX, inb(VGAREG_READ_FEATURE_CTL)); BX++;
3212 write_byte(ES, BX, inb(VGAREG_SEQU_DATA)); BX++;
3215 write_byte(ES, BX, inb(VGAREG_SEQU_DATA)); BX++;
3219 write_byte(ES, BX, inb(crtc_addr+1)); BX++;
3225 write_byte(ES, BX, inb(VGAREG_ACTL_READ_DATA)); BX++;
3231 write_byte(ES, BX, inb(VGAREG_GRDC_DATA)); BX++;
3234 write_word(ES, BX, crtc_addr); BX+= 2;
3237 write_byte(ES, BX, 0); BX++;
3238 write_byte(ES, BX, 0); BX++;
3239 write_byte(ES, BX, 0); BX++;
3240 write_byte(ES, BX, 0); BX++;
3243 write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE)); BX++;
3244 write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_NB_COLS)); BX += 2;
3245 write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE)); BX += 2;
3246 write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS)); BX += 2;
3247 write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS)); BX++;
3248 write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT)); BX += 2;
3249 write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL)); BX++;
3250 write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_SWITCHES)); BX++;
3251 write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_MODESET_CTL)); BX++;
3252 write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CURSOR_TYPE)); BX += 2;
3254 write_word(ES, BX, read_word(BIOSMEM_SEG, BIOSMEM_CURSOR_POS+2*i));
3255 BX += 2;
3257 write_word(ES, BX, read_word(BIOSMEM_SEG,BIOSMEM_CURRENT_START)); BX += 2;
3258 write_byte(ES, BX, read_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE)); BX++;
3260 write_word(ES, BX, read_word(0, 0x1f * 4)); BX += 2;
3261 write_word(ES, BX, read_word(0, 0x1f * 4 + 2)); BX += 2;
3262 write_word(ES, BX, read_word(0, 0x43 * 4)); BX += 2;
3263 write_word(ES, BX, read_word(0, 0x43 * 4 + 2)); BX += 2;
3267 write_byte(ES, BX, inb(VGAREG_DAC_STATE)); BX++; /* read/write mode dac */
3268 write_byte(ES, BX, inb(VGAREG_DAC_WRITE_ADDRESS)); BX++; /* pix address */
3269 write_byte(ES, BX, inb(VGAREG_PEL_MASK)); BX++;
3273 write_byte(ES, BX, inb(VGAREG_DAC_DATA)); BX++;
3275 write_byte(ES, BX, 0); BX++; /* color select register */
3277 return BX;
3280 static Bit16u biosfn_restore_video_state (CX,ES,BX)
3281 Bit16u CX;Bit16u ES;Bit16u BX;
3289 crtc_addr = read_word(ES, BX + 0x40);
3290 addr1 = BX;
3291 BX += 5;
3295 outb(VGAREG_SEQU_DATA, read_byte(ES, BX)); BX++;
3298 outb(VGAREG_SEQU_DATA, read_byte(ES, BX)); BX++;
3306 outb(crtc_addr+1, read_byte(ES, BX));
3308 BX++;
3318 outb(crtc_addr+1, read_byte(ES, BX - 0x18 + 0x11));
3325 outb(VGAREG_ACTL_WRITE_DATA, read_byte(ES, BX)); BX++;
3332 outb(VGAREG_GRDC_DATA, read_byte(ES, BX)); BX++;
3334 BX += 2; /* crtc_addr */
3335 BX += 4; /* plane latches */
3344 write_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_MODE, read_byte(ES, BX)); BX++;
3345 write_word(BIOSMEM_SEG,BIOSMEM_NB_COLS, read_word(ES, BX)); BX += 2;
3346 write_word(BIOSMEM_SEG,BIOSMEM_PAGE_SIZE, read_word(ES, BX)); BX += 2;
3347 write_word(BIOSMEM_SEG,BIOSMEM_CRTC_ADDRESS, read_word(ES, BX)); BX += 2;
3348 write_byte(BIOSMEM_SEG,BIOSMEM_NB_ROWS, read_byte(ES, BX)); BX++;
3349 write_word(BIOSMEM_SEG,BIOSMEM_CHAR_HEIGHT, read_word(ES, BX)); BX += 2;
3350 write_byte(BIOSMEM_SEG,BIOSMEM_VIDEO_CTL, read_byte(ES, BX)); BX++;
3351 write_byte(BIOSMEM_SEG,BIOSMEM_SWITCHES, read_byte(ES, BX)); BX++;
3352 write_byte(BIOSMEM_SEG,BIOSMEM_MODESET_CTL, read_byte(ES, BX)); BX++;
3353 write_word(BIOSMEM_SEG,BIOSMEM_CURSOR_TYPE, read_word(ES, BX)); BX += 2;
3355 write_word(BIOSMEM_SEG, BIOSMEM_CURSOR_POS+2*i, read_word(ES, BX));
3356 BX += 2;
3358 write_word(BIOSMEM_SEG,BIOSMEM_CURRENT_START, read_word(ES, BX)); BX += 2;
3359 write_byte(BIOSMEM_SEG,BIOSMEM_CURRENT_PAGE, read_byte(ES, BX)); BX++;
3361 write_word(0, 0x1f * 4, read_word(ES, BX)); BX += 2;
3362 write_word(0, 0x1f * 4 + 2, read_word(ES, BX)); BX += 2;
3363 write_word(0, 0x43 * 4, read_word(ES, BX)); BX += 2;
3364 write_word(0, 0x43 * 4 + 2, read_word(ES, BX)); BX += 2;
3367 BX++;
3368 v = read_byte(ES, BX); BX++;
3369 outb(VGAREG_PEL_MASK, read_byte(ES, BX)); BX++;
3373 outb(VGAREG_DAC_DATA, read_byte(ES, BX)); BX++;
3375 BX++;
3378 return BX;
3590 push bx
3594 mov bx, 6[bp] ; offset
3595 mov al, [bx]
3598 pop bx
3614 push bx
3618 mov bx, 6[bp] ; offset
3619 mov ax, [bx]
3622 pop bx
3640 push bx
3644 mov bx, 6[bp] ; offset
3646 mov [bx], al ; write data byte
3648 pop bx
3667 push bx
3671 mov bx, 6[bp] ; offset
3673 mov [bx], ax ; write data word
3675 pop bx
3841 push bx
3845 mov bx, ax
3854 cmp ax, bx ;; check vendor
3874 pop bx