Joerg Pleumann
Joerg Pleumann
  • 48
  • 13 761
Advent of Code 2024 day 13 (in Pascal, on 8-bit CP/M)
"Claw Contraption", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz.
A bit slower than anticipated, but 64-bit math is not exactly what the Z80 was designed for (although the 64-bit int routines are already Z80 assembly courtesy of Leventhal/Saville).
Переглядів: 160

Відео

Advent of Code 2024 day 10 (in Pascal, on 8-bit CP/M)
Переглядів 12214 днів тому
"Hoof It", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz.
Advent of Code 2024 day 5 (in Pascal, on 8-bit CP/M)
Переглядів 12121 день тому
"Print Queue", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz.
Advent of Code 2024 day 4 (in Pascal, on 8-bit CP/M)
Переглядів 18121 день тому
"Ceres Search", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz.
Advent of Code 2023 day 16 (in Pascal, on 8-bit CP/M)
Переглядів 67Рік тому
"The Floor Will Be Lava", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz.
Advent of Code 2022 day 25 (in Pascal, on 8-bit CP/M)
Переглядів 290Рік тому
"Full of Hot Air", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. The final problem. It wasn't particularly complicated. My original Java approach converted numbers to decimal, added them and converted the result back to snafu. Because numbers got pretty large (which was always kind of a tricky until I built my big integer library for day 21) the Pascal so...
Advent of Code 2022 day 24 (in Pascal, on 8-bit CP/M)
Переглядів 139Рік тому
"Blizzard Basin", implemented in Pascal, compiled for CP/M and running on the ZX Spectrum Next at 28 MHz. This one, too, takes a while, but again there are many Elves wandering around it parallel, trying to find the fastest route. Since there was no way of fitting the whole map onto the 24x80 screen (and it would have been much slower to update everything after each move), I went for triangular...
Advent of Code 2022 day 23 (in Pascal, on 8-bit CP/M)
Переглядів 153Рік тому
"Unstable Diffusion", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. Since I couldn't have visualized the whole field anyway due to the limits of 24x80 text mode, I went for an area in the lower right quadrant that is slowly being "occupied" by elves. So while appears that there's not much going on, actually there is a lot of elvish action "beyond the scre...
Advent of Code 2022 day 21 (in Pascal, on 8-bit CP/M)
Переглядів 69Рік тому
"Monkey Math", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. I dodged big integers on Z80 for as long as I could, either by emulating them through two Real (48-bit floating point) numbers or by applying some modulo magic. But for this puzzle it didn't seem to be possible. There were simply too many calculations to be done. There was no other way: I finall...
Advent of Code 2022 day 22 (in Pascal, on 8-bit CP/M)
Переглядів 109Рік тому
"Monkey Map", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. The side-to-side hops in part 2 (including coordinate and facing transformations) were a bit tricky to implement, but other than that this wasn't a particularly heavy puzzle for the 8-bit micro. In fact, the better part of the 1:30 minutes consists of deliberate delays. Only 20 seconds are actual...
Advent of Code 2022 day 20 (in Pascal, on 8-bit CP/M)
Переглядів 92Рік тому
"Grove Positioning System", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. Not much to see here, I'm afraid. There are so many "mix" operations that any kind of visualization, even a more fine-grained progress indicator, would have slowed things down considerably. On the algorithmic side, I try to keep the large numbers more or less out of the game until t...
Advent of Code 2022 day 18 (in Pascal, on 8-bit CP/M)
Переглядів 150Рік тому
"Boiling Boulders", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. A quick one. Basically just load, flood-fill (from the outside), then swap stone and air. Animation shows the layers (up to the middle one) for each step. Source: github.com/pleumann/aoc22/tree/main/src/day18
Advent of Code 2022 day 17 (in Pascal, on 8-bit CP/M)
Переглядів 126Рік тому
"Pyroclastic Flow", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. Tetris! Again, the better part of the runtime goes into animating things. Console output is quite expensive in CP/M, as there is no screen buffer you can access directly, so you end up doing system calls for printing individual characters. But I think it's worth it because the result looks ...
Advent of Code 2022 day 16 (in Pascal, on 8-bit CP/M)
Переглядів 134Рік тому
"Proboscidea Volcanium", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. One of those where the restrictions of 8-bit forced me to rethink my original Java approach. I think the "Heureka!" moment was when I noticed that me and the elephant don't have to be on the same shift, so to speak. With a slight nod to the first-ever Spectrum game I played. Post a com...
Advent of Code 2022 day 15 (in Pascal, on 8-bit CP/M)
Переглядів 819Рік тому
"Beacon Exclusion Zone", implemented in Pascal, compiled for CP/M and running on a ZX Spectrum Next at 28 MHz. At the core, this solution maintains a set of non-interleaving ranges (of sensor "influences") for a given value of y. For part 1 it simply calls this with y=2000000. For part 2 it tries intersection points of sensor diamond outlines because we know the single available spot must be ad...
Advent of Code 2022 day 14 (in Pascal, on 8-bit CP/M)
Переглядів 363Рік тому
Advent of Code 2022 day 14 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 19 (in Pascal, on 8-bit CP/M)
Переглядів 235Рік тому
Advent of Code 2022 day 19 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 13 (in Pascal, on 8-bit CP/M)
Переглядів 143Рік тому
Advent of Code 2022 day 13 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 12 (in Pascal, on 8-bit CP/M)
Переглядів 549Рік тому
Advent of Code 2022 day 12 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 11 (in Pascal, on 8-bit CP/M) [version 2]
Переглядів 2,5 тис.Рік тому
Advent of Code 2022 day 11 (in Pascal, on 8-bit CP/M) [version 2]
Advent of Code 2022 day 11 (in Pascal, on 8-bit CP/M) [version 1]
Переглядів 1,4 тис.Рік тому
Advent of Code 2022 day 11 (in Pascal, on 8-bit CP/M) [version 1]
Advent of Code 2022 day 10 (in Pascal, on 8-bit CP/M)
Переглядів 76Рік тому
Advent of Code 2022 day 10 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 9 (in Pascal, on 8-bit CP/M)
Переглядів 376Рік тому
Advent of Code 2022 day 9 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 8 (in Pascal, on 8-bit CP/M)
Переглядів 184Рік тому
Advent of Code 2022 day 8 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 7 (in Pascal, on 8-bit CP/M)
Переглядів 106Рік тому
Advent of Code 2022 day 7 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 6 (in Pascal, on 8-bit CP/M)
Переглядів 87Рік тому
Advent of Code 2022 day 6 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 4 (in Pascal, on 8-bit CP/M)
Переглядів 1,4 тис.Рік тому
Advent of Code 2022 day 4 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 2 (in Pascal, on 8-bit CP/M)
Переглядів 320Рік тому
Advent of Code 2022 day 2 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 1 (in Pascal, on 8-bit CP/M)
Переглядів 397Рік тому
Advent of Code 2022 day 1 (in Pascal, on 8-bit CP/M)
Advent of Code 2022 day 3 (in Pascal, on 8-bit CP/M)
Переглядів 874Рік тому
Advent of Code 2022 day 3 (in Pascal, on 8-bit CP/M)

