Canola  0.8.D001
Enumerations | Functions
lib/opcode.h File Reference
#include <lib/config.h>
#include <string>

Go to the source code of this file.

Enumerations

enum  opcode_t {
  opcode_zero, opcode_plus_equals, opcode_minus_equals, opcode_mul,
  opcode_div, opcode_sqrt, opcode_ent = 0x11, opcode_sj,
  opcode_ej, opcode_mj = 0x15, opcode_uj, opcode_fj,
  opcode_suj, opcode_sfj, opcode_srj, opcode_m1 = 0x21,
  opcode_m2, opcode_m3, opcode_m4, opcode_m5,
  opcode_m6, opcode_m7, opcode_m8, opcode_m9,
  opcode_m10, opcode_m11, opcode_m12, opcode_m13,
  opcode_m14, opcode_mm1 = 0x31, opcode_mm2, opcode_sm3,
  opcode_sm4, opcode_sm5, opcode_sm6, opcode_sm7,
  opcode_sm8, opcode_sm9, opcode_sm10, opcode_sm11,
  opcode_sm12, opcode_sm13, opcode_sm14, opcode_rm1 = 0x41,
  opcode_rm2, opcode_rm3, opcode_rm4, opcode_rm5,
  opcode_rm6, opcode_rm7, opcode_rm8, opcode_rm9,
  opcode_rm10, opcode_rm11, opcode_rm12, opcode_rm13,
  opcode_rm14, opcode_clear_indicator = 0x50, opcode_cm1, opcode_cm2,
  opcode_cm3, opcode_cm4, opcode_cm5, opcode_cm6,
  opcode_cm7, opcode_cm8, opcode_cm9, opcode_cm10,
  opcode_cm11, opcode_cm12, opcode_cm13, opcode_cm14,
  opcode_dot = 0x60, opcode_rv, opcode_right, opcode_chg_sign,
  opcode_round_down = 0x65, opcode_round_off, opcode_round_up, opcode_print,
  opcode_fd, opcode_n0 = 0x70, opcode_n1, opcode_n2,
  opcode_n3, opcode_n4, opcode_n5, opcode_n6,
  opcode_n7, opcode_n8, opcode_n9, opcode_n10,
  opcode_n11, opcode_n12, opcode_n13, opcode_n14,
  opcode_extended_c = 512, opcode_extended_start, opcode_extended_m3_tilde, opcode_extended_sm3_tilde,
  opcode_extended_rm3_tilde, opcode_extended_cm3_tilde, opcode_extended_off, opcode_extended_program_print,
  opcode_extended_display_print, opcode_extended_paper_feed, opcode_extended_rounding_switch_up, opcode_extended_rounding_switch_off,
  opcode_extended_rounding_switch_down, opcode_extended_decimal_point_selector_0, opcode_extended_decimal_point_selector_1, opcode_extended_decimal_point_selector_2,
  opcode_extended_decimal_point_selector_3, opcode_extended_decimal_point_selector_4, opcode_extended_decimal_point_selector_5, opcode_extended_decimal_point_selector_6,
  opcode_extended_decimal_point_selector_7, opcode_extended_decimal_point_selector_8, opcode_extended_decimal_point_selector_9, opcode_extended_decimal_point_selector_10,
  opcode_extended_decimal_point_selector_11, opcode_extended_decimal_point_selector_12, opcode_extended_decimal_point_selector_float, opcode_extended_goto_000,
  opcode_extended_goto_001, opcode_extended_goto_002, opcode_extended_goto_003, opcode_extended_goto_004,
  opcode_extended_goto_005, opcode_extended_goto_006, opcode_extended_goto_007, opcode_extended_goto_008,
  opcode_extended_goto_009, opcode_extended_goto_010, opcode_extended_goto_011, opcode_extended_goto_012,
  opcode_extended_goto_013, opcode_extended_goto_014, opcode_extended_goto_015, opcode_extended_goto_100,
  opcode_extended_goto_101, opcode_extended_goto_102, opcode_extended_goto_103, opcode_extended_goto_104,
  opcode_extended_goto_105, opcode_extended_goto_106, opcode_extended_goto_107, opcode_extended_goto_108,
  opcode_extended_goto_109, opcode_extended_goto_110, opcode_extended_goto_111, opcode_extended_goto_112,
  opcode_extended_goto_113, opcode_extended_goto_114, opcode_extended_goto_115, opcode_extended_goto_200,
  opcode_extended_goto_201, opcode_extended_goto_202, opcode_extended_goto_203, opcode_extended_goto_204,
  opcode_extended_goto_205, opcode_extended_goto_206, opcode_extended_goto_207, opcode_extended_goto_208,
  opcode_extended_goto_209, opcode_extended_goto_210, opcode_extended_goto_211, opcode_extended_goto_212,
  opcode_extended_goto_213, opcode_extended_goto_214, opcode_extended_goto_215, opcode_extended_goto_300,
  opcode_extended_goto_301, opcode_extended_goto_302, opcode_extended_goto_303, opcode_extended_goto_304,
  opcode_extended_goto_305, opcode_extended_goto_306, opcode_extended_goto_307, opcode_extended_goto_308,
  opcode_extended_goto_309, opcode_extended_goto_310, opcode_extended_goto_311, opcode_extended_goto_312,
  opcode_extended_goto_313, opcode_extended_goto_314, opcode_extended_goto_315, opcode_extended_goto_400,
  opcode_extended_goto_401, opcode_extended_goto_402, opcode_extended_goto_403, opcode_extended_goto_404,
  opcode_extended_goto_405, opcode_extended_goto_406, opcode_extended_goto_407, opcode_extended_goto_408,
  opcode_extended_goto_409, opcode_extended_goto_410, opcode_extended_goto_411, opcode_extended_goto_412,
  opcode_extended_goto_413, opcode_extended_goto_414, opcode_extended_goto_415, opcode_extended_goto_500,
  opcode_extended_goto_501, opcode_extended_goto_502, opcode_extended_goto_503, opcode_extended_goto_504,
  opcode_extended_goto_505, opcode_extended_goto_506, opcode_extended_goto_507, opcode_extended_goto_508,
  opcode_extended_goto_509, opcode_extended_goto_510, opcode_extended_goto_511, opcode_extended_goto_512,
  opcode_extended_goto_513, opcode_extended_goto_514, opcode_extended_goto_515, opcode_extended_goto_600,
  opcode_extended_goto_601, opcode_extended_goto_602, opcode_extended_goto_603, opcode_extended_goto_604,
  opcode_extended_goto_605, opcode_extended_goto_606, opcode_extended_goto_607, opcode_extended_goto_608,
  opcode_extended_goto_609, opcode_extended_goto_610, opcode_extended_goto_611, opcode_extended_goto_612,
  opcode_extended_goto_613, opcode_extended_goto_614, opcode_extended_goto_615, opcode_extended_goto_700,
  opcode_extended_goto_701, opcode_extended_goto_702, opcode_extended_goto_703, opcode_extended_goto_704,
  opcode_extended_goto_705, opcode_extended_goto_706, opcode_extended_goto_707, opcode_extended_goto_708,
  opcode_extended_goto_709, opcode_extended_goto_710, opcode_extended_goto_711, opcode_extended_goto_712,
  opcode_extended_goto_713, opcode_extended_goto_714, opcode_extended_goto_715
}

