Page 2 of 2

Posted: Fri Nov 09, 2007 2:45 am
by jal
Combuster wrote:
people who do not even know how to use a compiler will never create anything usuable.
is it just me, or did the original poster just successfully assemble and run a program?! :shock:
Yeah, ok, maybe I was a bit harsh on him. I wasn't in the best of moods yesterday. Seems like a lot of copy/paste though, without really understanding what's going on...


JAL

Posted: Fri Nov 09, 2007 3:36 am
by 01000101
composure 101: when you are having a bad day online, click the red button with the white X in the top right corner. =)

anyways. I think the kid should most deffinately keep asking questions as it not only helps in the learning process, but also helps the others 'brush up'. And no one is FORCED to answer or even read this topic.

I think the Intel manuals are a great place to search for solutions. Second, look at other people's similar code. Pick apart working examples, and then compare it to your own. Then if problem still persists, ask the next question on the forums. But do not overuse the topic by clutterring it with EVERY little issue that you run into. We can help fix problems every now-and-then, but after you get over one big code hurdle, don't immediately post the next... search a bit.

Posted: Fri Nov 09, 2007 4:28 am
by jal
01000101 wrote:composure 101: when you are having a bad day online, click the red button with the white X in the top right corner. =)
Mmmm... I got a gray one with a black cross...


JAL

Posted: Fri Nov 09, 2007 11:33 am
by AlfaOmega08
I don't know why,,,
I've deleted the old bootloader and writed a new one... It works!!
Just one "problem":
I've to read and write the port 0x70 for disable NMI.
While reading the port 0x70, bochs write on the console:

read of index port 0x70. returning 0xff

then in the AL register i found 0xFF, as if it want to hide the content of the port...
How can I read the port 0x70?

Thanks.

Posted: Fri Nov 09, 2007 1:12 pm
by Brynet-Inc
This is just a wild guess... but perhaps you're reading from the wrong port ;)

Posted: Sat Nov 10, 2007 3:20 pm
by jal
AlfaOmega08 wrote:I don't know why,,,
I've deleted the old bootloader and writed a new one... It works!!
Just one "problem":
I've to read and write the port 0x70 for disable NMI.
While reading the port 0x70, bochs write on the console:

read of index port 0x70. returning 0xff

then in the AL register i found 0xFF, as if it want to hide the content of the port...
How can I read the port 0x70?
You cannot, it's a write-only port, afaik. See here: http://bochs.sourceforge.net/techspec/PORTS.LST. A quick Google (you should give it a try once, really helpful!) finds me this, in which the following is written:
Rod Pemberton wrote:a) disable NMI, (write 0x8D to port 0x70 (privileged), read port 0x71
(privileged) using 'in' and 'out' instructions)

JAL

Posted: Sat Nov 10, 2007 7:24 pm
by crazygray
frank wrote:You cannot use BIOS interrupts in protected mode. Either load the kernel before going to protected mode or write a floppy driver/hard disk driver.
This is new to me, Write a floppy driver/hard disk driver?

Posted: Sun Nov 11, 2007 1:04 am
by AndrewAPrice
01000101 wrote:_________________
D.i.N.S.
Closed Source OS | v1.05
:: Writing bootloader in C ::
Talking about bootloaders, how is your C bootloader coming along?