blob: fa574bd72401d90d504bd5a231dddd75cba4bb6d [file] [log] [blame]
bits 16
org 100h
jmp start
shuffle_start:
push 0xB800
pop es
mov cx, 80*24*2
mov ax, 'AA'
xor di, di
rep stosw
.lbl: jmp .lbl
shuffle_end:
nop
shuffle_len equ (shuffle_end - shuffle_start + 1)
start:
; calculate physical address of shuffled part
xor eax, eax
push ds
pop ax
shl eax, 4
add ax, shuffle_start
mov dword [source], eax
mov ax, 0012h
mov di, shuffle_descriptors
mov cx, num_shuffle_descriptors
mov ebp, 0x7c00
int 22h
int3
shuffle_descriptors:
dd 0x7C00
source: dd 0
dd shuffle_len
num_shuffle_descriptors equ 1