Functions

std::string opcode_name (opcode_t n)
std::string opcode_uname (opcode_t n)
std::string opcode_raw_name (opcode_t n)
bool opcode_valid (int n)
bool opcode_valid_label (int n)
bool opcode_red (opcode_t op)

Enumeration Type Documentation

enum opcode_t
Enumerator:
opcode_zero 

This isn't a legal opcode for users to use. However, the instruction execution code needs ot be able to dispatch this opcode in some cases.

opcode_plus_equals 

"[+=] Plus Equal Key (also +key for addition)

"Depress to obtain results of addition, division, multiplication, sum of products and quotients. While the [AM1] key is locked, the result of division and multiplication is automatically added to Memory 1."

opcode_minus_equals 

"[-=] Minus Equal Key (also -key tor subtraction)

"Depress to obtain results of subtraction, difference of products and quotients. Also depress it when entering negative numbers. When the [AM1] key is locked, the result of division and multiplication is automatically subtracted from Memory 1."

opcode_mul 

"[x] Multiplication Key

"Depress in a multiplication after a muslItiplicand is entered."

opcode_div 

"[/] Division Key

"Depress in a division after a dividend is entered."

opcode_sqrt 

"[sqrt] Square Root Key

"Used for finding square roots. When this key is depressed the indicated value is square rooted. The result of the square root operation is indicated by a positive value regardless of positive or negative value. It is not necessary to depress the [+=] key after this key has been depressed."

