Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    B

    Bisqwit

    bisqwit.iki.fi · Personal blog · on HN since 2012

    Bisqwit is a Finnish programmer who writes about dithering algorithms, OpenMP, emulation, and game source code, and also publishes essays against Islam.

    Visit blogHN submissions
    ProgrammingRetro ComputingGames
    What HN says

    Commenters like his programming, speedrunning, and reverse engineering work and the Yliluoma dithering article, but one is uneasy about his anti-Islam writing.

    Stats for nerds
    46HN people shared it
    16linked in comments
    153story points
    Mar 2026last shared
    2013people per year2026

    Top posts on HN

    1. 1
      Joel Yliluoma's arbitrary-palette positional dithering algorithm
      20 people · 84 points · first shared 2015 · 2 comments on HN
    2. 2
      Rockman / Mega Man source code (2013)
      2 people · 51 points · first shared 2017 · 7 comments on HN
    3. 3
      Guide into OpenMP: Easy multithreading programming for C++
      6 people · 7 points · first shared 2012 · Discussion on HN
    4. 4
      How to Idle on IRC
      1 person · 4 points · first shared 2024 · Discussion on HN
    5. 5
      MicroBlaze emulator that runs Linux and is written in C++11
      1 person · 2 points · first shared 2012 · Discussion on HN
    6. 6
      Dynamic C++ expressions
      1 person · 2 points · first shared 2018 · Discussion on HN
    7. 7
      Bisqwit's free software
      1 person · 2 points · first shared 2018 · Discussion on HN
    8. 8
      How to undo pvremove when you should have run vgreduce
      1 person · 1 points · first shared 2013 · Discussion on HN
    9. 9
      FAQ
      2 people · first shared 2013
    10. 10
      Homepage
      2 people · first shared 2013

    What HN people wrote when they linked it

    • BZH314Jun 2018

      @matts_ramblings approach is great to get a perfect authoritative reference we can use to test and/or train other tools.

      Other tools mapping the Super Mario Bros. levels:

      1. animmerger [1] by bisqwit

      Written in C++.

      Takes png images as input.

      This tool seems to be the reference in creating level maps for Super Mario.

      Matt's tool seems to use animerger to generate the color palette according to the source code [2]

      2. ALMA [3] by BZH314 (disclaimer: our baby project)

      Matt mentions using this approach as a possibility in the post.

      Written in Python using the OpenCV [4] computer vision library.

      ALMA takes videos as input, generates the map levels as images (png and animated gifs) and also generates the videos to show the algorithm in action [5]

      (shameless self plug: need more YouTube subscribers to get that sweet sweet vanity URL please :-)

      ALMA applies background subtraction to remove the moving enemies in order to keep only the background (a problem Matt's tool does not have)

      3. Manually stitched

      If you're looking for good SMB1 level maps stitched manually, there are some good work out there:

      Rick N. Bruns' nesmaps.com [6]

      Mariowiki: example of World 1-1 [7]

      Are you aware of other tools out there?

      ---

      [1] https://bisqwit.iki.fi/source/animmerger.html

      [2] https://gist.github.com/matthewearl/733bba717780604813ed588d8ea7875f

      [3] https://bzh314.com/alma/

      [4] https://opencv.org/

      [5]…

    • rasz_plJun 2016

      Neat facts:

      -3DFX Voodoo (all models in 16bit color depth) let you enable hardware dithering block (2x2/4x4 ordered dither, zero performance penalty). They did it to save framebuffer space (24bit textures, 16bit framebuffer). It made 3dfx graphics look significantly better than nvidia/ati in 16bit depth. Earlier cards used 4x1 filter on the output, Banshee and later models gained 2x2 filter providing "22 bit like quality" as 3dfx called it.

      -Back in ~1994 some HP unix workstations used dithering to produce 'near 23bit color' out of 8bit framebuffer https://en.wikipedia.org/wiki/HP_Color_recovery

      -All crappy (TN) LCD panels (staple of garbage bin supermarket 1366x768 laptop, and older 'gaming' fullhd ones) use FRC which is a form of temporal dithering https://en.wikipedia.org/wiki/Frame_rate_control

      One legitimate use of dithering was in the days of CGA/EGA/other fixed palette hardware. You can relive it here 'Joel Yliluoma's arbitrary-palette positional dithering algorithm': http://bisqwit.iki.fi/story/howto/dither/jy/

    • molticrystalOct 2022

      > with no commentary or explanation.

      Enable subtitles/closed captioning to see additional commentary provided by him about what is happening.

      >the video is someone speed-typing the source code

      They are not actually typing it at all, from the faq https://bisqwit.iki.fi/jutut/kuvat/programming_examples/nesemu1/FAQ.txt

      Q) Is the video sped up? Or, is that your real typing speed?
      A) No, it's not sped up. But the input is pre-choreographed. The computer
      implements the choreography, as well as designs a part of it.
      It is a TAS, except I'm not speedrunning; I'm just aiming for
      15 minutes and to utilize it in the most entertaining manner.
      My typing speed is not the focus of that video; it is not even
      being presented except in a small part of the 2/2 video.
      The focus is in the source code.

      He actually wrote his own editor that he uses in the video and I believe that assists with the choreography.

    • arkitaipJul 2021

      ≥ So it is no surprise that Muslims will attempt to take possession of, or destroy, everything that belongs to the Jews. The battle for the ownership of Jerusalem is not a religious one. It is not based on anything holy, anything to do with Allah. These are only excuses. It is simply a matter of claiming superiority over another nation: What Islam has been from day zero. “Allahu Akbar”, “Allah is Greater”. It is a war of superiority over another. Truth has nothing to do with it.

      Don't you love it when people self-expose themselves of being hateful creeps (there also this crap [0]). Nice one dude, now the entire world - including future employers - can see you for who you really are.

      [0] https://bisqwit.iki.fi/story/apologetics/islamicdeception/

    • carrolldunhamDec 2021

      Wow, sorry to be blunt but 1) it looks AWFUL. I didn't expect it to robustly-successfully redraw sources but this is just a dismal implementation of depth-reduction. 2) Its offensive, insulting, to say that this converts into 'pixel art'. 3) Not only that but it is trivial. I'm sure almost anyone reading will have done something at this level for interest in two or three lines and then abandoned it seeing how bad it looks. As a pallet cleanser (ha) here's an article about actually good low-color automated processing https://bisqwit.iki.fi/story/howto/dither/jy/

    • redline6561Jul 2013

      I've been stalled out on that for a month or two. The PPU has been quite tricky. I'll probably take inspiration from [nesemu1](http://bisqwit.iki.fi/jutut/kuvat/programming_examples/nesemu1/) for the next rewrite.

      Related (with screenshot!): http://blog.redlinernotes.com/posts/So-Close-and-Yet-So-Far.html

      If I can wind up with a NES emulator that is "fast enough" and 2500 lines of code instead of 75,000 (Fceux) or 150,000 (Nestopia) then I'll be happy.

    Related

    fasterthanli.mefasterthanli.me236 people

    A half-hour to learn Rust

    fasterthanli.me
    Personal · last shared 2026
    David Givencowlark.com94 people

    Live coding a vi for CP/M from scratch

    David Given
    Personal · last shared 2026
    Evan Ovadiaverdagon.dev60 people

    Borrow Checking, RC, GC, and the Eleven () Other Memory Safety Approaches

    Evan Ovadia
    Personal · last shared 2026
    Coding Horrorblog.codinghorror.com2.1k people

    Farewell Stack Exchange

    Coding Horror
    Personal · last shared 2026
    Esoteric Codesesoteric.codes61 people

    The Princeton INTERCAL Compiler's source code

    Esoteric Codes
    Publication · last shared 2026
    Not a Monad Tutorialnotamonadtutorial.com40 people

    Weld: Accelerating numpy, scikit and pandas as much as 100x with Rust and LLVM

    Not a Monad Tutorial
    Publication · last shared 2023
    Futhark Blogfuthark-lang.org87 people

    Designing a Programming Language for the Desert

    Futhark Blog
    Company · last shared 2026
    Imran Nazarimrannazar.com41 people

    De-Googling TOTP Authenticator Codes

    Imran Nazar
    Personal · last shared 2026