GE-115 Emulator
An Emulator of the General Electrics GE-115 computer
Macros | Functions
msl-commands.c File Reference
#include "ge.h"
#include "log.h"
#include "bit.h"
#include "signals.h"
#include "alu_logic.h"
#include "alu_bin.h"
#include "alu_dec.h"
#include "alu_reg.h"
#include "alu_cc.h"

Go to the source code of this file.

Macros

#define CC   { ge_log(LOG_ERR, "implement command %s\n", __FUNCTION__); }
 

Functions

static void CO00 (struct ge *ge)
 
static void CO01 (struct ge *ge)
 
static void CO02 (struct ge *ge)
 
static void CO03 (struct ge *ge)
 
static void CO04 (struct ge *ge)
 
static void CI00 (struct ge *ge)
 
static void CI01 (struct ge *ge)
 
static void CI02 (struct ge *ge)
 
static void CI03 (struct ge *ge)
 
static void CI04 (struct ge *ge)
 
static void CI05 (struct ge *ge)
 
static void CI06 (struct ge *ge)
 
static void CI07 (struct ge *ge)
 
static void CI08 (struct ge *ge)
 
static void CI09 (struct ge *ge)
 
static void CO10 (struct ge *ge)
 
static void CO11 (struct ge *ge)
 
static void CO12 (struct ge *ge)
 
static void CO13 (struct ge *ge)
 
static void CO14 (struct ge *ge)
 
static void CO16 (struct ge *ge)
 
static void CO18 (struct ge *ge)
 
static void NO_UNDRIVEN (struct ge *ge)
 
static void CI10 (struct ge *ge)
 
static void CI11 (struct ge *ge)
 
static void CI12 (struct ge *ge)
 
static void CI15 (struct ge *ge)
 
static void CI16 (struct ge *ge)
 
static void CI17 (struct ge *ge)
 
static void CI19 (struct ge *ge)
 
static void CI20 (struct ge *ge)
 
static void CI21 (struct ge *ge)
 
static void CO30 (struct ge *ge)
 
static void CO31 (struct ge *ge)
 
static void CO35 (struct ge *ge)
 
static void CI32 (struct ge *ge)
 
static void CI33 (struct ge *ge)
 
static void CI34 (struct ge *ge)
 
static void CI38 (struct ge *ge)
 
static void CI39 (struct ge *ge)
 
static void CO40 (struct ge *ge)
 
static void CO41 (struct ge *ge)
 
static void CO48 (struct ge *ge)
 
static void CO49 (struct ge *ge)
 
static uint16_t eff_v1_l2 (struct ge *ge)
 
static uint16_t reg_addr_of (struct ge *ge)
 
static uint16_t cr_rd16 (struct ge *ge, uint16_t a)
 
static void cr_wr16 (struct ge *ge, uint16_t a, uint16_t v)
 
static uint16_t mem_rd16_op (struct ge *ge, uint16_t a)
 
static void mem_wr16_op (struct ge *ge, uint16_t a, uint16_t v)
 
static void CI00s (struct ge *ge)
 
static void EXEC_SS (struct ge *ge)
 
static void CE_chan1_status (struct ge *ge)
 
static void CI40 (struct ge *ge)
 
static void CI41 (struct ge *ge)
 
static void CI42 (struct ge *ge)
 
static void CI44 (struct ge *ge)
 
static void CI45 (struct ge *ge)
 
static void CI46 (struct ge *ge)
 
static void CI47 (struct ge *ge)
 
static void CI50 (struct ge *ge)
 
static void CI60 (struct ge *ge)
 
static void CI61 (struct ge *ge)
 
static void CI62 (struct ge *ge)
 
static void CI63 (struct ge *ge)
 
static void CI64 (struct ge *ge)
 
static void CI65 (struct ge *ge)
 
static void CI66 (struct ge *ge)
 
static void CI67 (struct ge *ge)
 
static void NI4_ZERO (struct ge *ge)
 
static void CI68 (struct ge *ge)
 
static void CI69 (struct ge *ge)
 
static void CI70 (struct ge *ge)
 
static void CI71 (struct ge *ge)
 
static void CI72 (struct ge *ge)
 
static void CI73 (struct ge *ge)
 
static void CI74 (struct ge *ge)
 
static void CI75 (struct ge *ge)
 
static void CI76 (struct ge *ge)
 
static void CI77 (struct ge *ge)
 
static void CI78 (struct ge *ge)
 
