flat assembler
Message board for the users of flat assembler.

Index > OS Construction > rewrite linux in asm with fasm

Goto page Previous  1, 2, 3, 4
Author
Thread Post new topic Reply to topic
Tyler



Joined: 19 Nov 2009
Posts: 1216
Location: NC, USA
Tyler 01 Nov 2010, 05:35
rugxulo wrote:
baldr wrote:
Tomasz Grysztar,

My REXX reference was about russian VM/CMS analogue running on russian IBM System/360 analogue («СВМ» and «ЕС-1022» in russian, respectively). I remember striking similarity of it with PL/I which I was learning using pen-and-paper method several years earlier. Wink


REXX existed well before OS/2, beginning since at least 1980 or so (in various forms). TRL2 was finalized in 1990, ANSI in 1996, ooREXX and NetRexx are separate, mostly later. (IBM did include Rexx since OS/2 1.3 and PC-DOS 7 had it too I think, but Amiga had its own clone too.)

REXX originated on mainframes as both an easier PL/I and as a more advanced / cleaner / simpler EXEC replacement.

I've only weakly dabbled in it off and on for a few months, so I'm no expert. But everything's a string, arbitrary precision arithmetic, minimal sigil usage, no reserved words, nested comments, and obviously tightly bound to the system shell (aka glue or macro), can be embedded in apps (e.g. THE editor), etc. Oh, and built-in debugger. Oh, almost forgot, INTERPRET keyword for fancy stuff. Wink

But yeah, I'm sure somebody will marginalize it as "yet another" scripting langauge (Awk, Perl, Python, Ruby, Scheme). Oh well, they all have their uses, I guess.
Actually, it sounds pretty cool. What other scripting language/shell has arbitrary precision arithmetic?
Post 01 Nov 2010, 05:35
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo 02 Nov 2010, 06:51
Tyler wrote:
Actually, it sounds pretty cool. What other scripting language/shell has arbitrary precision arithmetic?


I'm not versed in all the myriad of scripting languages. But I do think a lot of them support that nowadays, either directly or as add-on module, etc. Lisp (and Scheme), Perl, Python, Ruby. Oh, and *nix favorite bc.

http://en.wikipedia.org/wiki/Bignum
Post 02 Nov 2010, 06:51
View user's profile Send private message Visit poster's website Reply with quote
ford



Joined: 21 Jan 2010
Posts: 118
Location: Absurdistan
ford 08 Nov 2010, 23:45
You wouldn't want to rewrite the Linux kernel at all. You would want to make a new kernel that was compatible with Linux drivers, and syscalls. Essentially, as much of a "drop in" replacement as possible. Trying to implement all of the features in a modern Linux kernel would be nearly impossible. It's simply too much code. By the time you were done, your kernel would be horribly outdated... to the point that x86 may not even be common (AMD64 is quickly becoming standard).

_________________
Everything is absurd.
Post 08 Nov 2010, 23:45
View user's profile Send private message Visit poster's website Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4330
Location: Now
edfed 09 Nov 2010, 16:36
ford

i totally agree, and in fact, i thin that this can be achieved even under DOS or any bootable hobby os.

something like a single program that can be compiled for any system.

the design book starts to be interesting.

and starbuck cofee miss a lot in france. Very Happy i like london for that Wink
Post 09 Nov 2010, 16:36
View user's profile Send private message Visit poster's website Reply with quote
masonswanson



Joined: 17 Aug 2010
Posts: 51
masonswanson 13 Nov 2010, 05:01
well we can work on it together i am trying to port linux-0.0.1 to use fasm and tcc and tccboot anyone interested?
Post 13 Nov 2010, 05:01
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4330
Location: Now
edfed 28 Nov 2010, 17:37
it took me approximatelly 10 minutes to install DOS on a USB drive (format, copy system files), from win98, install fasm (copy folder), lfndos, cwsdpmi, mouse driver, create the autoexec.bat required and test my code from boot on the netbook.

note the mouse driver is from the archive below:


then, i ask one thing, how to do the same thing from ubuntu?
just install minimal linux (equivalent to MSDOS under win98???), install fasm and test codes... from boot, on a netbook?


maybe this topic can be renamed rewrite DOS in asm with fasm...
and i think it is currentlly well advanced.

