X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=bootcensus;a=blobdiff_plain;f=src%2Fstartup.s;h=0a36b67c67623d79ad8294191e7679c42396da4d;hp=8041c13d404f7bb8fa1fb8217a2bf11ea568359d;hb=91fc6b749ad3a64c9a2686952eb30be517c6beb9;hpb=b3d12cd7ebb86b8fafbb3ef9d2aaa9a4797b4f00 diff --git a/src/startup.s b/src/startup.s index 8041c13..0a36b67 100644 --- a/src/startup.s +++ b/src/startup.s @@ -20,6 +20,8 @@ .extern _bss_start .extern _bss_end .extern pcboot_main + .extern wait_vsync + .extern kb_getkey # move the stack to the top of the conventional memory movl $0x80000, %esp @@ -42,6 +44,8 @@ skip_bss_zero: .global logohack logohack: + pusha + # copy palette mov $logo_pal, %esi xor %cl, %cl @@ -131,16 +135,18 @@ xloop: incl frameno - # wait vsync - mov $0x3da, %dx -0: in %dx, %al - and $8, %al - jnz 0b -0: in %dx, %al - and $8, %al - jz 0b + call wait_vsync + + # check for escape keypress + call kb_getkey + cmp $27, %eax + jz 0f + jmp frameloop +0: popa + ret + xval: .long 0 yval: .long 0 frameno: .long 0