This commit is contained in:
Miloslav Ciz 2024-05-02 22:35:34 +02:00
parent fab11be42b
commit 1cfa0787d3
16 changed files with 1922 additions and 1760 deletions

View file

@ -1,6 +1,6 @@
# Public Domain Computer
Public domain computer is yet nonexistent but planned and highly desired [simple](kiss.md) ethical [computer](computer.md) (in the common meaning of the word) whose specification is completely in the [public domain](public_domain.md) and which is made with completely [selfless](selflessness.md) [LRS](lrs.md)-aligned goal of being absolutely non-malicious and maximally helpful to everyone. It should be the "people's computer", a simple, [suckless](suckless.md), user-respecting hackable computer offering maximum [freedom](free_software.md), a computer which anyone can study, improve, manufacture and repair without paying any "[intellectual property](intellectual_property.md)" fees, a computer which people can buy (well, while money still exist) for extremely low price and use for any purpose without being abused or oppressed.
Public domain computer is yet nonexistent but [planned](needed.md) and highly desired [simple](kiss.md) ethical [computer](computer.md) (in the common meaning of the word) whose specification is completely in the [public domain](public_domain.md) and which is made with completely [selfless](selflessness.md) [LRS](lrs.md)-aligned goal of being absolutely non-malicious and maximally helpful to everyone. It should be the "people's computer", a simple, [suckless](suckless.md), user-respecting [hackable](hacking.md) computer offering maximum [freedom](free_software.md), a computer which anyone can study, improve, manufacture and repair without paying any "[intellectual property](intellectual_property.md)" fees, a computer which people can buy (well, while money still exist) for extremely low price and use for any purpose without being abused or oppressed.
"Public domain computer" is just a temporary placeholder/general term, the actual project would probably be called something different.
@ -38,9 +38,9 @@ Abstract hardware specification means e.g. description on the [logic gate](logic
3. Write basic [software](software.md) in our language, mainly:
- Custom tools for designing, simulating and testing [logic circuits](logic_citcuit.md). Not extremely difficult if we [keep it simple](kiss.md).
- [Emulator](emulator.md) of our custom ISA so that we can run and test it on our current computers. It will also be useful to make our computer possible to be run as a virtual hardware on other platforms.
- [Shell](shell.md) that will serve to performing basic tasks with the computer, e.g. using it as a calculator or interactively programming it in simple ways. The shell will also serve as a kind of [operating system](operating_system.md), or rather a simple program loader. For now the shell can run on our current computers where we can test it and fine tune it.
- [Shell](shell.md) that will serve to performing basic tasks with the computer, e.g. using it as a calculator or interactively programming it in simple ways. The shell will also serve as a kind of [operating system](operating_system.md), or rather a simple program loader. For now the shell can run on our current computers where we can test it and fine tune it. Implementation of this could be the [comun shell](comun_shell.md).
- Compiler -- this basically just means self hosting our compiler.
- Basic tools like a text editor, compression utility etc.
- Basic tools like a text editor, compression utility, image editor etc.
4. With the logic circuit tools design a simple [MCU](mcu.md) computer based on the above mentioned ISA. This is doable, there are hobbyists that have designed their own 8bit CPUs, a few collaborating people could definitely create a nice MCU if they keep it simple (no caching, no floating point, no GPUs, ...).
5. Compile the MCU logic-level description to an actual circuitboard, possibly even with [proprietary](proprietary.md) tools if other aren't available -- this may be fixed later.
6. Manufacture the first physical computer, test it, debug it, improve it, give it to people, ...
@ -49,6 +49,7 @@ Abstract hardware specification means e.g. description on the [logic gate](logic
## See Also
- [comun](comun.md)
- [comun shell](comun_shell.md)
- [uxn](uxn.md)
- [less retarded watch](less_retarded_watch.md)
- [PDOS](pdos.md)