then, why not a challenge, write a minimalistic DOS clone, containing everything in 64kB, everything, means everything. no external files, or if external files (mousedrv.com, etc...) should enter the 64KB limit.

the main DOS is a really simple thing with a few possibilities.

the rest can be up to as many bytes you want.

but the DOS clone itself, able to call .com and .exe files, should be very little. because after, there will be integration of many things, like mouse driver, different file systems, other things.

maybe DOS that is apparented to INT21h can be expanded, with intXX, maybe a protected mode dos can be fun too.

by dos, i say, disk operating system.

then, it is up to you to design how you imagine a Disk Operating System
something like linux? DOS? DexOS? OctaOS, SolarOS? menuetOS? FreeDOS?

i know there are still many, many DOS clones on the internet more or less buggy, DexOS is made with fasm.
then, it can be cool to restart Dexos project where it was the closest to DOS simplicity. something like a fork.

i think it can be also possible to redesign entirelly DOS, imagine how does MSDOS looks if the first machine were a Netbook, atom 1GB ram, 1.6GHz, dual core with intel GPU, dual screen, sound, usb drives capabilities...


Description: apparentlly, the source file .asm is dirty.

but just imagine, it works at boot time on my netbook, using a wireless keyboard+mouse set. it is simply incredible how ASM can give very small drivers

Download
Filename: ps2mouse.zip
Filesize: 3.94 KB
Downloaded: 240 Time(s)



Last edited by edfed on 28 Nov 2010, 17:48; edited 1 time in total
Post 28 Nov 2010, 17:37
View user's profile Send private message Visit poster's website Reply with quote
f0dder



Joined: 19 Feb 2004
Posts: 3175
Location: Denmark
f0dder 28 Nov 2010, 17:45
Quote:
but just imagine, it works at boot time on my netbook, using a wireless keyboard+mouse set. it is simply incredible how ASM can give very small drivers
If your wireless set is through USB, the only reason you get that working at boottime is because your BIOS has a small USB stack and is emulating PS/2 connection with that. As soon as you switch to pmode, no-go... unless of course you do insanely slow ring switching, which isn't something you'll want under a real OS - thus the need for a full USB stack.
Post 28 Nov 2010, 17:45
View user's profile Send private message Visit poster's website Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4330
Location: Now
edfed 28 Nov 2010, 17:53
yeah, i saw that because even my keyboard routines that uses I/O port 60h and 64h will see the wireless keyboard.

indeed, it is interresting to see that ubuntu recognise it as well, without requiring any installation, and my wireless set is a microsoft wireless optical desktop 700 (c) (R)

does it mean that KB/MOUSE on USB are frequentlly standard like that?
Post 28 Nov 2010, 17:53
View user's profile Send private message Visit poster's website Reply with quote
f0dder



Joined: 19 Feb 2004
Posts: 3175
Location: Denmark
f0dder 28 Nov 2010, 18:27
Never got around to dealing with USB myself, but I believe it's pretty standardized - USB HID.
Quote:
The USB HID class describes devices used with nearly every modern computer. Many predefined functions exist in the USB HID class. These functions allow hardware manufacturers to design a product to USB HID class specifications and expect it to work with any software that also meets these specifications.

The same HID protocol is used unmodified in Bluetooth human interface devices. The Bluetooth profile specification only points readers to the USB HID documentation. In this sense those devices also belong to the USB HID class.
Post 28 Nov 2010, 18:27
View user's profile Send private message Visit poster's website Reply with quote
Dex4u



Joined: 08 Feb 2005
Posts: 1601
Location: web
Dex4u 05 Dec 2010, 17:13
edfed wrote:

maybe this topic can be renamed rewrite DOS in asm with fasm...
and i think it is currentlly well advanced.

then, why not a challenge, write a minimalistic DOS clone, containing everything in 64kB, everything, means everything. no external files, or if external files (mousedrv.com, etc...) should enter the 64KB limit.

the main DOS is a really simple thing with a few possibilities.

the rest can be up to as many bytes you want.

but the DOS clone itself, able to call .com and .exe files, should be very little. because after, there will be integration of many things, like mouse driver, different file systems, other things.

maybe DOS that is apparented to INT21h can be expanded, with intXX, maybe a protected mode dos can be fun too.


