.include IO.asm CALL Start .org 8 .dd InterruptHandlerCounter .dd InterruptHandlerMouse .dd InterruptHandlerKeyboard .org $100 Start: ;SET R0, $ff7700 ; Color ;SET R1, 100 ; X ;SET R2, 100 ; Y ;SET R3, 100 ; Width ;SET R4, 100 ; Height ;CALL Rectangle SET R0, HelloWorld SET R1, 110 SET R2, 110 CALL TextOut ;SET R0, 110 ;SET R1, 110 ;CALL SetPixelAddr ;SET R0, 65 ;SET R1, 110 ;SET R2, 110 ;CALL WriteChar StartLoop: JP StartLoop ;HALT InterruptHandlerCounter: RETI MousePosX: .dd 0 MousePosY: .dd 0 InterruptHandlerMouse: PUSH R0 PUSH R1 IN R0, (MouseGetPosX) SET R1, MousePosX ST (R1), R0 IN R0, (MouseGetPosY) SET R1, MousePosY ST (R1), R0 POP R1 POP R0 RETI InterruptHandlerKeyboard: RETI HelloWorld: .db "Hello world", 0 .include Graphics.asm