Changeset 101 in xtideuniversalbios for trunk/Assembly_Library/Src/Display/DisplayContext.asm
- Timestamp:
- Jan 31, 2011, 7:03:22 PM (14 years ago)
- google:author:
- aitotat
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Assembly_Library/Src/Display/DisplayContext.asm
r52 r101 1 ; File name : DisplayContext.asm2 1 ; Project name : Assembly Library 3 ; Created date : 25.6.20104 ; Last update : 11.10.20105 ; Author : Tomi Tilli6 2 ; Description : Functions for managing display context. 7 3 … … 20 16 ALIGN JUMP_ALIGN 21 17 DisplayContext_Initialize: 22 call .DetectAndSetDisplaySegment ; and .InitializeFlags23 18 mov WORD [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fnCharOut], DEFAULT_CHARACTER_OUTPUT 24 19 mov WORD [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.wCursorShape], CURSOR_NORMAL 25 20 mov BYTE [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bAttribute], SCREEN_BACKGROUND_ATTRIBUTE 26 xor ax, ax 27 call DisplayCursor_SetCoordinatesFromAX 28 jmp DisplayContext_SynchronizeToHardware 21 ; Fall to .DetectAndSetDisplaySegment 29 22 30 23 ;-------------------------------------------------------------------- … … 40 33 mov ax, COLOR_TEXT_SEGMENT 41 34 cmp BYTE [VIDEO_BDA.bMode], MDA_TEXT_MODE 42 jne SHORT .StoreSegmentToDisplayContext 43 mov ax, MONO_TEXT_SEGMENT 44 .StoreSegmentToDisplayContext: 35 eCMOVE ah, MONO_TEXT_SEGMENT >> 8 45 36 mov [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition+2], ax 46 ; Fall to InitializeFlags37 ; Fall to .InitializeFlags 47 38 48 39 ;-------------------------------------------------------------------- … … 62 53 .DoNotSetCgaFlag: 63 54 mov [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bFlags], dl 64 ret 55 ; Fall to .InitializeCursor 56 57 ;-------------------------------------------------------------------- 58 ; .InitializeCursor 59 ; Parameters: 60 ; DS: BDA segment (zero) 61 ; Returns: 62 ; Nothing 63 ; Corrupts registers: 64 ; AX, DX 65 ;-------------------------------------------------------------------- 66 .InitializeCursor: 67 xor ax, ax 68 call DisplayCursor_SetCoordinatesFromAX 69 ; Fall to DisplayContext_SynchronizeToHardware 70 71 ;-------------------------------------------------------------------- 72 ; DisplayContext_SynchronizeToHardware 73 ; Parameters: 74 ; DS: BDA segment (zero) 75 ; Returns: 76 ; Nothing 77 ; Corrupts registers: 78 ; AX, DX 79 ;-------------------------------------------------------------------- 80 ALIGN JUMP_ALIGN 81 DisplayContext_SynchronizeToHardware: 82 call DisplayPage_SynchronizeToHardware 83 call DisplayCursor_SynchronizeShapeToHardware 84 jmp DisplayCursor_SynchronizeCoordinatesToHardware 65 85 66 86 … … 145 165 pop ds 146 166 ret 147 148 149 ;--------------------------------------------------------------------150 ; DisplayContext_SynchronizeToHardware151 ; Parameters:152 ; DS: BDA segment (zero)153 ; Returns:154 ; Nothing155 ; Corrupts registers:156 ; AX, DX157 ;--------------------------------------------------------------------158 ALIGN JUMP_ALIGN159 DisplayContext_SynchronizeToHardware:160 call DisplayPage_SynchronizeToHardware161 call DisplayCursor_SynchronizeShapeToHardware162 jmp DisplayCursor_SynchronizeCoordinatesToHardware163 167 164 168
Note:
See TracChangeset
for help on using the changeset viewer.