Code: Select all
;here calls work fine
call bermuda_routine
mov byte [0b8000h], "A"
jmp $
stupid_routine:
mov byte [0b8002h], "B"
ret
bermuda_routine:
.........
mov byte [0b8004h], "C"
call stupid_routine
mov byte [0b8006h], "D"
ret
Code: Select all
;here calls work fine
call bermuda_routine
mov byte [0b8000h], "A"
jmp $
stupid_routine:
mov byte [0b8002h], "B"
ret
bermuda_routine:
.........
mov byte [0b8004h], "C"
call stupid_routine
mov byte [0b8006h], "D"
ret
Code: Select all
;here calls work fine
call bermuda_routine
mov byte [0b8000h], "A"
mov byte [0b8000h], "A" ;repeating this instruction make the code to print the expected: "ABCD"
jmp $
stupid_routine:
mov byte [0b8002h], "B"
ret
bermuda_routine:
.........
mov byte [0b8004h], "C"
call stupid_routine
mov byte [0b8006h], "D"
ret