КОМЕНТАРІ

  • @walkcode5340
    @walkcode5340 16 днів тому

    Nice visualization, but boy it is slow.

    • @joergpleumann3025
      @joergpleumann3025 16 днів тому

      Thanks! Yes, it is a bit slow, definitely compared to modern machines, but also to what was possible back in the day. There are several reasons for that: 1) Screen output is quite "expensive" in CP/M because it needs a lot of system calls and normally goes through several layers. The program would be a lot faster if it just displayed the result. 2) The Pascal compiler I use is one that I develop(ed) myself. It does not produce super-optimized Z80 code at this point, but it evolves alongside AoC puzzles (which I have been doing for a while now) and is a fun pet project. 3) My personal ideal "watch time" for a puzzle visualization is 0:30 to 1:30 (YMMV). Unless the time is way beyond that I don't start to look for a better algorithm or code "inner loops" in assembly. If it's "too fast" I might slow things down deliberately (not the case here).

  • @stuffchat
    @stuffchat Рік тому

    No idea what these things you post are but I like them. Sharp!

    • @joergpleumann3025
      @joergpleumann3025 Рік тому

      Thanks! :) I realize they must look like weird Matrix screensavers to people who find them by coincidence. What they are is solutions to puzzles from a programming challenge called "Advent of Code". I solved them with 1980s technology, so my output is limited to 80x24 characters on a monochrome monitor (actually I could have done color, but chose not to).

    • @stuffchat
      @stuffchat Рік тому

      @@joergpleumann3025 Beautiful! I understand nothing going on in them but they'll go nicely into the pool of stuff displaying on the computer in the background of my videos. So keep solving them puzzles dude! They look good.

  • @แป้นไม้นามปากกา

    ความถี่ not

  • @zilog1
    @zilog1 2 роки тому

    eww a mac :p (jk)

  • @TheSulross
    @TheSulross 2 роки тому

    very nice - is the compiler source code on github?

    • @joergpleumann3025
      @joergpleumann3025 2 роки тому

      Not yet, I'm afraid. There's no binary release yet either. It needs more polishing before I want to make this public. I also haven't though about a license yet. But it most likely will be on Github at some point, maybe later this year.

  • @eduardonascimentocarvalho3724
    @eduardonascimentocarvalho3724 2 роки тому

    that's is awesome

  • @DD-jk3nf
    @DD-jk3nf 2 роки тому

    Very cool project! The sound was fine too, nice and clear 👍