opcode_ent 

"[ENT] Entry Key

"This program key is used to store a temporary stop program instruction when programming in manual LRN. During execution of program at this instruction the program stops and the ENTRY lamp lights.

"It is used for the following: 1) Entry instruction to put the calculator in stand-by state for entry. 2) Temporary stop instruction for reading calculation results."

If the user presses SJ instead of START, execution will resume from the first program step (1 or 121, depending on the bank selctor switch).

opcode_sj 

"[SJ] Sense Jump Key

"This program key is used for both manual program storage [LRN] and executing a program [OPE].

1) When storing a program: If this key is manually depressed, a sense jump instruction SJ is stored in the program, 2) When executing a program: If this key is manually depressed at the SJ instruction in the program, the program will jump to the specified program step. If the [START] key is depressed the program will proceed to the following step. The ENTRY lamp lights at this instruction."

opcode_ej 

"[EJ] Entry Jump Key

"Like MJ and UJ instructions, this key is used for manual program storage.

"When this key is depressed with the Program Mode Switch in LRN position, an entry jump instruction EJ is stored in the program.

"During execution of a program at this instruction, the program stops to await entry of data and the ENTRY lamp lights. When an entry is made and the [START] key is depressed, a jump is accomplished to the specified program step; when the [START] key is depressed without entry, the program proceeds without jumping."

opcode_mj 

"[MJ] Minus Jump Key

"Used for manual storing of programs. When this key is depressed, a minus jump instruction MJ is stored in the program.

"Minus jump instruction automatically judges the calculation results at the step immediately before this instructon is programmed; if the value is zero or positive it proceeds as it is, and if it is negative, it jumps to the specified program step."

opcode_uj 

"[UJ] Unconditional Jump Key

"This key is used to store a manual program and to execute programmed calculation.

1) Storing program: With the program mode switch set to LRN, depressing this key during manual operation stores the unconditional jump (UJ) instruction in the program.

2) Executing programmed calculation: With the program mode switch set to OPE, pushing UJ n (entry keys [0] to [9]) causes a jump to the jump destination specified in the FJ n step instruction. This key isused for program subdivision and in programs involving a relatively large number of decisions. Refer to information on decision functions for details."

opcode_fj 

"[FJ] Flag Jump Key

"This key is used in manual storing of programs in combination with [SJ], [EJ], [MJ], and [UJ] keys.

"If this key is depressed with Program Mode Switch set in LRN position, a flag for jump instruction is given, and a jump destination specifying instruction FJ is stored in the program. Each FJ instruction and the corresponding SJ, EJ, MJ or UJ instruction are accompanied by an identical flag code."

Note: actually, the flag value can be almost anything. Digits are merely very convenient, and not as confusing as other alternatives.

opcode_suj 

Subroutine jump, aka "gosub", "jsr", etc.

opcode_sfj 

Subroutine flag jump.

opcode_srj 

Subroutine return jump.

opcode_m1 

"[M1] Memory 1 Key

"Used to add displayed data to Memory 1."

opcode_m2 

"[M2] Memory 2 Key

"Used to add displayed data to Memory 2."

opcode_m3 
opcode_m4 
opcode_m5 
opcode_m6 
opcode_m7 
opcode_m8 
opcode_m9 
opcode_m10 
opcode_m11 
opcode_m12 
opcode_m13 
opcode_m14 
opcode_mm1 

"[MM1] Minus Memory 1 Key

"Used to subtract displayed data from Memory 1."

opcode_mm2 

"[MM2] Minus Memory 2 Key

"Used to subtract displayed data from Memory 2."

opcode_sm3 
opcode_sm4 
opcode_sm5 
opcode_sm6 
opcode_sm7 
opcode_sm8 
opcode_sm9 
opcode_sm10 
opcode_sm11 
opcode_sm12 
opcode_sm13 
opcode_sm14 
opcode_rm1 

"[RM1] Recall Memory 1 Key

"Used for recalling the contents of Memory 1 to the indicator."

opcode_rm2 

"[RM2] Recall Memory 2 Key

"Used for recalling the contents of Memory 2 to the indicator."

opcode_rm3 
opcode_rm4 
opcode_rm5 
opcode_rm6 
opcode_rm7 
opcode_rm8 
opcode_rm9 
opcode_rm10 
opcode_rm11 
opcode_rm12 
opcode_rm13 
opcode_rm14 
opcode_clear_indicator 

