flat assembler
Message board for the users of flat assembler.
![]() Goto page Previous 1, 2, 3 |
Should I scrap RhynOS? | ||||||||||||||
|
||||||||||||||
Total Votes : 7 |
Author |
|
Dex4u 17 Oct 2006, 03:18
You need to
Code: cli See here how they work http://en.wikipedia.org/wiki/CLI_(x86_instruction) Basically you are disabling all maskable interrupts. |
|||
![]() |
|
rhyno_dagreat 17 Oct 2006, 03:23
Ah, thanks. So masking an interrupt is basically clearing it, right?
|
|||
![]() |
|
Dex4u 17 Oct 2006, 03:44
rhyno_dagreat wrote: Ah, thanks. So masking an interrupt is basically clearing it, right? Yes, but your clear (or switch off ) all the ones that can be cleared, do not worry about the others for now. Last edited by Dex4u on 17 Oct 2006, 03:48; edited 2 times in total |
|||
![]() |
|
rhyno_dagreat 17 Oct 2006, 03:45
So the CLI switches it off?
Edit: Wait... I thought cli clears all non-maskable interrupts, including your own created ones that you'd want to use (i.e. - Keyboard). |
|||
![]() |
|
Dex4u 17 Oct 2006, 03:54
In your OS with idt set and someone press a key a interrupt is fire and it jump to your key handerling code.
But if you do not set idt in your OS, you need a loop that test for keypress. |
|||
![]() |
|
rhyno_dagreat 17 Oct 2006, 03:57
How would I do that without an IDT though? just use "in al, 60h" like I usually do inside my interrupt, through ports?
|
|||
![]() |
|
Dex4u 17 Oct 2006, 03:58
Something like this
Code: ;********************************* ; Main keyboard loop. ;********************************* NoKey: xor eax,eax in AL,60h OverXor: cmp al,0x50 jne NoKey1 mov si,Stop call DrawImage NoKey1: cmp al,0x48 jne NoKey1A mov si,Play call DrawImage NoKey1A: cmp al,0x1c jne NoKey |
|||
![]() |
|
rhyno_dagreat 17 Oct 2006, 04:09
Ah, I see! So basically you're polling! Thanks!
|
|||
![]() |
|
Filter 19 Oct 2006, 01:45
You must start to copy to understand and then you begin to try new things on your own once you understand.
A baby lion first learns to hunt by copying it's mother and then practices on it's own to learn new skills that make it a master hunter. You have to start somewhere and copying someone else is that start. Once you understand the basic concepts then you can build upon them into something new and unique. It's how we as humans advance so fast. If everybody had to learn everything from scratch we would still be in the stone age. |
|||
![]() |
|
Niels 19 Oct 2006, 07:12
Hello Filter,
If I may bother you; Why did you copy from Person B and not Person A? Niels. |
|||
![]() |
|
Goto page Previous 1, 2, 3 < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.