flat assembler
Message board for the users of flat assembler.

Index > OS Construction > Operation Operating System

Author
Thread Post new topic Reply to topic
Mike S



Joined: 08 Aug 2004
Posts: 4
Mike S 08 Aug 2004, 05:59
Hello Flat Assembler community,

This is my first post, and I'm excited to be a part of the fasm community. I'm a highschool student and have been programming for roughly two years in C++ and various basic languages.

My goal, is to utilize FASM and create an operating system over time. I'm in need of some guidence though. Honostly, I've never done any ASM programming in my life, other than the "hello world" tutorial provided with fasm. Wink

It'd be crazy to jump to an OS for my first project, so I wonder where are some good resources (Other than this site of course) to begin programming in assembly and build my way up to take on a OS project?

Here's a couple links I've found already that will help me achieve my goal, and hopefully others in my same position.
http://www.osdev.org/index.jsp
http://www.techtutorials.info/assembly.html
http://lsi.uniovi.es/~labra/APL.html
http://www.sandpile.org/

Any word of wisdom, links, or general advice for a novice fasm programmer would be great.

Thanks for your time.
Mike

(btw, I was quite inspired by Minuet OS Wink )
Post 08 Aug 2004, 05:59
View user's profile Send private message Reply with quote
crc



Joined: 21 Jun 2003
Posts: 637
Location: Penndel, PA [USA]
crc 08 Aug 2004, 06:12
http://my.execpc.com/~geezer/ has a lot of good stuff, including several small, but working kernels, and links to small OSes in various lanuages. Also see http://www.osdever.net/

I have two main bits of advice:
1) Get Bochs (bochs.sf.net) and learn to use it - it WILL save you a lot of time when debugging Smile
2) Have a LOT of patience, especially when you're getting started
Post 08 Aug 2004, 06:12
View user's profile Send private message Visit poster's website Reply with quote
Mike S



Joined: 08 Aug 2004
Posts: 4
Mike S 08 Aug 2004, 06:14
Thanks for the fast reply crc. Smile

I think that last link has about every tutorial listed that I've found on compilers and OS's.

Thank you very much for the links and advice.
Post 08 Aug 2004, 06:14
View user's profile Send private message Reply with quote
Nikso



Joined: 20 Oct 2003
Posts: 9
Location: Italy
Nikso 08 Aug 2004, 10:43
CAUTION!!!
Very important things to remember when you wrok on an assembler OS:


    1. This function will not work the first time
    2. This function will not work the second time as well
    3. Third time maybe the working one (but probably not)
    4. When it will work (if it will):
      a) bakup all your work
      b) exult, glorify your serlf, jump all arround the house
      NOTE: if the power go down, you have forgot point 4.a for sure
      c) Leave yours work untill your moral will return normal
    5. yours girlfriend have leave you
    6. never mind, I've an asmOS to work on.
    Rturn to point 1 and loop


Because you are new to the OS word, you will soon know what Triple Fault is. You will learn to hate IT.

Have a nice programming time ^_^
Post 08 Aug 2004, 10:43
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
ASHLEY4



Joined: 28 Apr 2004
Posts: 376
Location: UK
ASHLEY4 08 Aug 2004, 11:07
Hi Mike S, I would go here http://alexfru.chat.ru/epm.html and get this program "bootprog.zip" ,when put on a floppy ,you can boot any com/exe from the disk, you can Not use dos int's, but you can use bios int's.
So all you do to boot your hello world program is use bios int's instead of dos int's, rename your hello world com file as bootprog.com put it on the floppy disk like you would any other program and reboot, and you should get hello world".
Great for testing you os etc.

Also the best way to learn asm is to make simple dos game's, you can start very simple. first you just get into graphic mode and put a pixel,than you put a block of pixels,then you move them with the keys in put, and so on.
In the end you have a pong game or space-invaders.
\\\\|////
(@@)
ASHLEY4.
Post 08 Aug 2004, 11:07
View user's profile Send private message Reply with quote
crc



