ROSE-8

or, “How I put too much time into making an 8-bit ISA and accompanying virtual machine”

It all started with my colleague Cassie having fun designing a toy 8-bit ISA (“instruction set architecture”). I love encoding tables (I helped out a little with the one for Swift’s String struct representation), and I did assignments in college involving simplified CPUs. So I started thinking about what it would be like to write a program in Cassie’s ISA…and decided its four registers were too limited for me. How could I get up to 8 registers while still keeping most of the instructions in a single byte?

quasiquarantine

In Apple’s TN2206, “macOS Code Signing in Depth”, there’s a section about “Checking Gatekeeper Compliance”.

  • Package your program the way you ship it, such as in a disk image.

  • Download it from its website, or mail it to yourself, or send it to yourself using AirDrop or Message. This will quarantine the downloaded copy. This is necessary to trigger the Gatekeeper check as Gatekeeper only checks quarantined files the first time they’re opened.

  • Drag-install your app and launch it.

I figured jumping through a “download” or “send” step was overkill. Surely there’s a way to get the same effect programmatically, right?

> go east

I’ve had a connection with text adventures for a long time, coming back to the format year after year. For the most part I’m not a player of text adventures, but instead an enthusiast for implementations thereof. I’ve talked before about using this as a way to learn a new language and to learn about parsers, but I also just like making them, an effort that has shaded off from actual plausible implementations into mildly unusual attempts at the format. The latest of these is to just host the world in the filesystem.1

Older Posts

  1. 2018-04-29 Misleading Metrics and UX Tradeoffs
  2. 2018-04-03 "FIXME" Doesn't Always Mean "Fix Me"
  3. 2018-03-22 My Little (String) Optimization, Part 2
  4. 2018-03-15 My Little Optimization: The Compiler Is Magic
  5. 2018-02-26 Many-to-Many Protocols
  6. 2018-01-29 Color Palette #8
  7. 2017-09-07 The New Kingdom of Nouns
  8. 2017-09-05 Over-abstraction
  9. 2016-08-21 Macromancy, Part 2
  10. 2016-08-07 Macromancy
  11. 2016-06-19 Pronoun Buttons
  12. 2016-05-29 Webmailer's Update Bar
  13. 2016-05-23 So You Want to Be a (Compiler) Wizard
  14. 2015-12-29 Re: Contempt Culture
  15. 2015-11-18 Recommendations
  16. 2015-05-09 Nibblesort: Adventures in Optimization
  17. 2015-02-22 AlterConf SF/Oakland
  18. 2015-01-24 “Skip the FFI”
  19. 2012-12-08 How to Write a Checker in 24 Hours
  20. 2012-10-02 Git Tricks
  21. 2012-04-26 Keyboard Adventures
  22. 2011-08-10 "Little Big Details"
  23. 2011-07-29 Weak Linking
  24. 2011-07-25 Using Clang from SVN in Xcode
  25. 2011-07-22 rm vs. Time Machine
  26. 2011-07-14 Priorities
  27. 2011-06-27 git add
  28. 2011-06-20 Automatic Reference Counting
  29. 2011-06-16 Dealing with "Sandwich Code"
  30. 2011-06-05 gdba
  31. 2011-06-03 Chrome vs. Safari
  32. 2011-05-31 User-Side Troubleshooting
  33. 2011-05-30 Auspicious Continuation
  34. 2009-07-21 Scripting Bridge
  35. 2009-07-08 What Happened to Dockyard?
  36. 2009-06-26 Garbage Collectors and Stack Drawers
  37. 2009-06-21 Z shell
  38. 2009-05-22 “Several New Features”
  39. 2009-05-05 C++ Templates are Turing-Complete
  40. 2009-04-21 [Meme] How Many HTML Elements Can You Name in 5 Minutes?
  41. 2009-04-16 Safer Plugin Categories
  42. 2009-04-02 Hacking Safari 4...for Great Convenience
  43. 2009-03-27 Const Correctness
  44. 2009-03-19 Categories and +load
  45. 2009-03-15 Subversion Checksum Problems
  46. 2009-03-06 JavaScript Tetris
  47. 2008-09-04 Objective-J and Objective-C
  48. 2008-08-28 HTTPS and Name-based Virtual Hosting
  49. 2008-03-08 Alerts Without Apps (or nibs)
  50. 2008-01-14 NSNumber, CFNumber, and CFBoolean
  51. 2007-12-13 GenericToolbar and IB3
  52. 2007-10-27 Performance Optimization: Why We Can't Use valueForKeyPath:
  53. 2007-09-01 Short Xcode Tip: Plugins
  54. 2007-07-15 Port 25 Blocked?
  55. 2007-06-27 GenericToolbar Icon
  56. 2007-04-13 The Symbolism of Pretty URLS
  57. 2007-03-07 Flexible PHP
  58. 2007-01-12 Inauspicious Beginnings

Possibly Related Tags