Well I guess I am supposed to be thankful for your critisism... it may be constructive, perhaps.
Look, I am not trying to get chewed out by someone who may or may not know more then me, obviously I am in the beginning stages, which means I am trying to learn, and that means that there are things I don't know. Novel concept...
Point of fact the code does work, on 3 out of 4 applications... so...
I am willing to be criticized, but instead of just rambling on about what I did wrong, some snippets of what I should have done, or a refference on how to do it right would be much more helpful.
Not being able to teach someone shows that you do not really know what you are doing, not being willing to teach shows that you are too arrogant.
I hope you are neither.
Thanks for your help.
trouble bootloading
Re: trouble bootloading
I didn't wanted to be rude, it's just you've posted a code that has the same problems I mentioned before. You should have checked your code against before you post it.Ariethenor wrote:Well I guess I am supposed to be thankful for your critisism... it may be constructive, perhaps.
Look, I am not trying to get chewed out by someone who may or may not know more then me, obviously I am in the beginning stages, which means I am trying to learn, and that means that there are things I don't know. Novel concept...
Maybe it sometimes work by luck, and not because you know what's happening. It MUST work 100%, 4 out of 4.Point of fact the code does work, on 3 out of 4 applications... so...
Don't even dream about working code snippets, you have to do it on your own! For reference there's the wiki.I am willing to be criticized, but instead of just rambling on about what I did wrong, some snippets of what I should have done, or a refference on how to do it right would be much more helpful.
Does not compute... sorry I could not understand this. What does "being willing to teach" mean? I'm only willing to teach anybody if he/she has the required minimum knowledge. So read http://wiki.osdev.org/Getting_Started page. Don't miss http://wiki.osdev.org/Beginner_Mistakes too.Not being able to teach someone shows that you do not really know what you are doing, not being willing to teach shows that you are too arrogant.
-
- Posts: 14
- Joined: Tue Feb 07, 2012 10:10 am
Re: trouble bootloading
Thanks for your help, I needed to code in the partition table. It now works on 4 of 4 systems. I understand that there are a few bug potential areas, like no error checking, etc. I have planed, and do plan on implementing them, however currntly the code is minimal, and used only by me, so I don't give it bad data, for error checking to be really necessary at this time. I know error checking, etc is important and is in my schedual, I was mearly trying to get a minimal boot module, so I know the absolute minimum I need to maintain. (A "do not delete any of this code" setup). Its my way of thinking.
I did not know exactly what a partition table was for. I mearly thought it was for file system management further in my develpment process, I did not realize that some bios's needed it from the very beginning, so I learned it and implemented it and thanks, that was the answer.
I understand you may not have meant to sound rude, but you did. I do have knowledge about what i am doing, but I don't have much of the vocabulary due to lack of any formal training. I have gotten this far entirely on my own and have read book after book after book. The fact is that I have a start to an OS bootloader that works on 4 systems, (2 real, 2 virtual). I think that I am on my way.
Again thanks for your help, the MBR partition table was exactly what I needed.
I did not know exactly what a partition table was for. I mearly thought it was for file system management further in my develpment process, I did not realize that some bios's needed it from the very beginning, so I learned it and implemented it and thanks, that was the answer.
I understand you may not have meant to sound rude, but you did. I do have knowledge about what i am doing, but I don't have much of the vocabulary due to lack of any formal training. I have gotten this far entirely on my own and have read book after book after book. The fact is that I have a start to an OS bootloader that works on 4 systems, (2 real, 2 virtual). I think that I am on my way.
Again thanks for your help, the MBR partition table was exactly what I needed.
Re: trouble bootloading
Sorry for that.Ariethenor wrote:I understand you may not have meant to sound rude, but you did.
May I suggest to use a dedicated variable for 2nd stage start lba address, this way it can be anywhere on disk, not necessarily right after the MBR. The benefit for this is gaining GPT compliance (which is stored right after the MBR too, and not movable).I do have knowledge about what i am doing, but I don't have much of the vocabulary due to lack of any formal training. I have gotten this far entirely on my own and have read book after book after book. The fact is that I have a start to an OS bootloader that works on 4 systems, (2 real, 2 virtual). I think that I am on my way.
Again thanks for your help, the MBR partition table was exactly what I needed.
-
- Posts: 14
- Joined: Tue Feb 07, 2012 10:10 am
Re: trouble bootloading
That is a good suggestion, there are actually many places I could use a variable. I am still learning how fasm handles scope and addressing and individual address areas, I almost have the hang of it I think. I have already learned that if I am not very careful about where I declare variables, and procedure lables in each address space, it throws my addressing scheme somewhere off in center field... little things, but like so many wiki's and guids say, OS dev is not a quick proccess, and 16 bit programming is a bear. Do you know of any good guides/references on GPT, I understand kindof what it is, but not really how to set it up.
I am hard coding every kernel area so that I have an image that I flash/copy onto hdd,cd,usb etc. Instead of "installing" the system like windows or linux, with files on the disk medium being copied,written,transfered to disk etc. I am going to "hopefully and in theory" make my distribution an encrypted image, and the installer will simply be a micro bootloader program that loads itself in memory and flashes the hdd,cd,usb. That way, for security and certain proprietary reasons no source is actually visible on the installation medium... What might your thoughts be on that?
I am hard coding every kernel area so that I have an image that I flash/copy onto hdd,cd,usb etc. Instead of "installing" the system like windows or linux, with files on the disk medium being copied,written,transfered to disk etc. I am going to "hopefully and in theory" make my distribution an encrypted image, and the installer will simply be a micro bootloader program that loads itself in memory and flashes the hdd,cd,usb. That way, for security and certain proprietary reasons no source is actually visible on the installation medium... What might your thoughts be on that?
Re: trouble bootloading
That's not fasm specific, it the same for other assemblers as well. You have to know where the instruction pointer goes, and not to go over data area.Ariethenor wrote:That is a good suggestion, there are actually many places I could use a variable. I am still learning how fasm handles scope and addressing and individual address areas, I almost have the hang of it I think. I have already learned that if I am not very careful about where I declare variables, and procedure lables in each address space, it throws my addressing scheme somewhere off in center field... little things, but like so many wiki's and guids say, OS dev is not a quick proccess, and 16 bit programming is a bear.
Detailed description: http://en.wikipedia.org/wiki/GUID_Partition_TableDo you know of any good guides/references on GPT, I understand kindof what it is, but not really how to set it up.
You can create it with:
Windows: diskpart http://support.microsoft.com/kb/300415
MacOSX: diskutil https://developer.apple.com/library/mac ... diskutil.8
Linux: parted http://linux.die.net/man/8/parted
Does not worth the candle imho. You have to decrypt it in order to read installation files, and decryption algorithm will be in bootloader, so basically you keep the key next to the lock. It would be better to use AES, and prompt for the key on each boot, but it would be annoying.I am hard coding every kernel area so that I have an image that I flash/copy onto hdd,cd,usb etc. Instead of "installing" the system like windows or linux, with files on the disk medium being copied,written,transfered to disk etc. I am going to "hopefully and in theory" make my distribution an encrypted image, and the installer will simply be a micro bootloader program that loads itself in memory and flashes the hdd,cd,usb. That way, for security and certain proprietary reasons no source is actually visible on the installation medium... What might your thoughts be on that?
Why is it important to hide these files?
-
- Posts: 14
- Joined: Tue Feb 07, 2012 10:10 am
Re: trouble bootloading
Well this is deffinately off topic now so this is all I will say in responce; I am just fiddling with notions of security and what not, prevent hacking, cracking etc. (Even though I know locks only keep honest people out). Just in case (i probably have better chance at wining the lottery) I develope an operating system worth distrubuting, I would like some semblance of security.
But this is very far down the development line, I am just keeping my options open. It is nothing for me to hard code, flash and test. Plus it gives me good practice. It would be nothing for me to create an installer that uses files. The other reason I want to use an image installation, is that I learned from DELL that image flashes can be orders of magnitude quicker then "typical installs." (ref: Dell Tech support, they do not typically ship OEM CD's with new laptops, because they do not install each system with CD's they flash an image onto the device.)
Thanks for all your help, perhaps we may meet again in some other forum, and maybe one day I can help others as you have helped me.
But this is very far down the development line, I am just keeping my options open. It is nothing for me to hard code, flash and test. Plus it gives me good practice. It would be nothing for me to create an installer that uses files. The other reason I want to use an image installation, is that I learned from DELL that image flashes can be orders of magnitude quicker then "typical installs." (ref: Dell Tech support, they do not typically ship OEM CD's with new laptops, because they do not install each system with CD's they flash an image onto the device.)
Thanks for all your help, perhaps we may meet again in some other forum, and maybe one day I can help others as you have helped me.