branlwyd / bdcpu16

DCPU-16 simulator based on version 1.7 of the DCPU-16 specification. See http://dcpu.com/.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hardware: separate monitor from keyboard/mouse devices

branlwyd opened this issue · comments

  • Refactor DebuggerFrame, InstructionDecoder, Operand value formatting to use a new ValueFormatter interface rather than using parameters to specify hex or dec. This would add flexibility if we wanted to add different numeric formats later, or if we add another debugger UI. 99dc358
  • The *Operand classes in cc.bran.bdcpu16.codegen are only ever intended to be used by Operand. Move these classes to be private internal classes to Operand. 9470eca
  • Refactor int Operand.wordsUsed() into boolean usesWord(). Every operand uses 0 or 1 words, so this is still sufficiently expressive; and many places in code make the assumption that every operand will consume 0 or 1 words, so making this change will cause the interface to match the existing assumptions. 9470eca
  • Consider factoring the Keboard/Mouse device pieces apart from the Terminal (UI) piece, and allowing Keyboard/Mouse devices to be arbitrarily attached/detached from Terminals.

9470eca handles the Operand refactorings.

99dc358 handles the value formatting refactor.

Renaming this since there is only one refactor left, and it's pretty big.