"[CL] Clear Indicator Key

"Clears the indicated figures. Used for correcting all entered digits."

opcode_cm1 

"[CM1] Clear Memory 1 Key

"Used to clear the contents of Memory 1."

opcode_cm2 

"[CM2] Clear Memory 2 Key

"Used to clear the contents of Memory 2."

opcode_cm3 
opcode_cm4 
opcode_cm5 
opcode_cm6 
opcode_cm7 
opcode_cm8 
opcode_cm9 
opcode_cm10 
opcode_cm11 
opcode_cm12 
opcode_cm13 
opcode_cm14 
opcode_dot 

[.] Decimal Point Key

"Complete automatic decimal point system. Depress the decimal point key during entry at the decimal point position in the value. When entering decimal digits only, depress the [.] key at the beginning. It is not necessary to depress the [0] key first."

opcode_rv 

"[RV] Reverse Key

"This key is used to interchange the multiplicand and multiplier in multiplications and the dividend and divisor in divisions. This key can also be used for checking and recalling a multiplicand, a divisor, an addend, or a subtrahend in multipIication, division, addition or subtraction."

"Note: It should be noted that the operation such as [0] [x] n [+=] [RV] recalls n instead of zero. Care should be taken not to program RV instruction, just after [+=] or [-=] instruction, to recall a of a x b where there is any possibility of becoming a zero."

opcode_right 

"[->] Shift Key

"This key is provided to shift the indicated value one digit in the arrow indicated direction, and is mainly used when partially correcting accidentalIy entered digits. For example, if 2 3 4 is entered accidentally as 2 3 5, depress the [->] key once to change the indication to 2 3 then enter 4 to indicate 2 3 4. Similar action will also reduce a digit in the result of manual calculation."

opcode_chg_sign 

"[CHG SIGN] Sign Change Key

"Used to convert positive and negaitve signs of the indicated value. Provided that this key is not applicable when the contents of indication are zero. The relationship of sign change is as follows.

Contents of Key Contents of indication operation indication ----------- --------- ----------- a -> [CS] -> -a -a -> [CS] -> a 0 -> [CS] -> 0"

opcode_round_down 

"Decimal pooint selector Dial

"This dial is used to specify the position of the decimal point in the calculation result. 12 positions may be preselected, i.e. 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12 and F. If F position is preselected, the calculation result becomes completely floating, where the position of the decimal point is not specified in the operation result.

"The ROUND instructions take the place of the round-off switch and decimal point selector dial during programmed operation. Refer to information on the ROUND instructions for details."

opcode_round_off 
opcode_round_up 
opcode_print 
opcode_fd 
opcode_n0 

[Numeric] "Entry is accomplished as random keys are depressed one after another. For example, if numeric keys 2 3 4 are depressed in sequence, the 2 3 4 entered. If two or more numeric keys are depressed at the same time accidentally, the electronic double entry preventive mechanism is actuated, lighting the Overflow Lamp and preventing next entry. The [->] key corrects this condition."

opcode_n1 
opcode_n2 
opcode_n3 
opcode_n4 
opcode_n5 
opcode_n6 
opcode_n7 
opcode_n8 
opcode_n9 
opcode_n10 
opcode_n11 
opcode_n12 
opcode_n13 
opcode_n14 
opcode_extended_c 

"[C] Clear Key

"Used to clear all the calculating registers. Provided, however, that the memory is not cleared. When the program is in LEARN MODE (Program Mode Switch in LRN) the contents of a program are cleared in accordance with the instruction of the Program Selector Switch.

"When the program is in OPERATION MODE (Program Mode Switch is set in OPE), the program is returned to zero step.

"When the program is in CHECK MODE (Program Mode PRO CHE) the program is returned to either 1st or 121st step according to the Program Selector Switch.

"When the program is in OPERATION CHECK mode (program mode switch is at OPE CHE) the program is returned to zero step."

opcode_extended_start 

"[START] Start Key

"This key is used for execution of program calculation and to check the contents of a program.

1) Execution of program calculation: If this key is depressed with the Program Mode Switch set in OPE position, the program is advanced to the next ENT, SJ or EJ instruction in the program.

2) Program Checking: If this key is depressed with the Program mode switch set in PRO CHE position the contents of the program can be checked. The program is advanced one step each time the [START] key is depressed, and simultaneously the immediate step number and program instruction code are indicated together.

