FUZIX
ChessPositionRanking
Our great sponsors
FUZIX | ChessPositionRanking | |
---|---|---|
13 | 29 | |
2,100 | 132 | |
- | - | |
8.1 | 2.5 | |
2 days ago | 5 months ago | |
C | Haskell | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
FUZIX
-
Dec RSX-11M OS-Like for the Z280 CPU
Alan Cox has a "Fuzix" repo, that puts together Uzix variants for the Z80.
https://github.com/EtchedPixels/FUZIX
- If you thought running Linux on a 3DS or PS2 wasn't crazy enough, here's Linux on a Nintendo DS Lite
- FuzixOS
-
Unix on 6800?
Fuzix does appear to have CPU support for 6800 and is probably your best starting location. Although based on what I've seen of the ET-3400 you could be in for quite the uphill struggle.
-
Brooks, Wirth and Go
Software complexity also helps to establish or maintain the predominance of large corporations on the market. In contrast, a simple software system can be reimplemented by a small team or even a single person, so there is more competition. This is not only demonstrated by Wirth's systems, but also by several 7th edition Unix clones of the 80's [1-4] as well as current ones [5] and also reimplementations of the classic MacOS [6].
Back in the 1980s, operating systems and compilers were often seen as the most complex pieces of software. Nowadays, web browsers include (and reimplement) large parts of an OS and compiler and are probably even more complex than a current OS such as Linux or a current compiler such as clang/LLVM. Only rich (or well funded) companies such as Google, Apple and the Mozilla foundation can afford to build a browser today that can be used to access current web pages.
So a central question is if we can turn back times and make software more simple again. Maybe this ship has already sailed - but it can't hurt to try. From experience with my students, it is extremely satisfying for them to build a complete system from scratch instead of mostly copying and pasting library calls or StackOverflow code snippets. Thus, I try to enable my students to experience this sense of achievement. They will probably never get the chance to do something similar in their later career in industry.
[1] One Man Unix for 68k - http://www.pix.net/mirrored/discordia.org.uk/~steve/omu.html
[2] Uzix for Z80 (link to the MSX port) - http://uzix.sourceforge.net
[3] Coherent Unix - https://en.wikipedia.org/wiki/Coherent_(operating_system)
[4] Minix - https://www.minix3.org
[5] Alan Cox' Fuzix - https://github.com/EtchedPixels/FUZIX
[6] Ardi Executor - https://en.wikipedia.org/wiki/Executor_(software)
- Unix for the Osborne Executive
-
Linux Has Largely Abandoned Still-Useful Near-Vintage Computers
How about FUZIX? It might be a better fit for vintage computers?
https://github.com/EtchedPixels/FUZIX
- Now you can run Unix on the tiny $4 Raspberry Pi Pico
-
unix for MSX
Also fuzix: https://github.com/EtchedPixels/FUZIX
- Unix Implementation for MSX (2005)
ChessPositionRanking
- Chess Position Ranking
-
How to Store a Chess Game in 26 Bytes Using Bit-Level Magic
3. There's extra nuanced things you might want to handle in the coding, like that pawns can't be on their own back row. That is significantly harder.
It looks to me like https://github.com/tromp/ChessPositionRanking has resolved these sorts of issues, but I haven't dug into exactly how.
-
Permutation Iteration and Random Access
Multinomial rankings can be combined with a dozen others to rank a subset of all chess positions including all legal ones. This allows one to sample millions of random such positions, determine how many are legal, and thus obtain an accurate estimate of 4.8&10^44 legal chess positions [2].
[1] https://github.com/tromp/ChessPositionRanking/blob/main/src/...
[2] https://github.com/tromp/ChessPositionRanking
-
The number of legal Chess diagrams is less than 4 × 10^37 which is an improvement on the previous upper bound of 2 × 10^40 by Steinerberger.
The key words being "without promotion". Both bounds, this one and Steinerberger's, only consider positions reachable without promotion. Allowing promotions, one estimate suggests that the number is close to 4.82 × 10^44.
-
eli5 With billions and billions of people over time, how can fingerprints be unique to each person. With the small amount of space, wouldn’t they eventually have to repeat the pattern?
source
- Accurately estimating the number of legal chess positions
-
"Chess too simple for my big brain, not like mobile strategy game"
This one as well as Shannon number wiki seem to say that possible sensible moves are about 10^40 while and 10^120 while taking any moves (maybe including some illogical / illegal ones) .
-
How to build a Chess Engine, an interactive guide
Shannon's estimate was based on very primitive methods; by generating random positions and using fairly advanced methods to see whether they are legal or not (ie., can you construct a proof game for it, or prove that it could never happen), you will get much closer. A group of people have been working on this, and their current best estimate is (4.822 +- 0.028) * 10^44, or a bit over 148 bits. (Amazingly enough, Shannon wasn't all that far off on this account! His estimated number of legal games seems much more dodgy, though.)
http://talkchess.com/forum3/viewtopic.php?f=7&t=77685&sid=e3...
Practically speaking, https://github.com/tromp/ChessPositionRanking gives a number between 0 and approx. 8.7 * 10^45 for any legal position, so it's only a couple of bits away from optimality.
-
Ask HN: Teach Me Something New
The number of chess positions has now been estimated with 2 digits of accuracy as ~ 4.8 x 10^44: https://github.com/tromp/ChessPositionRanking
What are some alternatives?
linux - Kernel source tree for Raspberry Pi-provided kernel builds. Issues unrelated to the linux kernel should be posted on the community forum at https://forums.raspberrypi.com/
kaldi-gstreamer-server - Real-time full-duplex speech recognition server, based on the Kaldi toolkit and the GStreamer framwork.
lk - LK embedded kernel
hackernews - Hacker News web site source code mirror.
elks - Embeddable Linux Kernel Subset - Linux for 8086
mtpng - A parallelized PNG encoder in Rust
py2exe - Create standalone Windows programs from Python code
swi-mqtt-pack - MQTT pack for SWI-Prolog
nixpkgs - Nix Packages collection & NixOS
Etar Calendar - Android open source calendar
nds-hb-menu
syzygy-tables.info - User interface and public API for probing Syzygy endgame tablebases