Internet advertisement doesn't pay much anymore.

Become a patron
Pin Eight


Pin Eight is the personal web site of Damian Yerrick. You may be interested in one or more of his projects:

Concentration Room

Older projects: Luminesweeper

Site outage

Posted on December 5, 2021

As some of you may have read in various Discord servers, the company hosting Pin Eight went out of business in September of this year. Since then, the site has been operating with reduced functionality, serving wiki pages from a static snapshot. I have begun to restore MediaWiki today, and once it's ready, I'll replace the snapshot with the live wiki.

In other news, NESdev BBS is once again up and running. It had been unavailable for roughly five months.

Updating Multiboot Menu

Posted on March 19, 2020

Today I returned to a Game Boy Advance project that I had last touched almost 17 and a half years ago: Multiboot Menu. It takes several Game Boy Advance programs small enough to fit into RAM (256 KiB or smaller) and turns them into a ROM that runs from a flash cart. And now it builds correctly with a modern version of devkitARM.


Posted on April 18, 2019

I've opened a creator page on Patreon. To keep updates coming and get your name in the credits of one of my projects, become a patron today.

PHP upgraded

Posted on November 8, 2018

PHP on has been upgraded to version 7.2.

MediaWiki upgraded

Posted on August 19, 2018

MediaWiki is upgraded to version 1.30. One extension had to be disabled because it is no longer maintained and no longer compatible with recent MediaWiki. Upgrading to the current version is on hold until I investigate migrating my hosting from PHP 5 to PHP 7.

Still from a video of a man walking on a path

In other news: In 2018, web browsers started to block automatic playback of video that is not muted, requiring a user gesture to enable anything audio-related. But discussions about this policy on various forums uncovered a vocal minority who don't want any video to autoplay because video uses a lot of data, which cellular and satellite ISPs put under a monthly cap. Some of them don't realize how many ways there are to play video that use even more bandwidth than the <video> element, such as animated GIFs or sequences of JPEG or PNG images. Web browsers allow autoplaying muted video as a least bad way of discouraging ad networks and other websites from automatically falling back to less efficient methods.

So for people who claim to have blocked autoplaying video using a browser feature or add-on, I have created a video autoplay test suite with 14 tests to run against a video blocker.

Fast, good, cheap: choose two.

Posted on August 9, 2017

It started with a Tweet by @missingcloudltd showing an animation of a proposed user interface allowing selection of up to two items in a list, using the classic iron triangle of fast, good, and cheap as an example. Then @nannerb implemented the proposal in HTML and JavaScript as Cue comments from the peanut gallery that all three are possible if the user turns off JavaScript before visiting

Some took this as a subtle condemnation of script in the browser. This rekindled a perennial discussion about whether script in the browser ought to exist in the first place. A vocal minority of users in the comment sections of Slashdot, SoylentNews, and elsewhere, believe HTML documents ought to be static apart from form submission. (See, for example, the reaction on Slashdot and on SoylentNews to Google Chrome's adoption of WebAssembly.) To them, if an application needs to be more dynamic than HTML, CSS, and form submission can provide, then it ought to be native, written using a multi-platform toolkit such as Qt, and made available as source code under a free software license for download, inspection, compilation, and installation by PC owners.

So anyway, some replies claimed that the two-of-three UI isn't even possible without script in the browser. It's true that HTML lacks a selection input allowing greater than one but fewer than all options; radio buttons allow only one, and checkboxes and <select multiple>. But navigation or form submission allows the server to correct mutually inconsistent inputs and present a consistent view to the user.

So here's my reimplementation of FGC using only HTML and CSS. Even ignoring the JavaScript debate, it has one additional feature that @awhite requested: the user can link to a single state.


Posted on December 22, 2016

Don't like everybody seeing what web pages you're looking at? Try the HTTPS Everywhere extension by Electronic Frontier Foundation, available for Firefox and Chrome. It rewrites http: URLs on select websites to use https: instead. This means a snooper looking at your can see only what sites you're viewing, such as "some page on Stack Overflow" rather than "the question about == and === in JavaScript".

Pin Eight is not included in HTTPS Everywhere, but it does have a similar feature called HTTP Strict Transport Security. Once it's turned on in your modern web browser, the browser will rewrite all URLs to https:. Currently we're deploying it on an opt-in basis, so go ahead and turn on HSTS for a month.

OCSP problem

Posted on April 5, 2015

We are aware of a problem reaching Pin Eight with Firefox 37. StartSSL is having OCSP issues. Users of Google Chrome are unaffected.

UPDATE (18:10 UTC): StartSSL's OCSP server appears to be operational once more.

Follow me on Twitter

[A cartoon boy still half inside an egg, wearing a red cap and a blue vest]

Posted on February 13, 2015

I have a Twitter account now (username: @PinoBatch), but I still feel like I haven't hatched all the way.

A couple users on NESdev BBS found a few serious problems with my NES and Super NES project templates. So I addressed some of their concerns in version 5 of my NROM, SNROM, and LoROM templates. Highlights include:

  • Added overall map of source code to README
  • Background and player related code are in separate files
  • Indented forward branches in player movement code
  • Super NES register names are broken into functional groups have aliases based on names from Fullsnes
  • Improvements to Super NES init code and LoROM linker script
  • SNROM template also supports UNROM

Still reading? Check out older posts from 2014, 2013, 2012, 2011, 2010, 2009, 2008, 2007, 2006, 2005, 2004, 2003, and 2002.

I have written for other sites:

Source code
Mastodon | Twitter
Gab (very briefly)
All The Tropes | GbdevWiki | NESdev | RationalWiki
| Wikipedia
Reddit |Slashdot | SoylentNews


© 2000–2019 Damian Yerrick. Some rights reserved: except where otherwise indicated, this site is free content, licensed under your choice of Creative Commons Attribution-ShareAlike 2.5 or GNU Free Documentation License 1.2. Terms apply.