3) Checking program calculation With the program mode witch set to OPE CHE, depressing this key checks the program calculation. Each operation of this key advances the program one step, followed by arithmetic operation and display of the result.

opcode_extended_m3_tilde 

"[M3~] Memory 3-9 Key

"Used to add the contents of the indicator to the contents of 3-9 memories. This key is used in combination with the 3-9 numeric keys. For example, to add 2 to Memory 5, operate keys [2], [M3~] and [5] in this sequence.

"Minus Memories 3-9 keys are not provided but, the [CHG SIGN] key is used to subtract the contents of the indicator from the contents of No. 3-9 memories. For example, to_subtract 2 from Memory 5, operate keys [2], [CHG SIGN], [M3~] and [5] in this sequence. Thus -2 is added to the contents of Memory 5; simply, 2 has been subtracted from Memory 5.

"Memories 10 through 14 are accessible only by program card. This also applies to the [SM3~], [RM3~] and [CM3~] keys."

opcode_extended_sm3_tilde 

"[SM3~] Storage Memory 3-9 key

"Similar to the [M3~] key, this key is used to read into No 3 through No 9 memories, but functions are different. That is, if the indicated value is stored in a specific memory by this key, the former contents stored in the subject memory are automatically cleared and only the new value indicated is to be stored.

"For example, let us assume that 6 is to be stored in Memory 5. If keys [2], [SM3~] and [5] are operated in sequence, the contents of Memory 5 is changed to 2 from 6."

opcode_extended_rm3_tilde 

"[RM3~] Recall Memory 3-9 Key

"Used to recall the contents of No 3 to No 9 memories to the indicator. Like [M3~] and similar, this key is to be used with the 3-9 numeric keys.

"For example, to recall the contents of Memory 5, operate [RM3~] and [5] in this sequence."

opcode_extended_cm3_tilde 

"[CM3~] Clear Memory 3-9 Key

"Used to clear the contents in No 3 to No 9 memories. Like [M3~], [SM3~] and [RM3~] keys, this key is used in combination with numeric keys 3-9.

"For example, keys [SM3~], and [5] are operated in this sequence to clear contents of Memory 5."

opcode_extended_off 
opcode_extended_program_print 
opcode_extended_display_print 
opcode_extended_paper_feed 
opcode_extended_rounding_switch_up 
opcode_extended_rounding_switch_off 
opcode_extended_rounding_switch_down 
opcode_extended_decimal_point_selector_0 
opcode_extended_decimal_point_selector_1 
opcode_extended_decimal_point_selector_2 
opcode_extended_decimal_point_selector_3 
opcode_extended_decimal_point_selector_4 
opcode_extended_decimal_point_selector_5 
opcode_extended_decimal_point_selector_6 
opcode_extended_decimal_point_selector_7 
opcode_extended_decimal_point_selector_8 
opcode_extended_decimal_point_selector_9 
opcode_extended_decimal_point_selector_10 
opcode_extended_decimal_point_selector_11 
opcode_extended_decimal_point_selector_12 
opcode_extended_decimal_point_selector_float 
opcode_extended_goto_000 

These opcodes deal with "[UJ] [any]" in OPE mode. The next 128 values are all used here, as the destination flag jump.