static void CI80 (struct ge *ge)
 
static void CI81 (struct ge *ge)
 
static void CI82 (struct ge *ge)
 
static void CI83 (struct ge *ge)
 
static void CI84 (struct ge *ge)
 
static void CI85 (struct ge *ge)
 
static void CI86 (struct ge *ge)
 
static void CI87 (struct ge *ge)
 
static void CI88 (struct ge *ge)
 
static void CI89 (struct ge *ge)
 
static void CO90 (struct ge *ge)
 
static void CO91 (struct ge *ge)
 
static void CO92 (struct ge *ge)
 
static void CO93 (struct ge *ge)
 
static void CO94 (struct ge *ge)
 
static void CO95 (struct ge *ge)
 
static void CO96 (struct ge *ge)
 
static void CO97 (struct ge *ge)
 
static void CE00 (struct ge *ge)
 
static void CE01 (struct ge *ge)
 
static void CE02 (struct ge *ge)
 
static void CE03 (struct ge *ge)
 
static void CE05 (struct ge *ge)
 
static void CE06 (struct ge *ge)
 
static void CE07 (struct ge *ge)
 
static void CE08 (struct ge *ge)
 
static void CE09 (struct ge *ge)
 
static void CE16 (struct ge *ge)
 
static void CE10 (struct ge *ge)
 
static void CE11 (struct ge *ge)
 
static void CE18 (struct ge *ge)
 
static void CE19 (struct ge *ge)
 
static void CU00 (struct ge *ge)
 
static void CU01 (struct ge *ge)
 
static void CU02 (struct ge *ge)
 
static void CU03 (struct ge *ge)
 
static void CU04 (struct ge *ge)
 
static void CU05 (struct ge *ge)
 
static void CU06 (struct ge *ge)
 
static void CU07 (struct ge *ge)
 
static void CU10 (struct ge *ge)
 
static void CU11 (struct ge *ge)
 
static void CU12 (struct ge *ge)
 
static void CU13 (struct ge *ge)
 
static void CU14 (struct ge *ge)
 
static void CU15 (struct ge *ge)
 
static void CU16 (struct ge *ge)
 
static void CU17 (struct ge *ge)
 
static void CU20 (struct ge *ge)
 
static void INT_ACK (struct ge *ge)
 

Macro Definition Documentation

◆ CC

#define CC   { ge_log(LOG_ERR, "implement command %s\n", __FUNCTION__); }

Definition at line 15 of file msl-commands.c.

Function Documentation

◆ CE00()

static void CE00 ( struct ge ge)
static

Definition at line 516 of file msl-commands.c.

◆ CE01()

static void CE01 ( struct ge ge)
static

Definition at line 522 of file msl-commands.c.

◆ CE02()

static void CE02 ( struct ge ge)
static

Definition at line 528 of file msl-commands.c.

◆ CE03()

static void CE03 ( struct ge ge)
static

Definition at line 559 of file msl-commands.c.

◆ CE05()

static void CE05 ( struct ge ge)
static

Definition at line 586 of file msl-commands.c.

◆ CE06()

static void CE06 ( struct ge ge)
static

Definition at line 590 of file msl-commands.c.

◆ CE07()

static void CE07 ( struct ge ge)
static

Definition at line 594 of file msl-commands.c.

◆ CE08()

static void CE08 ( struct ge ge)
static

Definition at line 610 of file msl-commands.c.

◆ CE09()

static void CE09 ( struct ge ge)
static

Definition at line 636 of file msl-commands.c.

◆ CE10()

static void CE10 ( struct ge ge)
static

Definition at line 661 of file msl-commands.c.

◆ CE11()

static void CE11 ( struct ge ge)
static

Definition at line 672 of file msl-commands.c.

◆ CE16()

static void CE16 ( struct ge ge)
static

Definition at line 657 of file msl-commands.c.

◆ CE18()

static void CE18 ( struct ge ge)
static

Definition at line 689 of file msl-commands.c.

◆ CE19()

static void CE19 ( struct ge ge)
static

Definition at line 724 of file msl-commands.c.

◆ CE_chan1_status()

static void CE_chan1_status ( struct ge ge)
static

Definition at line 340 of file msl-commands.c.

◆ CI00()

static void CI00 ( struct ge ge)
static

Definition at line 26 of file msl-commands.c.

◆ CI00s()

static void CI00s ( struct ge ge)
static

Definition at line 204 of file msl-commands.c.