Joined: 21 Jun 2003
Posts: 637
Location: Penndel, PA [USA]
crc 08 Aug 2004, 18:22
If you're going for 32-bit, protected mode, start small. You don't need multitasking, libraries, or a lot of system calls to get started. You don't even need complex drivers. For example, I have a 32-bit protected mode operating system kernel that runs my Forth system. It's only 286 lines of assembly, including blank lines, comments, and a boot sector. Hard drive support adds another 100 lines to that. That's a fairly minimal kernel (keyboard, text screen [tested up to 100x30 resolution], switch to pmode, and so on), but it's enough to run a real programming language. Adding multitasking shouldn't be require more than 100-200 extra lines. Graphics are also trivial, at least for 8-bit linear modes (I've used 320x200 up through 800x600). If you want to look at my OS code, it's at http://retroforth.org/release/rf71-native.zip The source is in NASM at the moment, but I should have it fully ported over to FASM by the end of the month Smile

Remember: Full scale desktops and all that may be nice, but you can do a LOT with just a simple kernel!
Post 08 Aug 2004, 18:22
View user's profile Send private message Visit poster's website Reply with quote
Mike S



Joined: 08 Aug 2004
Posts: 4
Mike S 08 Aug 2004, 21:33
Thanks for all your advice and the great links. Keep em coming. Smile

I recently setup another computer, so I have two systems that can share the same monitor. I think I will take your advice Ashley and try to build a pong clone in ASM and then work on a boot loader.

Thanks for the source crc, I'll look into it.

Cool
Post 08 Aug 2004, 21:33
View user's profile Send private message Reply with quote
ASHLEY4



Joined: 28 Apr 2004
Posts: 376
Location: UK
ASHLEY4 09 Aug 2004, 00:41
Mike S , you can down load the code and com file for my pong game here: http://www.falconrybells.co.uk/
Its in tasm,but it may still help.
Also this is good for learning asm ,its a asm interpreter,that lets you see the regs change as you step throw your code, it's called Ketman and you can get it here http://www.btinternet.com/~btketman/tutpage.html
\\\\|////
(@@)
ASHLEY4.
Post 09 Aug 2004, 00:41
View user's profile Send private message Reply with quote
Mike S



Joined: 08 Aug 2004
Posts: 4
Mike S 09 Aug 2004, 18:14
Thanks again for all your links Ashley.

Smile
Post 09 Aug 2004, 18:14
View user's profile Send private message Reply with quote
vbVeryBeginner



Joined: 15 Aug 2004
Posts: 884
Location: \\world\asia\malaysia
vbVeryBeginner 20 Aug 2004, 11:53
Quote:

from:Mike S
so I have two systems that can share the same monitor.


care to tell me how you do it? coz i too, got 2 system but 1 monitor only.

sincerely,
vbVeryBeginner.
Post 20 Aug 2004, 11:53
View user's profile Send private message Visit poster's website Reply with quote
cod3b453



Joined: 25 Aug 2004
Posts: 618
cod3b453 25 Aug 2004, 00:49
Post 25 Aug 2004, 00:49
View user's profile Send private message Reply with quote
Gomer73



Joined: 29 Nov 2003
Posts: 151
Gomer73 25 Aug 2004, 17:01
For the two monitor thing, it is easy, just unplug the monitor from one computer and plug it into the back of the other computer.
You can also buy monitor/keyboard switching hardware but it might be considered a waste considering your situation.
Post 25 Aug 2004, 17:01
View user's profile Send private message Reply with quote
Tomasz Grysztar



Joined: 16 Jun 2003
Posts: 8356
Location: Kraków, Poland
Tomasz Grysztar 25 Aug 2004, 17:32
Yeah, a good KVM switches are not cheap.
Post 25 Aug 2004, 17:32
View user's profile Send private message Visit poster's website Reply with quote
vbVeryBeginner



Joined: 15 Aug 2004
Posts: 884
Location: \\world\asia\malaysia
vbVeryBeginner 26 Aug 2004, 14:26
ok, thanks... gomer and privalov, i will try to buy a second-hand monitor :p
Post 26 Aug 2004, 14:26
View user's profile Send private message Visit poster's website Reply with quote
neonz



Joined: 02 Aug 2003
Posts: 62
Location: Latvia
neonz 26 Aug 2004, 18:07
Nikso wrote:
5. yours girlfriend have leave you


Mine haven't Smile
Post 26 Aug 2004, 18:07
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-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.