0x40 Blitmode - Get/Set Blitter Configuration Synopsis: WORD Blitmode(flag); WORD flag; Extended BIOS (trap #14) function number 0x40 (64 decimal) gets and sets the blitter configuration. If 'flag' is -1 (0xffff), then no set operation is performed, and the current blitter configuration is returned. If 'flag' is not -1, then the blitter configuration is set as follows: bit 0: 0: set blit mode to software. 1: set blit mode to hardware. bits 1-14: undefined, reserved. bit 15: must be zero. The blitter configuration before the set is returned in the low word of D0. The fields are: bit 0: 0: blits are being done in software. 1: blits are being done in hardware. bit 1: 0: no chip is available. 1: a blit chip is installed. bits 2-14: undefined, reserved. bit 15: always retrned as zero. If an attempt is made to set the blit mode to 'hard' on a system that does not contain a blit chip, the mode is forced to software. The reserved fields are for future blitter capabilities and other graphics chips. They should be treated as "don't care" fields and should be maintained (intact) because they will acquire meaning in the future. This call works on all ROM versions of the operating system. Example - from C ------- ---- - #define Blitmode(a) xbios(64,a); curmode = Blitmode(-1); /* save state */ Blitmode(curmode | 1); /* turn on blit */ do_stuff(); /* do processing */ Blitmode(curmode); /* restore state */ Extended BIOS blitter Configuration Call Example - from assembly ------- ---- -------- move.w #-1,-(sp) ;do Blitmode(-1) move.w #$40,-(sp) trap #14 addq #4,sp move.w d0,-(sp) ;save state or.w #1,d0 ;make sure it is on move.w d0,-(sp) ;do Blitmode(d0) move.w #$40,-(sp) trap #14 addq #4,sp ; ; do some processing ; ;(the old state is still on the stack) move.w #$40,-(sp) ;restore state trap #14 addq #4,sp Extended BIOS blitter Configuration Call