flat assembler
Message board for the users of flat assembler.

Index > OS Construction > The REAL OS construction contest

Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next
Author
Thread Post new topic Reply to topic
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Good luck Rahsennor.

Still a day+ to go, it will be interesting to see if you get a competitor.
Post 24 Aug 2009, 00:49
View user's profile Send private message Visit poster's website Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
I have an entry Smile

SHA1 hash of the archive file MIMOS10.ZIP, calculated by SlavaSoft's HashCalc is:
468f62eddbc30b2c7142642534dcc035d57dcfa5

unless I get time to do any more before 5.08am GMT (unlikely Sad ) in which case I'll post a new SHA1 hash.

_________________
FAMOS - the first memory operating system
Post 24 Aug 2009, 23:02
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Good Luck neville.

Now we have a competition going.
Post 25 Aug 2009, 01:33
View user's profile Send private message Visit poster's website Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
Oh well, here's my entry anyway...


Description: Mini Memory Operating System ver 1.0
Download
Filename: MIMOS10.ZIP
Filesize: 15.75 KB
Downloaded: 79 Time(s)


_________________
FAMOS - the first memory operating system
Post 25 Aug 2009, 05:07
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
The competition is closed.

neville: Your entry cannot be compiled. It errors here
Code:
INCLUDE "BLOADER.INC"    
Post 25 Aug 2009, 05:50
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
The closing time has passed and no further work can be accepted. Is there some other post where you have placed BLOADER.INC? If not then it appears that your entry might not be valid Sad
Post 25 Aug 2009, 05:59
View user's profile Send private message Visit poster's website Reply with quote
Rahsennor



Joined: 07 Jul 2007
Posts: 61
Rahsennor
Only one other entry! Shocked

readme lists bloader.inc as part of archive, but I don't see it anywhere. Did you just forget it?
Nice code, though. Much neater than mine... Embarassed
Post 25 Aug 2009, 06:13
View user's profile Send private message Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
Hmmm, I don't know how that happened. I blame Windoze... Embarassed

BLOADER.INC is attached.

The only binary required, MIMOS.IMG, is in the archive however.

According to my reading of the rules my entry is still valid Idea

Thanks Rahsennor. I haven't looked at your entry yet. Will do so soon!


Description:
Download
Filename: BLOADER.INC
Filesize: 11.28 KB
Downloaded: 82 Time(s)


_________________
FAMOS - the first memory operating system
Post 25 Aug 2009, 06:33
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Okay, if the addition of BLOADER.INC generates the exact same .img file then I will happily accept your entry.

[edit] The image generated is exactly the same, so the entry is accepted
Post 25 Aug 2009, 06:38
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Rahsennor - Tea-7a.7z

neville - MIMOS10.ZIP+BLOADER.INC

Let's say two weeks to give everyone that is interested a chance to download and test and then we can see which way people want to vote.

Since there are not a great deal of entries then voting will be informal, people just need to say in this thread which of the two they want to vote for. Voting will end in three weeks from today.
Post 25 Aug 2009, 08:31
View user's profile Send private message Visit poster's website Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
Great, at least we have a competition Very Happy

Rahsennor, I've successfully assembled boot-lba28.asm, but I get "out of stack space" error when I try to assemble tea.asm. Any suggestions please?

_________________
FAMOS - the first memory operating system
Post 25 Aug 2009, 11:02
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
neville wrote:
Rahsennor, I've successfully assembled boot-lba28.asm, but I get "out of stack space" error when I try to assemble tea.asm. Any suggestions please?

Works for me:
Quote:
C:\Documents and Settings\We are the Borg\Our Documents\RealOS\Rahsennor>fasm tea.asm
flat assembler version 1.67.38 (142828 kilobytes memory)
3 passes, 10228 bytes.
Post 25 Aug 2009, 11:10
View user's profile Send private message Visit poster's website Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
I'm using my "development" PC which "only" has 256 MEGAbytes of RAM. I successfully assembled tea.asm on another machine with 1 GIGAbyte of RAM.
10228 bytes. Yea Very Happy