◆ CI01()

static void CI01 ( struct ge ge)
static

Definition at line 27 of file msl-commands.c.

◆ CI02()

static void CI02 ( struct ge ge)
static

Definition at line 28 of file msl-commands.c.

◆ CI03()

static void CI03 ( struct ge ge)
static

Definition at line 29 of file msl-commands.c.

◆ CI04()

static void CI04 ( struct ge ge)
static

Definition at line 30 of file msl-commands.c.

◆ CI05()

static void CI05 ( struct ge ge)
static

Definition at line 31 of file msl-commands.c.

◆ CI06()

static void CI06 ( struct ge ge)
static

Definition at line 32 of file msl-commands.c.

◆ CI07()

static void CI07 ( struct ge ge)
static

Definition at line 33 of file msl-commands.c.

◆ CI08()

static void CI08 ( struct ge ge)
static

Definition at line 34 of file msl-commands.c.

◆ CI09()

static void CI09 ( struct ge ge)
static

Definition at line 35 of file msl-commands.c.

◆ CI10()

static void CI10 ( struct ge ge)
static

Definition at line 55 of file msl-commands.c.

◆ CI11()

static void CI11 ( struct ge ge)
static

Definition at line 56 of file msl-commands.c.

◆ CI12()

static void CI12 ( struct ge ge)
static

Definition at line 57 of file msl-commands.c.

◆ CI15()

static void CI15 ( struct ge ge)
static

Definition at line 58 of file msl-commands.c.

◆ CI16()

static void CI16 ( struct ge ge)
static

Definition at line 59 of file msl-commands.c.

◆ CI17()

static void CI17 ( struct ge ge)
static

Definition at line 60 of file msl-commands.c.

◆ CI19()

static void CI19 ( struct ge ge)
static

Definition at line 61 of file msl-commands.c.

◆ CI20()

static void CI20 ( struct ge ge)
static

Definition at line 62 of file msl-commands.c.

◆ CI21()

static void CI21 ( struct ge ge)
static

Definition at line 63 of file msl-commands.c.

◆ CI32()

static void CI32 ( struct ge ge)
static

Definition at line 73 of file msl-commands.c.

◆ CI33()

static void CI33 ( struct ge ge)
static

Definition at line 78 of file msl-commands.c.

◆ CI34()

static void CI34 ( struct ge ge)
static

Definition at line 83 of file msl-commands.c.

◆ CI38()

static void CI38 ( struct ge ge)
static

Definition at line 87 of file msl-commands.c.

◆ CI39()

static void CI39 ( struct ge ge)
static

Definition at line 102 of file msl-commands.c.

◆ CI40()

static void CI40 ( struct ge ge)
static

Definition at line 351 of file msl-commands.c.

◆ CI41()

static void CI41 ( struct ge ge)
static

Definition at line 352 of file msl-commands.c.

◆ CI42()

static void CI42 ( struct ge ge)
static

Definition at line 353 of file msl-commands.c.

◆ CI44()

static void CI44 ( struct ge ge)
static

Definition at line 354 of file msl-commands.c.

◆ CI45()

static void CI45 ( struct ge ge)
static

Definition at line 372 of file msl-commands.c.

◆ CI46()

static void CI46 ( struct ge ge)
static

Definition at line 373 of file msl-commands.c.

◆ CI47()

static void CI47 ( struct ge ge)
static

Definition at line 374 of file msl-commands.c.

◆ CI50()

static void CI50 ( struct ge ge)
static

Definition at line 378 of file msl-commands.c.

◆ CI60()

static void CI60 ( struct ge ge)
static

Definition at line 384 of file msl-commands.c.

◆ CI61()

static void CI61 ( struct ge ge)
static

Definition at line 385 of file msl-commands.c.

◆ CI62()

static void CI62 ( struct ge ge)
static

Definition at line 386 of file msl-commands.c.

◆ CI63()

static void CI63 ( struct ge ge)
static

Definition at line 387 of file msl-commands.c.

◆ CI64()

static void CI64 ( struct ge ge)
static

Definition at line 388 of file msl-commands.c.

◆ CI65()

static void CI65 ( struct ge ge)
static

Definition at line 389 of file msl-commands.c.

◆ CI66()

static void CI66 ( struct ge ge)
static

Definition at line 390 of file msl-commands.c.

◆ CI67()

static void CI67 ( struct ge ge)
static

Definition at line 391 of file msl-commands.c.

◆ CI68()

