When I was disassembling roms for the Cinematronics vector arcade games I ran across a very interesting function to draw a 7 segment digit. The caller would set a starting position which would be at the middle left vertex, and a delta (dx, dy) with dy equal to the digit width and dx = 0. It would then either draw to or move to current position plus (dx,dy). Then it would swap dx and dy and optionally flip their signs. The sign flipping is done conditionally based on a bit mask (same for every digit) and the draw/move option depended on the digit to display. From that center point it would go up, right, down, left, down, right, up, right. IIRC that final right move could leave it at a decent location to start the next digit, but I think in practice that would leave too much space. An odd algorithm with very little state, which was important when you only have 256 12-bit words of memory.