Then I was able to successfully assemble image.asm to generate image.bin comprising 4194305 bytes.

Now Bochs 2.2.6 PANIC's because "size of disk image must be multiple of 512 bytes". If I Continue it PANIC's again because "ata0/0 image size doesn't match specified geometry".

I'm not that familiar with Bochs but here's the bochsrc.txt file I'm using (most of which is commented out):

Code:
# how much memory the emulated machine will have
megs: 256

# filename of ROM images
romimage: file=BIOS-bochs-latest, address=0xf0000
#romimage: file=../../bochs2/source2/bios/tmp.bin, address=0xf0000

# Enable CL-GD5446 PCI
vga: extension=cirrus
vgaromimage: file=VGABIOS-lgpl-latest-cirrus
#vgaromimage: file=../../bochs2/VGABIOS-lgpl-latest
#i440fxsupport: enabled=1, slot1=cirrus

# what disk images will be used 

#floppya: 1_44=d:\mimos\mimos.img, status=inserted

ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
ata1: enabled=1, ioaddr1=0x170, ioaddr2=0x370, irq=15
ata0-master: type=disk, path="d:\tea\image.bin", mode=flat, cylinders=8, heads=16, spt=63
#ata1-slave: type=cdrom, path=bootcd.img, status=inserted, model="bootcd.img"

# choose the boot disk.

#boot: floppy
boot: disk
#boot: cdrom

#clock: sync=realtime, time0=1
#cpu: count=1, ips=13000000


###################
#clock: sync=none, time0=1
#ips: 500000

# where do we send log messages?
#log: log.txt

#reports
panic: action=ask
error: action=report
info: action=report
debug: action=ignore
#debug: action=report

# SB
#sb16: midimode=1, midi=, wavemode=1, wave=, loglevel=3, log=sb16.log,  dmatimer=600000

# parallel port 1
#parport1: enabled=1, file="parport1.txt"

# COM[1,2,3,4]
#   com1: enabled=1, mode=null
#   com1: enabled=1, mode=mouse
#   com2: enabled=1, mode=file, dev=serial.out
#   com3: enabled=1, mode=raw, dev=com1
#   com3: enabled=1, mode=socket, dev=localhost:8888
#com1: enabled=1, mode=mouse
#com2: enabled=1, mode=file, dev=serial2.txt

# en/disable the mouse
mouse: enabled=1, type=ps2
#mouse: enabled=0, type=imps2
#mouse: enabled=1, type=serial
#mouse: enabled=1, type=serial_wheel
#mouse: enabled=1, type=bus
#mouse: enabled=1, type=usb

# usb port(s)
#usb1: enabled=1, port1=mouse, port2=keypad
#usb1: enabled=1, port1=mouse
#usb1: enabled=1, port1=flash, option1=flash.img

# ne2k
#ne2k: ioaddr=0x240, irq=9, mac=00:07:E9:B7:8B:22, ethmod=win32, ethdev=\Device\NPF_{28999540-52C9-4FC1-8B31-2D56212468B0}

# enable key mapping, using US layout as default.
#keyboard_mapping: enabled=1, map=../../bochs2/source2/gui/keymaps/x11-pc-us.map

#=======================================================================
# KEYBOARD_TYPE:
# Type of keyboard return by a "identify keyboard" command to the
# keyboard controler. It must be one of "xt", "at" or "mf".
# Defaults to "mf". It should be ok for almost everybody. A known
# exception is french macs, that do have a "at"-like keyboard.
#
# Examples:
#   keyboard_type: mf
#=======================================================================
#keyboard_type: mf    

I'm determined to get tea running, or at least emulating Wink Can anybody help?

_________________
FAMOS - the first memory operating system
Post 25 Aug 2009, 21:47
View user's profile Send private message Visit poster's website Reply with quote
Rahsennor



Joined: 07 Jul 2007
Posts: 61
Rahsennor
Blame me for using a really old version of Bochs. Razz I didn't bother to make the image the right size since my version ignores it. Shocked