static void CI68 ( struct ge ge)
static

Definition at line 418 of file msl-commands.c.

◆ CI69()

static void CI69 ( struct ge ge)
static

Definition at line 446 of file msl-commands.c.

◆ CI70()

static void CI70 ( struct ge ge)
static

Definition at line 472 of file msl-commands.c.

◆ CI71()

static void CI71 ( struct ge ge)
static

Definition at line 473 of file msl-commands.c.

◆ CI72()

static void CI72 ( struct ge ge)
static

Definition at line 474 of file msl-commands.c.

◆ CI73()

static void CI73 ( struct ge ge)
static

Definition at line 475 of file msl-commands.c.

◆ CI74()

static void CI74 ( struct ge ge)
static

Definition at line 476 of file msl-commands.c.

◆ CI75()

static void CI75 ( struct ge ge)
static

Definition at line 477 of file msl-commands.c.

◆ CI76()

static void CI76 ( struct ge ge)
static

Definition at line 478 of file msl-commands.c.

◆ CI77()

static void CI77 ( struct ge ge)
static

Definition at line 479 of file msl-commands.c.

◆ CI78()

static void CI78 ( struct ge ge)
static

Definition at line 480 of file msl-commands.c.

◆ CI80()

static void CI80 ( struct ge ge)
static

Definition at line 481 of file msl-commands.c.

◆ CI81()

static void CI81 ( struct ge ge)
static

Definition at line 482 of file msl-commands.c.

◆ CI82()

static void CI82 ( struct ge ge)
static

Definition at line 483 of file msl-commands.c.

◆ CI83()

static void CI83 ( struct ge ge)
static

Definition at line 484 of file msl-commands.c.

◆ CI84()

static void CI84 ( struct ge ge)
static

Definition at line 485 of file msl-commands.c.

◆ CI85()

static void CI85 ( struct ge ge)
static

Definition at line 486 of file msl-commands.c.

◆ CI86()

static void CI86 ( struct ge ge)
static

Definition at line 487 of file msl-commands.c.

◆ CI87()

static void CI87 ( struct ge ge)
static

Definition at line 489 of file msl-commands.c.

◆ CI88()

static void CI88 ( struct ge ge)
static

Definition at line 494 of file msl-commands.c.

◆ CI89()

static void CI89 ( struct ge ge)
static

Definition at line 499 of file msl-commands.c.

◆ CO00()

static void CO00 ( struct ge ge)
static

Definition at line 20 of file msl-commands.c.

◆ CO01()

static void CO01 ( struct ge ge)
static

Definition at line 21 of file msl-commands.c.

◆ CO02()

static void CO02 ( struct ge ge)
static

Definition at line 22 of file msl-commands.c.

◆ CO03()

static void CO03 ( struct ge ge)
static

Definition at line 23 of file msl-commands.c.

◆ CO04()

static void CO04 ( struct ge ge)
static

Definition at line 24 of file msl-commands.c.

◆ CO10()

static void CO10 ( struct ge ge)
static

Definition at line 40 of file msl-commands.c.

◆ CO11()

static void CO11 ( struct ge ge)
static

Definition at line 41 of file msl-commands.c.

◆ CO12()

static void CO12 ( struct ge ge)
static

Definition at line 42 of file msl-commands.c.

◆ CO13()

static void CO13 ( struct ge ge)
static

Definition at line 43 of file msl-commands.c.

◆ CO14()

static void CO14 ( struct ge ge)
static

Definition at line 44 of file msl-commands.c.

◆ CO16()

static void CO16 ( struct ge ge)
static

Definition at line 45 of file msl-commands.c.

◆ CO18()

static void CO18 ( struct ge ge)
static

Definition at line 50 of file msl-commands.c.

◆ CO30()

static void CO30 ( struct ge ge)
static

Definition at line 69 of file msl-commands.c.

◆ CO31()

static void CO31 ( struct ge ge)
static

Definition at line 70 of file msl-commands.c.

◆ CO35()

static void CO35 ( struct ge ge)
static

Definition at line 71 of file msl-commands.c.

◆ CO40()

static void CO40 ( struct ge ge)
static

Definition at line 119 of file msl-commands.c.

◆ CO41()

static void CO41 ( struct ge ge)
static

Definition at line 120 of file msl-commands.c.

◆ CO48()

static void CO48 ( struct ge ge)
static

Definition at line 121 of file msl-commands.c.

◆ CO49()

static void CO49 ( struct ge ge)
static

