KoMo2  1.0.0
A modern ARM emulator GUI.
Classes | Namespaces | Enumerations | Functions | Variables
jimulatorInterface.h File Reference

The header file associated with the jimulatorInterface.c file - specifies functions which can be accessed externally to by other files which include this header. More...

#include <array>
#include <string>

Go to the source code of this file.

Classes

class  Jimulator::MemoryValues
 A class that returns all of the information associated with a single row of a memory window, as read from Jimulator. More...
 

Namespaces

 Jimulator
 Groups together functions that make up the Jimulator API layer - these functions and classes are used for sending and receiving information from the emulator.
 

Enumerations

enum  ClientState : unsigned char {
  NORMAL = 0X00, BUSY = 0X01, BREAKPOINT = 0X41, MEMFAULT = 0X43,
  FINISHED = 0X44, RUNNING = 0X80, RUNNING_SWI = 0x81, STEPPING = 0X82,
  BROKEN = 0x30, NORMAL = 0X00, BUSY = 0X01, BREAKPOINT = 0X41,
  MEMFAULT = 0X43, FINISHED = 0X44, RUNNING = 0X80, RUNNING_SWI = 0x81,
  STEPPING = 0X82, BROKEN = 0x30
}
 A series of values that represent state information returned from Jimulator.
 

Functions

unsigned char operator| (ClientState l, unsigned char r)
 Performing an or between a ClientState and an unsigned char. More...
 
const ClientState Jimulator::checkBoardState ()
 Check the state of the board - logs what it is doing. More...
 
const std::array< std::string, 16 > Jimulator::getJimulatorRegisterValues ()
 Queries a register in Jimulator to get it's current value. More...
 
std::array< Jimulator::MemoryValues, 13 > Jimulator::getJimulatorMemoryValues (const uint32_t s_address_int)
 Get the memory values from Jimulator, starting to s_address. More...
 
const std::string Jimulator::getJimulatorTerminalMessages ()
 Reads for messages from Jimulator, to display in the terminal output. More...
 
void Jimulator::compileJimulator (const char *const pathToBin, const char *const pathToS, const char *const pathToKMD)
 Runs pathToS through the associated compiler binary, and outputs a .kmd file at pathToKMD. More...
 
const bool Jimulator::loadJimulator (const char *const pathToKMD)
 Clears the existing source object and loads the file at pathToKMD into Jimulator. More...
 
void Jimulator::startJimulator (const int steps)
 Commences running the emulator. More...
 
void Jimulator::continueJimulator ()
 Continues running Jimulator.
 
void Jimulator::pauseJimulator ()
 Pauses the emulator running.
 
void Jimulator::resetJimulator ()
 Reset the emulators running.
 
const bool Jimulator::sendTerminalInputToJimulator (const unsigned int val)
 Sends terminal information to Jimulator. More...
 
const bool Jimulator::setBreakpoint (const uint32_t address)
 Sets a breakpoint. More...
 

Variables

int writeToJimulator
 Stores the file descriptor used for writing to Jimulator.
 
int readFromJimulator
 Stores the file descriptor used for reading from Jimulator.
 
int communicationFromJimulator [2]
 The pipe which will be used by KoMo2 to read from Jimulator (i.e. Jimulator will write to it, KoMo2 will read)
 
int communicationToJimulator [2]
 The pipe which will be used by KoMo2 to write to Jimulator (i.e. Jimulator will read from it, KoMo2 will write)
 
int compilerCommunication [2]
 The pipe that handles communication between the compiler process and KoMo2.
 

Detailed Description

The header file associated with the jimulatorInterface.c file - specifies functions which can be accessed externally to by other files which include this header.

Author
Lawrence Warren (lawre.nosp@m.ncew.nosp@m.arren.nosp@m.2@gm.nosp@m.ail.c.nosp@m.om)
Version
1.0.0
Date
10-04-2021

Definition in file jimulatorInterface.h.

Function Documentation

unsigned char operator| ( ClientState  l,
unsigned char  r 
)

Performing an or between a ClientState and an unsigned char.

Parameters
lThe left hand ClientState value.
rThe right hand unsigned char value.
Returns
unsigned char The result of the or operation.

Definition at line 36 of file jimulatorInterface.h.