Changing
Code:
      align   4096*1024
   db      0    
to
Code:
  rb      512*63*16*8-1
       db      0    
at the end of image.asm should pad it to the right size. Wink
EDIT: tea.asm compiles just fine on my old 64MB 700MHz laptop... Question
Post 26 Aug 2009, 00:12
View user's profile Send private message Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
Yes, got it emulating now. Bochs 2.2.6 still PANIC's about the disk geometry but still boots with Continue.
I've now read Tut1 -> Tut6!

_________________
FAMOS - the first memory operating system
Post 26 Aug 2009, 06:20
View user's profile Send private message Visit poster's website Reply with quote
Rahsennor



Joined: 07 Jul 2007
Posts: 61
Rahsennor
MiMOS successfully booted in Bochs 2.2.1. Vista Demo even had my laptop's fan on! Shocked Very Happy
neville wrote:
I've now read Tut1 -> Tut6!
Did you learn anything? Laughing I forgot to mention
Code:
timer .    
should print a millisecond timer. I forgot lots of other things too, like how to write macros or spawn a new thread. That'll teach me for writing documentation at the last minute!
Post 26 Aug 2009, 07:54
View user's profile Send private message Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
Rahsennor wrote:
MiMOS successfully booted in Bochs 2.2.1. Vista Demo even had my laptop's fan on! Shocked Very Happy
Yes, and Vista isn't very good at calculating time remaining Laughing
I guess I learn't a bit but I don't know Forth at all so that doesn't help Confused
Timer . prints hex strings of increasing value. I tried just "." a couple of times and I might have crashed it? Also Bochs seems to disable the mouse when running Tea, which can be fixed by pressing Ctrl-LB-RB on the console display?

_________________
FAMOS - the first memory operating system
Post 26 Aug 2009, 10:30
View user's profile Send private message Visit poster's website Reply with quote
Rahsennor



Joined: 07 Jul 2007
Posts: 61
Rahsennor
Typing just "." will give a stack underflow. Embarassed If you want to learn forth try Leo Brodie's Starting Forth. For Tea, don't forget the - probably incomplete - "Differences from Forth" section in Tea readme.
neville wrote:
Bochs seems to disable the mouse when running Tea, which can be fixed by pressing Ctrl-LB-RB on the console display?
Tea doesn't use rats. Confused Bochs setting?

MiMOS10.ZIP/MEMED.INC:
Code:
INIT:
                MOV     AX,0003H
                INT     10H    
Shocked
Post 29 Aug 2009, 06:23
View user's profile Send private message Reply with quote
neville



Joined: 13 Jul 2008
Posts: 507
Location: New Zealand
neville
The INT 10H (00010000b) in MEMED.INC must be a random single-bit error caused by an act of God, or maybe a stray cosmic ray etc. Surprised It is of course supposed to be INT 90H (10010000b) - the MiMOS video display service, called extensively by the MiMOS applications.

Please correct the single-bit error, and you will find the Memory Editor application (MEMED) runs perfectly. Cool

_________________
FAMOS - the first memory operating system
Post 29 Aug 2009, 07:25
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17270
Location: In your JS exploiting you and your system
revolution
Rahsennor wrote:
MiMOS10.ZIP/MEMED.INC:
Code:
INIT:
                MOV     AX,0003H
                INT     10H    
Shocked
The preliminary winner of the REAL OS contest is Rahsennor.

Congrats, your prize will be issued later after the judges have completed their investigation and ensured that everything is proper.

Sad to see the contest end this way. Oh well, rules are rules, and breaking rules always has consequences. I imagine this was a moment of distraction for neville, where the brain goes into autopilot mode.

The competition rules enforcement officer hopes that the final remaining entry will also not have to be disqualified for some sort of technical reason. When the competition rules enforcement officer (that's me folks) has had time to go over the remaining valid entry to make a last and final check, then a formal and elaborate prize presentation ceremony will be given. Watch this space for updates.
Post 29 Aug 2009, 07:33
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:  
Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next

< 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-2020, Tomasz Grysztar.

Powered by rwasa.