Definition at line 128 of file msl-commands.c.

◆ CO90()

static void CO90 ( struct ge ge)
static

Definition at line 504 of file msl-commands.c.

◆ CO91()

static void CO91 ( struct ge ge)
static

Definition at line 505 of file msl-commands.c.

◆ CO92()

static void CO92 ( struct ge ge)
static

Definition at line 506 of file msl-commands.c.

◆ CO93()

static void CO93 ( struct ge ge)
static

Definition at line 507 of file msl-commands.c.

◆ CO94()

static void CO94 ( struct ge ge)
static

Definition at line 508 of file msl-commands.c.

◆ CO95()

static void CO95 ( struct ge ge)
static

Definition at line 509 of file msl-commands.c.

◆ CO96()

static void CO96 ( struct ge ge)
static

Definition at line 510 of file msl-commands.c.

◆ CO97()

static void CO97 ( struct ge ge)
static

Definition at line 511 of file msl-commands.c.

◆ cr_rd16()

static uint16_t cr_rd16 ( struct ge ge,
uint16_t  a 
)
static

Definition at line 148 of file msl-commands.c.

◆ cr_wr16()

static void cr_wr16 ( struct ge ge,
uint16_t  a,
uint16_t  v 
)
static

Definition at line 151 of file msl-commands.c.

◆ CU00()

static void CU00 ( struct ge ge)
static

Definition at line 733 of file msl-commands.c.

◆ CU01()

static void CU01 ( struct ge ge)
static

Definition at line 734 of file msl-commands.c.

◆ CU02()

static void CU02 ( struct ge ge)
static

Definition at line 735 of file msl-commands.c.

◆ CU03()

static void CU03 ( struct ge ge)
static

Definition at line 736 of file msl-commands.c.

◆ CU04()

static void CU04 ( struct ge ge)
static

Definition at line 737 of file msl-commands.c.

◆ CU05()

static void CU05 ( struct ge ge)
static

Definition at line 738 of file msl-commands.c.

◆ CU06()

static void CU06 ( struct ge ge)
static

Definition at line 739 of file msl-commands.c.

◆ CU07()

static void CU07 ( struct ge ge)
static

Definition at line 740 of file msl-commands.c.

◆ CU10()

static void CU10 ( struct ge ge)
static

Definition at line 743 of file msl-commands.c.

◆ CU11()

static void CU11 ( struct ge ge)
static

Definition at line 744 of file msl-commands.c.

◆ CU12()

static void CU12 ( struct ge ge)
static

Definition at line 745 of file msl-commands.c.

◆ CU13()

static void CU13 ( struct ge ge)
static

Definition at line 746 of file msl-commands.c.

◆ CU14()

static void CU14 ( struct ge ge)
static

Definition at line 747 of file msl-commands.c.

◆ CU15()

static void CU15 ( struct ge ge)
static

Definition at line 748 of file msl-commands.c.

◆ CU16()

static void CU16 ( struct ge ge)
static

Definition at line 749 of file msl-commands.c.

◆ CU17()

static void CU17 ( struct ge ge)
static

Definition at line 750 of file msl-commands.c.

◆ CU20()

static void CU20 ( struct ge ge)
static

Definition at line 752 of file msl-commands.c.

◆ eff_v1_l2()

static uint16_t eff_v1_l2 ( struct ge ge)
static

Definition at line 200 of file msl-commands.c.

◆ EXEC_SS()

static void EXEC_SS ( struct ge ge)
static

Definition at line 236 of file msl-commands.c.

◆ INT_ACK()

static void INT_ACK ( struct ge ge)
static

Definition at line 763 of file msl-commands.c.

◆ mem_rd16_op()

static uint16_t mem_rd16_op ( struct ge ge,
uint16_t  a 
)
static

Definition at line 169 of file msl-commands.c.

◆ mem_wr16_op()

static void mem_wr16_op ( struct ge ge,
uint16_t  a,
uint16_t  v 
)
static

Definition at line 172 of file msl-commands.c.

◆ NI4_ZERO()

static void NI4_ZERO ( struct ge ge)
static

Definition at line 416 of file msl-commands.c.

◆ NO_UNDRIVEN()

static void NO_UNDRIVEN ( struct ge ge)
static

Definition at line 53 of file msl-commands.c.

◆ reg_addr_of()

static uint16_t reg_addr_of ( struct ge ge)
static

Definition at line 147 of file msl-commands.c.