Hacker Newsnew | past | comments | ask | show | jobs | submit | hcs's commentslogin

Pitch is the offset between the start of consecutive rows of pixels in the image, used to convert y coordinates into the start of any given row, so you access a pixel as buffer[y*pitch+x]. Often this is the image width, but can be greater depending on required alignment.

So at the end of each run increment the relevant pointer by (pitch - w) not pitch which I'm sure it's one of the bugs they saw all the time in this interview :)

If we're collecting anecdotes, it happened for me in more of my office jobs than not. Might have been relevant that these were smaller offices.

I liked it, still find good answers, and it was gratifying to provide answers when I could.

    enum Bool
    { 
        True, 
        False, 
        FileNotFound 
    };
https://thedailywtf.com/articles/What_Is_Truth_0x3f_

Some of my earliest programming exposure was a dBASE IV book my dad had for work, though it was some time before I put any of it into action. At that time I was reading manuals like fiction, only slowly realizing that I could actually use some of it with our computer.


> millenials got the birth of social media

..and a lot of us weren't thrilled about it.


It was still an extremely exciting period of time that everyone was enjoying at the time. Mostly because it was augmenting existing friendships rather than replacing them with algorithmic content.


It's a honeypot for pedants


> Or you do not consider MUL/DIV "arithmetic", or something.

Multiplier and divider are usually not considered part of the ALU, yes. Not uncommon for those to be shared between execution threads while there's an ALU for each.


Even on NES a lot of games use CHR-RAM so arbitrary bitmaps are at least possible, though only a small part of the screen is unique without some rarely used mapper hardware. Zelda and Metroid mostly just use this to compress the graphics in ROM, Qix is a simple example with line drawing, Elite is an extreme one.

I made a demo of the Mystify screensaver using the typical 8KB CHR-RAM. Even with a lot of compromises it has pretty large borders to avoid running out of unique tiles. https://youtube.com/watch?v=1_MymcLeew8


Elite is my go-to example for madness in a tile-based grapgics system. Watching the CHR-RAM in an emulator while Elite is running is mesmerizing.


Chris Crawford called this "process intensity", he noted it at least back to 1983 with Dragon's Lair, discussed in this 1987 article https://www.erasmatazz.com/library/the-journal-of-computer/j...


Funny because I rewrote a bad port of dragons lair for a custom console with a tiny engine and huge dataset relatively, each frame having one "if press X goto frame Y" instruction.


I phrased that badly, Dragon's Lair was the example of low process intensity.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: