Page 1 of 7

Dawn

Posted: Tue Mar 14, 2017 11:07 am
by Geri
Dawn operating system is a revolutionary technology, the first high-level operating system built for URISC computers.

Image

I alreday mentioned it here before, but i went to silent for a while (i decided to do stealth development)

Other operating systems are designed to run on extremely complex hardware environments, but Dawn operating system is designed for the SUBLEQ architecture, which have no traditional instruction set. This allows a Dawn compatible processor and computer to be designed from a millionth costs than a traditional CPU.

The goal of the Dawn operating system is to bring back the hardware and software development to the people.
Currently, the market is dominated by x86/arm, where a CPU that is capable of blicking the cursor on the screen needs 20 billion usd investment to create, and 30 years of work by 30 corporations and 1 million developers worldwide.

Traditional IT corporations created a technologic singularity, which was not able to show up any innovation in the last 20 years.
We arrived to a point, where painting a colored texture on the screen requires 1600 line of initialization and weeks of debugging - and if you are not want to do that, you can only access child toys, design apps, half gbyte sized libraries, and they are still crashing at initialization in most cases.
The internet, global forum of the free speech - actually controlled by the ISP-s and governments. A wifi device is driven by 5 million of source code lines, and nobody actually fully understants, how they work, a TCP stack is 500.000 lines of code. There are no experts at this area any more - even professionals are just typing random things in consoles to get it working if something is broken, hoping that it will randomly cure itself, becouse they cant debug 30 and 40 million code lines that is responsible for sending a bit on the cable.

Dawn operating system is different. Emulating the cpu itself is 6 source code line in C, understanding the hardware set is very simple.
Dawn operating system itself does not supports any technology, that is enemy of the freedom, while it still offers a nice graphics user-friendly graphics interface with the most common elements.
It is easy to create hardware and software for Dawn - the hardware design is well documented, and simple. Dawn have a built-in C compiler that also offers connectivity to the Dawn platform to create textured sprites, texts, play music, get data from the joystics, from webcamera, or manage the files of the computer.


Dawn is a modern graphics operating system, it supports the folowing features:
- Big-endian 64-bit SUBLEQ CPU
- Mouse
- Keyboard
- Virtual keyboard
- Touchscreen
- Multitouch
- 64-bit sound input and output on 8 channels
- 4 force-feedback joysticks
- 16 RGB cameras
- up to 32-bit RGBA graphics output, transparent screens are also supported
- An own p2p wireless networking protocol based on geolocation and requiring no external network provider cormprations
- CPU hotplug
- Disk drive hotplug
- Up to 100 individual disk-drive
- Basic tools like document reader, paint, wave player, process explorer, etc
- Some simple games like chess, amoeba
- C/C99 compiler that is capable of compiling codes written for the C programming language
- SMP support, up to basically unlimited CPU cores
- Very simple IO system that will stay constant for all future versions
- Memory and disk size support up to 2^63 bytes
- Battery, and power-saving features
- UTF8, unicode, ASCII
- Fast boot and shutdown



download:

http://users.atw.hu/gerigeri/DawnOS/download.html

Re: Dawn

Posted: Tue Mar 14, 2017 12:14 pm
by dozniak
http://ftp.sth.sze.hu/~andras/dawn.zip gives 404, second link leads to a paid site.

also please show me a 50GHz mcu, as described in the sheet on the front page.

Re: Dawn

Posted: Tue Mar 14, 2017 12:55 pm
by SpyderTL
It's good to see you back on the site.

This is pretty impressive. I had to do some digging to find out what a SUBLEQ was, but it reminds me of a 3D Mech Fighting game that I made several years ago. The sequel was going to have a simple programming language that you could use to automate your Mechs while you weren't controlling them.

But what you have there looks great. Does your SUBLEQ code have direct access to things like I/O ports and the Frame Buffer memory on your physical machine?

Is there anything that anyone is aware of that you could NOT do with a single SUBLEQ instruction?

Re: Dawn

Posted: Tue Mar 14, 2017 1:10 pm
by Geri
dozniak: this doc features some http://www.ursi.org/proceedings/procGA0 ... /p2121.pdf
the missing link will be updated probably at tonight. from the second link, you can download it freely by clicking the download button at left side.

SpyderTL: yeah, sorry for not being here, but i didnt wanted to cause big suprise everywhere for actually writing this software., i think it is a very significant

the operating system runs complitely on subleq instruction set with its own frame buffer specifications mapped to fix static locations in the specification. so this means, if you do an emulator, you can map it to physical svga buffer locations, or you can copy it with a memcpy.