opcode_extended_goto_001 
opcode_extended_goto_002 
opcode_extended_goto_003 
opcode_extended_goto_004 
opcode_extended_goto_005 
opcode_extended_goto_006 
opcode_extended_goto_007 
opcode_extended_goto_008 
opcode_extended_goto_009 
opcode_extended_goto_010 
opcode_extended_goto_011 
opcode_extended_goto_012 
opcode_extended_goto_013 
opcode_extended_goto_014 
opcode_extended_goto_015 
opcode_extended_goto_100 
opcode_extended_goto_101 
opcode_extended_goto_102 
opcode_extended_goto_103 
opcode_extended_goto_104 
opcode_extended_goto_105 
opcode_extended_goto_106 
opcode_extended_goto_107 
opcode_extended_goto_108 
opcode_extended_goto_109 
opcode_extended_goto_110 
opcode_extended_goto_111 
opcode_extended_goto_112 
opcode_extended_goto_113 
opcode_extended_goto_114 
opcode_extended_goto_115 
opcode_extended_goto_200 
opcode_extended_goto_201 
opcode_extended_goto_202 
opcode_extended_goto_203 
opcode_extended_goto_204 
opcode_extended_goto_205 
opcode_extended_goto_206 
opcode_extended_goto_207 
opcode_extended_goto_208 
opcode_extended_goto_209 
opcode_extended_goto_210 
opcode_extended_goto_211 
opcode_extended_goto_212 
opcode_extended_goto_213 
opcode_extended_goto_214 
opcode_extended_goto_215 
opcode_extended_goto_300 
opcode_extended_goto_301 
opcode_extended_goto_302 
opcode_extended_goto_303 
opcode_extended_goto_304 
opcode_extended_goto_305 
opcode_extended_goto_306 
opcode_extended_goto_307 
opcode_extended_goto_308 
opcode_extended_goto_309 
opcode_extended_goto_310 
opcode_extended_goto_311 
opcode_extended_goto_312 
opcode_extended_goto_313 
opcode_extended_goto_314 
opcode_extended_goto_315 
opcode_extended_goto_400 
opcode_extended_goto_401 
opcode_extended_goto_402 
opcode_extended_goto_403 
opcode_extended_goto_404 
opcode_extended_goto_405 
opcode_extended_goto_406 
opcode_extended_goto_407 
opcode_extended_goto_408 
opcode_extended_goto_409 
opcode_extended_goto_410 
opcode_extended_goto_411 
opcode_extended_goto_412 
opcode_extended_goto_413 
opcode_extended_goto_414 
opcode_extended_goto_415 
opcode_extended_goto_500 
opcode_extended_goto_501 
opcode_extended_goto_502 
opcode_extended_goto_503 
opcode_extended_goto_504 
opcode_extended_goto_505 
opcode_extended_goto_506 
opcode_extended_goto_507 
opcode_extended_goto_508 
opcode_extended_goto_509 
opcode_extended_goto_510 
opcode_extended_goto_511 
opcode_extended_goto_512 
opcode_extended_goto_513 
opcode_extended_goto_514 
opcode_extended_goto_515 
opcode_extended_goto_600 
opcode_extended_goto_601 
opcode_extended_goto_602 
opcode_extended_goto_603 
opcode_extended_goto_604 
opcode_extended_goto_605 
opcode_extended_goto_606 
opcode_extended_goto_607 
opcode_extended_goto_608 
opcode_extended_goto_609 
opcode_extended_goto_610 
opcode_extended_goto_611 
opcode_extended_goto_612 
opcode_extended_goto_613 
opcode_extended_goto_614 
opcode_extended_goto_615 
opcode_extended_goto_700 
opcode_extended_goto_701 
opcode_extended_goto_702 
opcode_extended_goto_703 
opcode_extended_goto_704 
opcode_extended_goto_705 
opcode_extended_goto_706 
opcode_extended_goto_707 
opcode_extended_goto_708 
opcode_extended_goto_709 
opcode_extended_goto_710 
opcode_extended_goto_711 
opcode_extended_goto_712 
opcode_extended_goto_713 
opcode_extended_goto_714 
opcode_extended_goto_715 

Definition at line 24 of file opcode.h.


Function Documentation

std::string opcode_name ( opcode_t  n)

The opcode_name function is used to translate an opcode number into a human readable equivalent.

Parameters:
nThe opcode number.

Definition at line 24 of file opcode.cc.

std::string opcode_raw_name ( opcode_t  n)

The opcode_raw_name function is used to translate an opcode number into a human readable equivalent, except in the raw almost-hex form use in the Instruction Manual.

Parameters:
nThe opcode number.

Definition at line 1046 of file opcode.cc.

bool opcode_red ( opcode_t  op)

The opcode_red function may be used to determine whether or not and opcode should be drawn in red.

Definition at line 1323 of file opcode.cc.

std::string opcode_uname ( opcode_t  n)

The opcode_uname function is used to translate an opcode number into a human readable equivalent, possibly using unicode for some of them.

Parameters:
nThe opcode number.

Definition at line 535 of file opcode.cc.

bool opcode_valid ( int  n)

The opcode_valid method may be used to test whether or not a given byte value would be a valid opcode. No assurace of syntactic validity is given.

Parameters:
nThe byte value to check.
Returns:
true if valid, false if not.

Definition at line 1055 of file opcode.cc.

bool opcode_valid_label ( int  n)

The opcode_valid_label method may be used to test whether or not a given byte value would be a valid jump label. See the Instruction Manual, p. 53.

Parameters:
nThe byte value to check.
Returns:
true if acceptable as a label, false if not.

Definition at line 1605 of file opcode.cc.