virtualSoC  0.6.2
baskett
virtualSoC

virtual Chip with own instruction set

Current using Mnemonic

  • NOP: No operating - NOP
  • HLT: Beendet das Programm - HLT
  • ADD: Add Number, Register, Pointer to AX - ADD #d5
  • CLR: Setze pointer oder register auf 0 - CLR AX
  • DIV: Div Number, Register, Pointer to AX - DIV #d5
  • JMP: Jump zu Adresse - JMP Test
  • MUL: Mul Number, Register, Pointer to AX - MUL #d5
  • PEEK: Lese aktullen Wert auf den Stack - PEEK
  • POP: Pop element vom Stack - POP
  • PUSH: Puscht element auf den Stack - PUSH
  • SUB: Sub Number, Register, Pointer to AX - SUB #d5
  • MOV: Setze Pointer oder Register Wert - MOV AX, #d5
  • OR: Oder Operator2 Operator3 to Operator1 - OR , #d5, #d5
  • XOR: Exclusiv Oder Operator2 Operator3 to Operator1 - XOR , #d5, #d5
  • AND: And Operator2 Operator3 to Operator1 AND , #d5, #d5
  • NOR: Nicht oder Operator2 Operator3 to Operator1 - NOR , #d5, #d5
  • NXOR: Nicht exclusiv oder Operator2 Operator3 to Operator1 - NXOR , #d5, #d5
  • NOT: NOT Operator2 to Operator1 NOT , #d5
  • NAND: Not And Operator2 Operator3 to Operator1 - NAND , #d5, #d5
  • CALL: Springe zum unter Programm und lege ip+9 in den stack
  • RET: Springe zurück aus dem Unterprogramm - RET
  • FBI: Initalisiert den Framebuffer - FBI
  • FBSET: Setzt ein Pixel an position x, y - FBSET #d5, #d5, #hff0000
  • ADR: Add Operator2 Operator3 to Operator1 ADR , #d5, #d5
  • SBR: Sub Operator2 Operator3 to Operator1 - SBR , #d5, #d5
  • DVR: Div Operator2 Operator3 to Operator1 DVR , #d5, #d5
  • MLR: Multiplikation Operator2 Operator3 to Operator1 MLR , #d5, #d5
  • JO: Jump wenn OverFlow Flag 1 ist - JO test
  • JC: Jump wenn Carry 1 ist - JC
  • JNC: Jump wenn Carry 0 ist JNC Test
  • JN0: Jump wenn OverFlow Flag 0 ist - JNO test
  • INC: Incremiert ein Pointer oder Register - INC
  • DEC: Decriment Pointer oder Register - DEC AX
  • STO: Setze pointer oder register auf 1 - STO AX
  • INV: Invetiere ein Pointer oder Register - Inv