Oops! I forgot to interpret exactly one very important opcode: FX29, which is used to draw the font:
FX29: Set
Ito the memory address of the sprite data corresponding to the hexadecimal digit stored in registerVX
or in pseudocode: I = sprite_addr[Vx].