Live data from Hacker News

Memories – 256 bytes demo winner of Revision 2020

sizecoding.org

31–40 of 123 posts

Re: Memories – 256 bytes demo winner of Revision 2020

#31
post #28

Not MS-DOS, but my favourite 256 byte demo is for the C64: "A Mind Is Born", check it out: https://www.youtube.com/watch?v=sWblpsLZ-O8 that music is astonishing.

If i had experienced this out of my dads humble little c64 back in the 80’s i think i would have passed out. That music is incredible esp considering how concisely it is stored.

Re: Memories – 256 bytes demo winner of Revision 2020

#32
I am always very impressed when I see these demos and how much can be done with so little. If you are like me you just jumped to Youtube[1] to see it in action.

When trying to make my significant other to understand what was happening I wanted to run it myself. I was amazed how simple that was!

- Install the assembler[2]

- Install dosbox[3]

- Get the source[4] and put it into c:\temp\demo\memories.asm

- Start nasm and enter:

    cd c:\temp\demo
    nasm.exe memories.asm -fbin -o memories.com
- Start dosbox and enter:

    mount d c:\temp\demo
    d:
    dir
    memories
- Press [ALT][ENTER] for fullscreen

The dosbox config is not optimized but it runs with sound with the default settings!

For me this is somehow much more impressive than simply watching the video.

[1] https://www.youtube.com/watch?v=Imquk_3oFf4

[2] https://nasm.us/

[3] https://www.dosbox.com/

[4] http://www.sizecoding.org/wiki/Memories#Original_release_cod...

Re: Memories – 256 bytes demo winner of Revision 2020

#33
> In 320x200 mode, instead of constructing X and Y from the screen pointer DI with DIV, you can get a decent estimation with multiplying the screen pointer with 0xCCCD and read X and Y from the 8bit registers DH (+DL as 16bit value) and DL (+AH as 16bit value). The idea is to interpret DI as a kind of 16 bit float in the range [0,1], from start to end. Multiplying this number in [0,1] with 65536 / 320 = 204,8 results in the row before the comma, and again as a kind of a float, the column after the comma. The representation 0xCCCD is the nearest rounding of 204,8 * 256 ( = 52428,8 ~ 52429 = 0xCCCD). As long as the 16 bit representations are used, there is no precision loss.

Řrřola's trick. A bit like https://en.wikipedia.org/wiki/Fast_inverse_square_root

Re: Memories – 256 bytes demo winner of Revision 2020

#34

The source code really looks like black magic. It's incredible they were able to cram the tunnel effect into 64 bytes [1]. The entire video is here [2], if you just want to watch the final product. EDIT: link fixed. [1] https://www.pouet.net/prod.php?which=85227 [2] https://www.youtube.com/watch?v=Imquk_3oFf4

There's something beautiful about the fact that the video is FAR larger in size than the program that initially generated the output. Almost worth watching for that fact alone.

Your comment's html source code (the entire ) is also larger with its 380 bytes.

Re: Memories – 256 bytes demo winner of Revision 2020

#36

Earlier quoted context omitted.

There's something beautiful about the fact that the video is FAR larger in size than the program that initially generated the output. Almost worth watching for that fact alone.

Your comment's html source code (the entire ) is also larger with its 380 bytes.

Can be gzipped down to 275 though.

Re: Memories – 256 bytes demo winner of Revision 2020

#37
post #32

I am always very impressed when I see these demos and how much can be done with so little. If you are like me you just jumped to Youtube[1] to see it in action. When trying to make my significant other to understand what was happening I wanted to run it myself. I was amazed how simple that was! - Install the assembler[2] - Install dosbox[3] - Get the source[4] and put it into c:\temp\demo\memories.asm - Start nasm an…

pvg has in a comment linked to the optimized dosbox config. With that it runs smooth as butter!

Re: Memories – 256 bytes demo winner of Revision 2020

#38

Earlier quoted context omitted.

There's something beautiful about the fact that the video is FAR larger in size than the program that initially generated the output. Almost worth watching for that fact alone.

Your comment's html source code (the entire ) is also larger with its 380 bytes.

It always stings when I make a website/app pulled through all the optimizers and compression algorithms, and the content people fuck it all up by adding 10MB of images :/.

Re: Memories – 256 bytes demo winner of Revision 2020

#39
post #20
post #19

I've always thought the demo scene looked cool. Problem is, I don't really care about graphics and sound and am not an especially creative person. Are there are competitions that are purely objective? As in, the objective criteria is quantitative?

codegolf

The Advent of Code challenges are really interesting as well, you can often code golf those by a lot. I never get that far though :/.

But, what I did last year was visualize one of the assignments; the assignment was something about overlapping areas on a field, the naive solution (for me) was to create an x by y bitmap and just add the overlaps, which could then easily be converted into a visible image, which helped me with visualizing the problem and my solution.

Re: Memories – 256 bytes demo winner of Revision 2020

#40
On a related note: 2019, "Dope on Wax" was 1st in the PC 64k section.

There is a breakdown of this demo on youtube, it's roughly ~2 hours. They explained how they made this demo. Really interesting to watch.

Demo: https://www.youtube.com/watch?v=QhqT0DhV9yE

Breakdown: https://www.youtube.com/watch?v=hFIyj5Yv440

Post reply on HN