;------------------------------------------------------------------------------
; @file
; qemu debug console support macros (based on serial port macros)
;
; Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.
; Copyright (c) 2024, Red Hat, Inc.
; SPDX-License-Identifier: BSD-2-Clause-Patent
;
;------------------------------------------------------------------------------
%macro debugShowCharacter 1
mov dx, 0x402
mov al, %1
out dx, al
%endmacro
%macro debugShowHexDigit 1
%if (%1 < 0xa)
debugShowCharacter BYTE ('0' + (%1))
%else
debugShowCharacter BYTE ('a' + ((%1) - 0xa))
%endif
%endmacro
%macro debugShowPostCode 1
debugShowHexDigit (((%1) >> 4) & 0xf)
debugShowHexDigit ((%1) & 0xf)
debugShowCharacter `\r`
debugShowCharacter `\n`
%endmacro
BITS 16
%macro debugInitialize 0
; not required
%endmacro