flat assembler
Message board for the users of flat assembler.
Index
> OS Construction > Turn off NMI ??? Goto page 1, 2 Next |
Author |
|
milind 04 Mar 2004, 12:51
I found this code from one of the posts, it disables the NMI. Would this really work??
in AL,070h ; or AL,080h ; Turn NMI off out 070h,AL ; |
|||
04 Mar 2004, 12:51 |
|
Ralph 04 Mar 2004, 17:37
Yes.
|
|||
04 Mar 2004, 17:37 |
|
Adam Kachwalla 26 May 2007, 11:40
Hang on... Isn't NMI Non-Maskable Interrupt? I think that is a CPU bug, which has most likely been fixed.
|
|||
26 May 2007, 11:40 |
|
LocoDelAssembly 26 May 2007, 18:10
NMI means that CLI instruction doesn't prevent the processor to handle it. However, if some other chip prevents the processor's NMI pin to be asserted then you have the NMI interrupt masked
|
|||
26 May 2007, 18:10 |
|
Japheth 26 May 2007, 19:10
> NMI means that CLI instruction doesn't prevent the processor to handle it.
That was absolutely new to me. (the "CLI" was to mask IRQs, not NMIs, in case the RTC timer /alarm has been enabled.) |
|||
26 May 2007, 19:10 |
|
mikegonta 31 May 2007, 20:37
[ Post removed by author. ]
Last edited by mikegonta on 28 Jan 2009, 09:15; edited 2 times in total |
|||
31 May 2007, 20:37 |
|
Japheth 03 Jun 2007, 12:17
> Keep in mind that this caveat was designed for the original chip and like
> many other "urban" legends is not applicable to a modern PC. This might be true, but the OP did not indicate that the code must run on a new PC only. > I ran the following code in Protected Mode from a boot sector on a Pentium > for 5 minutes and it had no noticeable effect on the time. Hm, what did you expect from this code? It loops. What effect should have been seen? |
|||
03 Jun 2007, 12:17 |
|
LocoDelAssembly 24 Jan 2009, 17:51
Sorry for bumping this thread. The code shown on this thread is the correct to disable NMI even on modern computers or not?
I would like to write my switch-to-protected-mode code, and Intel says NMIs must be disabled during the transition. |
|||
24 Jan 2009, 17:51 |
|
DJ Mauretto 24 Jan 2009, 18:35
Unfortunately this is Chipset specific, on Intel Chipset
you cannot read anymore Port 70h , but you can set bit 7 and Disable All NMI sources, that is the Port 70h is Write Only, unless you enable Alt Access Mode or use alias Port 74h ( Intel chipset specific) anyway that bit is still valid for write operation and disable NMI Code: ; Disable NMI mov al,80h out 70h,al ; Enable NMI xor al,al out 70h,al _________________ Nil Volentibus Arduum |
|||
24 Jan 2009, 18:35 |
|
mikegonta 24 Jan 2009, 18:57
[ Post removed by author. ]
Last edited by mikegonta on 28 Jan 2009, 09:15; edited 2 times in total |
|||
24 Jan 2009, 18:57 |
|
revolution 24 Jan 2009, 19:04
mikegonta wrote: The chances of an NMI triggered event are slim and by definition they are non recoverable. So the simple thing is to ignore it. |
|||
24 Jan 2009, 19:04 |
|
mikegonta 24 Jan 2009, 19:13
[ Post removed by author. ]
Last edited by mikegonta on 28 Jan 2009, 09:15; edited 1 time in total |
|||
24 Jan 2009, 19:13 |
|
revolution 24 Jan 2009, 19:21
mikegonta wrote:
BTW, I am using the second to last meaning of Out to lunch in my location. |
|||
24 Jan 2009, 19:21 |
|
LocoDelAssembly 24 Jan 2009, 19:24
In general, operating systems (both, hobby and professional) do care about NMI while switching?
Thanks for the answers! |
|||
24 Jan 2009, 19:24 |
|
mikegonta 24 Jan 2009, 21:48
[ Post removed by author. ]
Last edited by mikegonta on 28 Jan 2009, 09:16; edited 2 times in total |
|||
24 Jan 2009, 21:48 |
|
Coddy41 24 Jan 2009, 22:01
So jmp $ wont pause the system on my new computer?
|
|||
24 Jan 2009, 22:01 |
|
mikegonta 24 Jan 2009, 22:06
[ Post removed by author. ]
Last edited by mikegonta on 28 Jan 2009, 09:16; edited 3 times in total |
|||
24 Jan 2009, 22:06 |
|
baldr 24 Jan 2009, 22:13
Coddy41,
jmp $ makes CPU busy, not uninterruptable. |
|||
24 Jan 2009, 22:13 |
|
Coddy41 24 Jan 2009, 22:24
Busy, hmm... --takes notes-- busy doing what?
Mike "hlt" stands for stall in +==========+ |@@: | sti | hlt | jmp @B +==========+ And then it jumps back to @, Right???? |
|||
24 Jan 2009, 22:24 |
|
Goto page 1, 2 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.