edfed, Maybe MiniDos would be a good start http://board.flatassembler.net/topic.php?t=5275
Post 05 Dec 2010, 17:13
View user's profile Send private message Reply with quote
Tyler



Joined: 19 Nov 2009
Posts: 1216
Location: NC, USA
Tyler 05 Dec 2010, 18:15
f0dder wrote:
Quote:
but just imagine, it works at boot time on my netbook, using a wireless keyboard+mouse set. it is simply incredible how ASM can give very small drivers
If your wireless set is through USB, the only reason you get that working at boottime is because your BIOS has a small USB stack and is emulating PS/2 connection with that. As soon as you switch to pmode, no-go... unless of course you do insanely slow ring switching, which isn't something you'll want under a real OS - thus the need for a full USB stack.
USB to PS/2 is translated by the BIOS through SMM, and will work regardless of the mode the CPU is in.
Post 05 Dec 2010, 18:15
View user's profile Send private message Reply with quote
sleepsleep



Joined: 05 Oct 2006
Posts: 12739
Location: ˛                             ⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣Posts: 0010456
sleepsleep 09 Dec 2010, 14:29
somehow i felt, remaking the bare OS is the best thing if we able to achieved.

and imho, GUI should be totally replace through HTML type file. (for general consumption, not gaming or etc that requires GRAPHIC)

so, all the listbox, button, textbox, etc should be simply made using HTML... (i don't know if google OS aims this, but i think future winner would use this idea).
Post 09 Dec 2010, 14:29
View user's profile Send private message Reply with quote
f0dder



Joined: 19 Feb 2004
Posts: 3175
Location: Denmark
f0dder 09 Dec 2010, 14:32
sleepsleep: ever heard of WPF? XAML rings any bells?
Post 09 Dec 2010, 14:32
View user's profile Send private message Visit poster's website Reply with quote
sleepsleep



Joined: 05 Oct 2006
Posts: 12739
Location: ˛                             ⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣Posts: 0010456
sleepsleep 09 Dec 2010, 14:45
yah, microsoft WPF, heard about it, but haven't tried it yet...

i always dream of a simple OS, vga mode, support highest resolution, then black background, thats all... support most hardware... then binary compatible with (linux) but installation of new application should work like just place the application "zipped" in application folder...

hate to code it myself coz i knew it is not easy... huhuhuu
Post 09 Dec 2010, 14:45
View user's profile Send private message Reply with quote
sleepsleep



Joined: 05 Oct 2006
Posts: 12739
Location: ˛                             ⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣Posts: 0010456
sleepsleep 09 Dec 2010, 15:30
how bout a fasm linux bootdisk... to a shell... edfed?
Post 09 Dec 2010, 15:30
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4330
Location: Now
edfed 09 Dec 2010, 17:15
i feel linux is not a good way.

in fact, the better way is to restart from scratch a new os type.

even if it will not encounter succes, how dares here? what is important is t have something able to let us do what we need with the machine.but of course, support linux or windows drivers can be interresting, but how? it is a good question.

the only part really needed in these os are drivers, the rest, gui, applications, shell, kernel, ... who cares?
Post 09 Dec 2010, 17:15
View user's profile Send private message Visit poster's website Reply with quote
sleepsleep



Joined: 05 Oct 2006
Posts: 12739
Location: ˛                             ⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣Posts: 0010456
sleepsleep 09 Dec 2010, 17:37
os without support of database, web server, virtualization server and etc is imho not so much use these day...

and we certainly got no man powers nor time to create each of them.
if somehow we could tap existing binary and use it inside our os, that would be totally different.

how bout fasm os that will be xen dom0 Smile wat u think edfed?
Post 09 Dec 2010, 17:37
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4330
Location: Now
edfed 09 Dec 2010, 18:33
fasm can be part of an os
it can be the shell.

and then, instead of executing binary
we will be able to compile them

then, instead of having a static software, we can have a software that will evolve each time we will launch it.

and step after step, the soft will meet the requirements.

that's one point of view.
Post 09 Dec 2010, 18:33
View user's profile Send private message Visit poster's website Reply with quote
sleepsleep



Joined: 05 Oct 2006
Posts: 12739
Location: ˛                             ⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣⁣Posts: 0010456
sleepsleep 10 Dec 2010, 15:22
Smile waiting for all the good news.
Post 10 Dec 2010, 15:22
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page Previous  1, 2, 3, 4

< 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.