Live data from Hacker News

David Horne's 1K Chess on the ZX81 (2001)

thad.frogley.info

71–80 of 154 posts

Re: David Horne's 1K Chess on the ZX81 (2001)

#71
post #67

Earlier quoted context omitted.

A better analogy would be 'greatest movie ever made' was so because it was done on a budget of $1000. Better analogy in context of this thread that is

Why? Seems like a much poorer analogy to me, since it is trivial to make a movie for much less than that. It falls into the same trap as the commenter above, the 'greatness' is due to the quality of the program, rather than just making it exist at all.

The amount was arbitrary. The point is that there is more to a greatest movie than resources spent

Re: David Horne's 1K Chess on the ZX81 (2001)

#72
post #67

Earlier quoted context omitted.

Why? Seems like a much poorer analogy to me, since it is trivial to make a movie for much less than that. It falls into the same trap as the commenter above, the 'greatness' is due to the quality of the program, rather than just making it exist at all.

The amount was arbitrary. The point is that there is more to a greatest movie than resources spent

Which is exactly why it isn't a good analogy. The amount wasn't arbitrary, it was the memory of the computer. There wasn't more to it being the 'greatest program' than the fact that it was created. There's no aesthetic judgement here. It is chess, with AI, in < 700 bytes.

Re: David Horne's 1K Chess on the ZX81 (2001)

#73
post #7

If you can't castle, you can't promote a pawn, and you can't en passant, it isn't chess.

You are welcome to add these things; we'll give you a generous extra 100 bytes.

Wonder if any student somewhere isn't trying to take up the challenge of adding castling to the code, using an emulator. I like to think that's something i would try to do as a student, because i'm pretty sure there's a tremendous amount of skill to gain by doing it.

Re: David Horne's 1K Chess on the ZX81 (2001)

#74
post #37

Impressive, as is the recent smaller program from a French programmer. Note, however, that both have sacrificed some rules. I believe they have both left out en passant, which is rare enough that it won't be missed most of the time. It's rare enough that if you use it against a casual player, there is a good chance they will accuse you of making it up. Castling, however, which is also omitted, is much more serious. G…

Just for context, your comment: 1452 bytes, well over twice the size of this chess program.

Re: David Horne's 1K Chess on the ZX81 (2001)

#75
post #60

Earlier quoted context omitted.

The greatness of an achievement may be in and of itself. The Mona Lisa is great purely based on its appearance, not that anything useful comes of it. The "7 Wonders of the World" are noted for their scale vs the ability of then-modern construction, not their ability to move water or house dead bodies. Great exploration often leads to laudable yet largely unproductive dead ends (Everest, Antarctica). In this case, cra…

And yet, when you ask what is the greatest thing or idea ever created by humans, the reply is not usually any of the Wonders of the World, or the Mona Lisa, or a chess program. It is usually language or writing or something which was similarly a sea change in the development of humanity as we know it today. My argument is that these are the better criteria for "greatness" than the relative ease of performing a specif…

And this ushered in the age of chess on your home computer :) So it was practical while simultaneously being an engineering challenge, which is what (I guess?) most of us find so appealing.

Re: David Horne's 1K Chess on the ZX81 (2001)

#76
post #69
post #37

Impressive, as is the recent smaller program from a French programmer. Note, however, that both have sacrificed some rules. I believe they have both left out en passant, which is rare enough that it won't be missed most of the time. It's rare enough that if you use it against a casual player, there is a good chance they will accuse you of making it up. Castling, however, which is also omitted, is much more serious. G…

"That raises the question of what is the smallest implementation of full chess?" Technically, that is a program that prints "I concede". If you also want it to play black (IIRC, this 1k chess doesn't) and validate moves, it would have to know the 20 opening moves for white and concede on black's first move. Of course, you could claim that isn't playing chess. But it is hard to define what, then, is chess. Picking a r…

The idea is that you have to actually implement all of the rules, even if your AI never invokes them. The game in this article for example, was originally designed as a two player game. If you can swap out the AI for a second human player and still play a correct game of chess, then you have 'full chess' now matter how bad the AI is.

Re: David Horne's 1K Chess on the ZX81 (2001)

#77
post #72

Earlier quoted context omitted.

The amount was arbitrary. The point is that there is more to a greatest movie than resources spent

Which is exactly why it isn't a good analogy. The amount wasn't arbitrary, it was the memory of the computer. There wasn't more to it being the 'greatest program' than the fact that it was created. There's no aesthetic judgement here. It is chess, with AI, in < 700 bytes.

Well, make it the greatest movie of all time because it was done with 1 $.

He meant the "movie budget" could be arbitrary chosen to satisfy the "feat under huge constraints".

Impressive but not necessarily deserving of the monicker: "best ever".

Re: David Horne's 1K Chess on the ZX81 (2001)

#78
The other day, my son brought a discarded 3.5" floppy from PrintShop home from school. It got me thinking about the fact that 1440kb or even 720kb is more information than a person can wrap their head around unless it's dumbed down to a simply interpreted bitmap...i.e. we can interpret it with our visual cortex.

1024 bytes has 2^8192 permutations. And 3-SAT is NP-Complete.

Re: David Horne's 1K Chess on the ZX81 (2001)

#79
post #37

Impressive, as is the recent smaller program from a French programmer. Note, however, that both have sacrificed some rules. I believe they have both left out en passant, which is rare enough that it won't be missed most of the time. It's rare enough that if you use it against a casual player, there is a good chance they will accuse you of making it up. Castling, however, which is also omitted, is much more serious. G…

Just for context, your comment: 1452 bytes, well over twice the size of this chess program.

I think it's helpful to consider that this program in 672 bytes of machine code rather than source code or assembler. That helps the comparisons to English text seem a little less jarring: if my words were expressed as 8bit bytes rather than a series of byte sized chars you'd see a lot of compression in my communication.

He also 'cheats' a bit by keeping part of the program on tape and never loading it into memory so it doesn't count toward the 672 byte limit. That's a good trick that I wouldn't have thought to do with display code.

Re: David Horne's 1K Chess on the ZX81 (2001)

#80
post #79

Earlier quoted context omitted.

Just for context, your comment: 1452 bytes, well over twice the size of this chess program.

I think it's helpful to consider that this program in 672 bytes of machine code rather than source code or assembler. That helps the comparisons to English text seem a little less jarring: if my words were expressed as 8bit bytes rather than a series of byte sized chars you'd see a lot of compression in my communication. He also 'cheats' a bit by keeping part of the program on tape and never loading it into memory so…

> He also 'cheats' a bit by keeping part of the program on tape and never loading it into memory so it doesn't count toward the 672 byte limit.

I'm missing something here, but if something is never loaded in the memory, why should be counted? Why do you consider that a part of the program at all?

Can you please also provide more technical details, since I don't understand what you mean?

Post reply on HN