flat assembler
Message board for the users of flat assembler.

Index > OS Construction > Miraculix Test

Author
Thread Post new topic Reply to topic
Kreoton



Joined: 05 Jun 2004
Posts: 14
Location: Russia, Moscow
Kreoton 10 Oct 2004, 21:48
Post 10 Oct 2004, 21:48
View user's profile Send private message Visit poster's website Reply with quote
asmdemon



Joined: 18 Jan 2004
Posts: 97
Location: Virginia Beach, VA
asmdemon 11 Oct 2004, 00:27
it works fine, until you press a key. i have included pictures of before and after a keypress was done and how the kernel responed to it.


Description: before any key pressed
Filesize: 33.96 KB
Viewed: 8159 Time(s)

before.jpg


Description: after any key pressed
Filesize: 23.46 KB
Viewed: 8159 Time(s)

after.jpg


Description: kernel response to keypress
Filesize: 39.87 KB
Viewed: 8159 Time(s)

response.jpg



_________________
It is better to be on the right side of the devil than in his path.
Post 11 Oct 2004, 00:27
View user's profile Send private message Visit poster's website Reply with quote
Matrix



Joined: 04 Sep 2004
Posts: 1166
Location: Overflow
Matrix 11 Oct 2004, 02:18
Hello,
i recommend this size optimized exit code for your os Smile

Code:
; they are the same in size, but the right side won't exit on esc if ah<>0
; 5 bytes (7 with int 20h)
; i will not take any responsibility for any hardware damages
; this code can cause
; i recommend using the right side with dec al, however its all right if ah=0
; MATRIX
org 256

mainloop:
in ax,$5f    ; in al,$60
sahf         ; dec ax
jnc mainloop ; jnc mainloop

int 20h
    


it does weird things Smile

MATRIX
Post 11 Oct 2004, 02:18
View user's profile Send private message Visit poster's website Reply with quote
Kreoton



Joined: 05 Jun 2004
Posts: 14
Location: Russia, Moscow
Kreoton 11 Oct 2004, 05:10
>>>it works fine, until you press a key.
All is correct Smile Meanwhile, IRQ1 is used for return in debuger...
Because OS is at an early stage of development...

no_int20: ; IRQ1, Keyboard
cmp al,0x21 ; Controller: i8248
jne no_int21
in al,0x60
mov al,0x20 ; EOI
out 0x20,al
; Return to AXE debuger...
mov al,0xFE
out 0x64,al

>>>i recommend this size optimized exit code for your os
Very Happy interesting code...
Post 11 Oct 2004, 05:10
View user's profile Send private message Visit poster's website Reply with quote
Kreoton



Joined: 05 Jun 2004
Posts: 14
Location: Russia, Moscow
Kreoton 03 Dec 2004, 23:10
Post 03 Dec 2004, 23:10
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.