TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Video Chess disassembled and commented

260 点作者 nanochess将近 2 年前

15 条评论

dws将近 2 年前
Many years back (so details are fuzzy), a friend who worked at Atari in the early 80&#x27;s told that the programmer who did the game part of the work had the basic chess algorithm working in a few months, spent the next year getting it to run in less than 128 bytes of RAM, and was then burnt out and left tech.<p>IIRC, the game devs used a PDP-11 for much of their work, so that had a bit more RAM to work with to get started.
评论 #36439543 未加载
评论 #36437809 未加载
danmaz74将近 2 年前
I started developing software as a kid on a Commodore 64, and I thought we were pretty clever if we were able to accomplish interesting things using only 32KB of RAM. But the idea that somebody was able to develop a full chess engine using only 128 <i>Bytes</i> of RAM boggles my mind.
评论 #36433575 未加载
评论 #36443846 未加载
评论 #36439530 未加载
评论 #36435606 未加载
kstrauser将近 2 年前
I think I’m pretty good at writing software, and then I see stuff like this, and the impostor syndrome kicks in hard. A fully working chess game in 4K of ROM, using each of the 128 bytes of RAM for several purposes? That’s some genius.<p>Bravo to OP for the disassembly and explanation, too!
评论 #36433035 未加载
评论 #36435371 未加载
评论 #36436903 未加载
评论 #36433058 未加载
评论 #36434579 未加载
评论 #36435131 未加载
_a_a_a_将近 2 年前
Well, there&#x27;s also this <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;1K_ZX_Chess" rel="nofollow noreferrer">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;1K_ZX_Chess</a><p>1K ZX Chess&#x27;s code takes up only 672 bytes in memory,[2] but implements chess rules except for castling, promotion, and en passant, including a computer opponent.[3] It was the smallest implementation of chess on any computer at the time.<p>672 bytes RAM, No ROM. No promotion is a killer though
chrisbrandow将近 2 年前
The podcast advent of computing just had a deep dive into the intricacies and limitations of the Atari 2600. Having just listened to that episode, it makes this achievement even more impressive.<p><a href="https:&#x2F;&#x2F;overcast.fm&#x2F;+Ri2NFzoG8" rel="nofollow noreferrer">https:&#x2F;&#x2F;overcast.fm&#x2F;+Ri2NFzoG8</a>
评论 #36434922 未加载
LanceH将近 2 年前
Now get it hooked up to lichess and see where its rating ends up.<p>I love the 2600 breakdowns and the hacks to get things working.
dbravender将近 2 年前
I just finished training a neural network to play a trick taking card game and just the neural network is 4,250 times the size of the ROM for Video Chess and the executable including the UI is even bigger.<p>True story: One time I was at a party and my parents introduced me to some friends of theirs and they said their son worked on graphics drivers. I said I couldn&#x27;t handle low-level work like that. My parents glared at me and told me I was being rude. Once I figured out the disconnect I explained that low-level means closer to the CPU and it&#x27;s much more complicated - not that it&#x27;s less desirable work.
cwaffles将近 2 年前
Smallest chess engine in 288 bytes: <a href="https:&#x2F;&#x2F;leanchess.github.io&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;leanchess.github.io&#x2F;</a>
syntex将近 2 年前
You can play this game here free80sarcade.com&#x2F;atari2600_VideoChess.php
eggy将近 2 年前
I have Oscar&#x27;s &#x27;Programming Boot Sector Games&#x27; and I worked through it last summer. Great fun! And having programmed from 1978 on a Commodore PET 2001 in PET Basic and later on Vic-20 and Amigas in assembler and C, I learned a few new tricks from Oscar&#x27;s book. Constraints hone your skills, so when you are buried in large frameworks and IDEs you can take some solace that not everything needs to be so complicated. It&#x27;s also why I enjoy APL&#x2F;J&#x2F;BQN and April (APL Re-Imagined in Lisp).
deater将近 2 年前
don&#x27;t settle for chess on the Atari 2600 when you can be playing Myst on the Atari 2600: <a href="http:&#x2F;&#x2F;deater.net&#x2F;weave&#x2F;vmwprod&#x2F;myst_vcs&#x2F;" rel="nofollow noreferrer">http:&#x2F;&#x2F;deater.net&#x2F;weave&#x2F;vmwprod&#x2F;myst_vcs&#x2F;</a><p>I&#x27;m trying to get it to the speed-runnable state before Mysterium next week, we&#x27;ll see how that goes
nsxwolf将近 2 年前
What&#x27;s its ELO score?<p>Edit: Really? Downvotes? Certainly it must have one. You could play someone on chess.com and find out?
评论 #36439233 未加载
wkjagt将近 2 年前
Oscar Toledo is awesome. I have his book Programming Boot Sector Games, and it&#x27;s wonderful.
ttonkytonk将近 2 年前
This is off topic (I owned an Atari 2600, and loved Atari, but never owned Video Chess), but I&#x27;ve come up with a chess variant I call &quot;Transposition Chess&quot; (not to be confused with Transcendental Chess).<p>The rules are the same with three major differences.<p>I) Black has the option of transposing any two pieces on their back rank before play begins. If they do they must transpose the parallel pieces on their other side to make their setup symmetrical (unless they transpose the king and queen). White must adjust their setup to mirror Black&#x27;s, and then play can commence.<p>This creates 11 possible setups:<p>1)b&gt;RNBQKBNR w&gt;RNBQKBNR<p>2)b&gt;RNBKQBNR w&gt;RNBKQBNR<p>3)b&gt;RBNQKNBR w&gt;RBNQKNBR<p>4)b&gt;BNRQKRNB w&gt;BNRQKRNB<p>5)b&gt;NRBQKBRN w&gt;NRBQKBRN<p>6)b&gt;RNQBBKNR w&gt;RNQBBKNR<p>7)b&gt;RNKBBQNR w&gt;RNKBBQNR<p>8)b&gt;RQBNNBKR w&gt;RQBNNBKR<p>9)b&gt;RKBNNBQR w&gt;RKBNNBQR<p>10)b&gt;QNBRRBNK w&gt;QNBRRBNK<p>11)b&gt;KNBRRBNQ w&gt;KNBRRBNQ<p>Castleling is only possible in the first five set-ups, and will always be with the piece that occupies the Rook&#x27;s original square.<p>II) Pieces can be <i>demoted</i> by moving them to an original pawn square (on one&#x27;s own side of the board) and declaring a demotion. However, there must be at least one of their pawns captured that they can &quot;exchange&quot; it for. Note that the new pawn could deliver checkmate&#x2F;stalemate.<p>III) Pawns can only be promoted to pieces currently captured. If no pieces are currently captured, the pawn <i>may not</i> move to the promotion rank (as if a piece was blocking it). Note that it may still deliver checkmate&#x2F;stalemate in this position, as normal.<p>The thinking behind the first rule is to make book opening memorization less of an issue (without making things too complicated or unusual) as well as giving Black compensation for moving second. The thinking behind demotions is to make games that would normally be draws due to lack of material (or skill) winning. The thinking behind the last rule is to make over-the-board play easier (e.g. no confusion about whether a piece is a pawn or queen), though it also potentially makes &quot;two for one&quot; exchanges more attractive for the person capturing two pieces (I recently saw somewhere that there&#x27;s some evidence that when the queen is exchanged for two rooks or the rook for two minor pieces, the person losing two pieces typically does better, though nominally they have less in material value).
raldi将近 2 年前
What is an “alone white king”?