Changeset 52 in xtideuniversalbios for trunk/Assembly_Library/Src/Display/CgaSnow.asm
- Timestamp:
- Oct 12, 2010, 6:51:07 PM (15 years ago)
- google:author:
- aitotat
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Assembly_Library/Src/Display/CgaSnow.asm
r50 r52 2 2 ; Project name : Assembly Library 3 3 ; Created date : 8.10.2010 4 ; Last update : 9.10.20104 ; Last update : 12.10.2010 5 5 ; Author : Tomi Tilli 6 6 ; Description : Functions for preventing CGA snow. … … 23 23 cmp WORD [BDA.wVidPort], CGA_STATUS_REGISTER - OFFSET_TO_CGA_STATUS_REGISTER 24 24 jne SHORT .CgaNotFound 25 call DisplayPage_GetColumnsToALandRowsToAH 26 cmp ah, [BDA.bVidRows] ; Video rows stored only by EGA and later 27 je SHORT .CgaNotFound ; Must be EGA or later 25 26 ; All standard CGA modes use 25 rows but only EGA and later store it to BDA. 27 cmp BYTE [BDA.bVidRows], 25 28 jge SHORT .CgaNotFound 28 29 stc 29 30 ret … … 83 84 84 85 ;-------------------------------------------------------------------- 85 ; CgaSnow_Scasb86 ; Parameters:87 ; AL: Byte for comparison88 ; DS: BDA segment (zero)89 ; ES:DI: Ptr to video memory where to output90 ; Returns:91 ; DI: Incremented for next character92 ; Corrupts registers:93 ; AX, DX94 ;--------------------------------------------------------------------95 ALIGN JUMP_ALIGN96 CgaSnow_Scasb:97 call LoadCgaStatusRegisterAddressToDXifCgaPresent98 jz SHORT .ScasbWithoutWaitSinceUnknownPort99 100 mov ah, al101 cli ; Interrupt request would mess up timing102 WAIT_UNTIL_SAFE_CGA_WRITE103 mov al, ah104 .ScasbWithoutWaitSinceUnknownPort:105 scasb106 sti107 ret108 109 110 ;--------------------------------------------------------------------111 86 ; CgaSnow_RepMovsb 112 87 ; Parameters:
Note:
See TracChangeset
for help on using the changeset viewer.