graphics memory is at 256 mbyte, and have a fix size of 32 mbyte. rest of hardware coming from this place, up to 320 mbyte.

Re: Dawn

Posted: Tue Mar 14, 2017 1:37 pm
by SpyderTL
Okay, I downloaded the image, but I probably won't get a chance to play around with it until I get home tonight.

I misunderstood your initial statement about the CPU emulation being 6 lines of code to mean that the entire emulator was 6 lines of code, and everything else was SUBLEQ code that was actually directly accessing memory and I/O addresses.

But, that does bring up an interesting idea. I was discussing the possibility of writing a compiler that could, for instance, take in the exact same code and have it compile to both x86 and to 6502 (i.e. Commodore 64) and run. The best I could come up with was to use C, and to use very similar libraries, like stdlib, that worked for both platforms.

But now that I've seen this, I'm thinking about a new solution.

Let's say you booted both machines (x86 and c64) directly into a "6 lines of code" loop that acts as a simple CPU emulator that has access to a virtual memory address that maps almost entirely to the physical memory address of the real CPU. Then, you pre-load a specific virtual memory address with a table that describes all of the interesting memory locations on that platform, like virtual I/O ports, PCI busses, ACPI tables, etc. (Pretty much anything that can't be auto-detected using some other device or standard...)

Then, you just write drivers for every device on every platform. And voila, you have a single OS that works on any physical device, and works virtually on any platform.

I just realized that I sort of hijacked your thread a bit. If anyone is interested, I can start up a new thread to further the discussion...

Re: Dawn

Posted: Tue Mar 14, 2017 1:44 pm
by Geri
no problem, is relevant. basically thats the point of subleq, having the things easy.

but if you think your idea forward, you will come up the question, why is the mos and x86 cpus are even in the conception, if you can run the whole thing natively

Re: Dawn

Posted: Tue Mar 14, 2017 2:46 pm
by SpyderTL
Because I can't run the whole thing natively...

I don't have a SUBLEQ maker board. I don't think that you can buy one, and I don't feel like making one.

On the other hand, I have an x86 machine, and I can get my hands on a c64 machine, and I have a dozen other ARM based devices that I can write a 6-line CPU emulator for.

Is there some way that I can run SUBLEQ code "natively" that I'm not aware of?

Re: Dawn

Posted: Tue Mar 14, 2017 3:12 pm
by Geri
you grabbed the qeustion through its neck. there were people around the net who did subleq hardware projects, but they discontinued it becouse of the lack of operating system. i will google these projects, and inform everybody about the operating system, so they could modify it to run my system. after this, i hope there will be at least an FPGA code to run it half-natively.

Re: Dawn

Posted: Tue Mar 14, 2017 4:57 pm
by Geri
dozniak, link fixed

Re: Dawn

Posted: Tue Mar 14, 2017 8:12 pm
by Geri
UPDATE:
2017 march 15.

Hotfix - Fixed the disk access bug in win32/w64 version of emulators. Download links and files are replaced.

Re: Dawn

Posted: Tue Mar 14, 2017 10:41 pm
by dchapiesky
is this in any way related to the purisc project?

https://github.com/purisc-group

They have an llvm IR to subleq backend....

also for those interested in single instruction computing on x86....

https://github.com/xoreaxeaxeax/movfuscator

converts all your pretty code to mov instructions...

And the homebrew crowd has been doing OISC for a while:

bitwise NOR https://www.youtube.com/watch?v=IoMgCrOT3fU

fun stuff....

Re: Dawn

Posted: Wed Mar 15, 2017 1:32 am
by dozniak
Geri wrote:dozniak, link fixed
thanks!

and thanks for the 50ghz circuitry link, too.

Re: Dawn

Posted: Wed Mar 15, 2017 4:44 am
by Geri
dozniak wrote:
Geri wrote:dozniak, link fixed
thanks!

and thanks for the 50ghz circuitry link, too.

i turns i am bullshiting becouse electric engineers sayd that complex chips could not done on such big clock, only very simple signal processors

Re: Dawn

Posted: Wed Mar 15, 2017 4:46 am
by Geri
dchapiesky: not, but i will contact all of those dudes probably once to tell them to modify they platforms to be compatible with my OS and guide them

Re: Dawn

Posted: Wed Mar 15, 2017 6:05 pm
by Geri
HOTFIX:
-Fixed misleading informations on the webpage
-Fixed a bug in the Dawn operating system with the wallpaper when modifying resolution
-Links and files are updated

A video that compares booting Dawn OS on emulated 300 mhz SUBLEQ cpu, and Linux emulated on 300 mhz ARM CPU:
https://www.youtube.com/watch?v=Emn-UF4ArWk