0
I Use This!
Activity Not Available

Project Summary

Speaking for the console systems of 1980's, and the first half of 1990's, whole software written for these systems are proprietary video games. There had been "official development kits" for developers that includes a manual, basic development library for the system, and a package similar to GNU binutils; plus GCC sometimes. These development kits were also proprietary software, and developers were not allowed to redistribute these packages. Manufacturers kept the technical information about their hardware strictly confidential, forcing users to buy proprietary software developed by video-game companies who have also paid a license fee to the console manufacturer in order to distribute a software that runs on their hardware. Information kept in dark for those who have not paid for the proprietary "official development kit"s for a long time.
The emulation era involves many talented hackers who have disassembled the existing software of their target console(s) in order to figure out how the hardware they bought is working, and how to write programs that can work with the hardware. Some hackers even modified the way hardware works. Some information came from illegal distribution of the official manuals. By today, many documentation & source code exits for them, scattered around the http://www.
The varying hardware configurations and the weakness of hardware [1] is forcing programmers to write their code in assembly. Different hardware configurations require different methods, therefore different drivers to operate with. Such difficulties make it harder to write portable, generic libraries among these systems.
Albeit it's feasible to port a GNU system to the modern consoles [2], that's not the case for the older systems. First, GNU system assumes at least 32-bit targets. A minor part of old console systems are 32-bit or better. There're some 32-bit systems such as Sega Genesis and Nintendo Game Boy Advance that're not "strong" enough to operate a GNU system. Also, glibc and the other parts of the GNU project were mostly written in C, which must be translated to assembly by an optimizing compiler. Most of the modern console systems that have 32-bit or better architecture are powerful enough to execute an operating system that is written in a high-level [3] programming language, but old consoles are not that powerful, and an assembly approach is required.
In the world of UNIX and free software, the popular language is a portable language, namely C and not assembly. Chances may get dramatically low to find free software written in the assembly language of a forgotten CPU.
The primary goal of Free Console project is to emphasize users that their video game console is also a computer than can be programmed, and try to show how they can do this. Speaking implementation-wise, we want to accomplish this by supplying free software (libraries, utilities, ...) and free technical documents on the console systems. Because the GNU system can be ported to modern console systems, we're interested in writing software systems that GNU system cannot be ported to. However, we want to supply free technical documents for all console systems in existence.
An unfortunate fact about the major development tools developed by the Free Software Foundation, namely GCC and binutils, assume that the target architecture is at least 32-bit, just like GNU system itself. Luckily, for the 8-bit and 16-bit targets, there exists free software alternatives for binutils & GCC.
Free Console project also involves creation of a GNU-like operating system. We'll have a micro-kernel that's platform dependent and mostly written in assembly -along with the libc-, and a macro-kernel that is -almost- platfrom independent. The generic parts of operating system (such as coreutils) will be written in C, mostly; assembly will be an optimization-wise option.
====
1. of the 3rd and 4th generation consoles
2. 5th and later generation consoles
3. higher than assembly, including C
====
For more information, see project web-site: http://freeconsole.org

Tags

No tags have been added

In a Nutshell, Free Console...

 No code available to analyze

Open Hub computes statistics on FOSS projects by examining source code and commit history in source code management systems. This project has no code locations, and so Open Hub cannot perform this analysis

Is this project's source code hosted in a publicly available repository? Do you know the URL? If you do, click the button below and tell us so that Open Hub can generate statistics! It's fast and easy - try it and see!

Add a code location

GNU General Public License v2.0 or later
Permitted

Commercial Use

Modify

Distribute

Place Warranty

Forbidden

Sub-License

Hold Liable

Required

Distribute Original

Disclose Source

Include Copyright

State Changes

Include License

These details are provided for information only. No information here is legal advice and should not be used as such.

All Licenses

This Project has No vulnerabilities Reported Against it

Did You Know...

  • ...
    55% of companies leverage OSS for production infrastructure
  • ...
    compare projects before you chose one to use
  • ...
    in 2016, 47% of companies did not have formal process in place to track OS code
  • ...
    you can subscribe to e-mail newsletters to receive update from the Open Hub blog

 No code available to analyze

Open Hub computes statistics on FOSS projects by examining source code and commit history in source code management systems. This project has no code locations, and so Open Hub cannot perform this analysis

Is this project's source code hosted in a publicly available repository? Do you know the URL? If you do, click the button below and tell us so that Open Hub can generate statistics! It's fast and easy - try it and see!

Add a code location

Community Rating

Be the first to rate this project
Click to add your rating
   Spinner
Review this Project!
Sample ohloh analysis