| Интерфейс | virtual intGetMemCellSize(intbusnum,intaddr) |
| Описание | Возвращает размер минимально адресуемой ячейки памяти в байтах |
| Аргументы | intbusnum - индекс шины памяти intaddr - адрес ячейки |
| Возвращаемое значение | Размер минимально адресуемой ячейки |
| Примечания | Для процессоров семейства NMфункция возвращает 4, так как минимально адресуемая ячейка памяти в NMсоставляет 4 байта. |
Функция ProcGetMem
Таблица 4.2.6 Функция ProcGetMem.
| Интерфейс | intProcGetMem(void *mem,intbusnum,intaddr,int size); |
| Описание | возвращаетsize байт памяти начиная с адреса addr в область mem. |
| Аргументы | mem‑ указатель на массив, в который будет считана памяти из эмулятора busnum‑ индекс адресного пространства памяти addr‑ стартовый адрес в памяти эмулятора size‑ размер памяти в байтах, в который пишуться данные |
| Возвращаемое значение | В случае успеха: количество байтов памяти, реально считанных по запросу В случае ошибки:0 |
| Примечания | Для процессоров семейства NMпараметр busnum должен быть равен 0, так как в NMимеется только одно адресное пространство. |
Таблица 4.2.7 Функция ProcSetMem.
| Интерфейс | intSetMem(void *mem,intbusnum,intaddr,int size); |
| Описание | записываетsize байт памяти начиная с адреса addr, данные берутся из области mem. |
| Аргументы | mem‑ указатель на массив, из которого будут считаны данные в память busnum - индекс адресного пространства памяти addr - стартовый адрес в памяти эмулятора size - размер памяти в байтах, в который пишутся данные |
| Возвращаемое значение | В случае успеха: Количество байтов памяти, реально записанных по запросу В случае ошибки: 0 |
| Примечания | Для процессоров семейства NMпараметр busnum должен быть равен 0, так как в NMимеется только одно адресное пространство. |
Функция ProcDisAssembly.
| Интерфейс | intDisAssembly(char *str,intbusnum,intaddr,int size) |
| Описание | Дизассемблирует size байт из области памяти busnum начиная с адреса size байт |
| Аргументы | *str – указатель на выходной буфер, в который будет записан дизассемблер busnum – номер шины size – размер дизассемблируемой области памяти в словах |
| Возвращаемое значение | В случае успеха: количество байтов в буфере, занятых дизассемблированным кодом В случае ошибки:0 |
| Примечания | Данная функция может быть опущена. В этом случае в gdb-stub будет недоступен режим вывода трассы работы программы Ожидаемый формат дизассемблированной инструкции: "адрес\nкод инструкции\nдизасемблированная инструкция\n” |
Функция ProcSetReg.
| Интерфейс | intProcSetReg(intrnum,intanum,char*val) |
| Описание | записать значение в регистр с индексом rnum, или в элемент регистрового массива rnum с адресом anum. |
| Аргументы | rnum - индекс регистра или массива регистров anum - индекс регистра в регистровом массиве (в случае, если запрашивается регистр, а не регистровый массив, параметр игнорируется) val - значение для записи |
| Возвращаемое значение | 1 - в случае успеха 0 – если регистр с заданными параметрами отсутствует |
| Примечания | При записи в регистр рекомендуется преобразовать указатель char* к указателю на тип, соответствующий размеру регистра. Например, для 32х битного регистра: NewRegVal = *((uint32*)val); Для 64х битного регистра: NewRegVal = *((uint64*)val); |
Функция GetReg
Таблица 4.2.12 Функция GetReg.
| Интерфейс | intGetReg(intrnum,intanum,char*val) |
| Описание | Получить значение в регистр с индексом rnum, или в элемент регистрового массива rnum с адресом anum. |
| Аргументы | rnum - индекс регистра или массива регистров anum - индекс регистра в регистровом массиве (в случае регистра игнорируется) val - значение для записи |
| Возвращаемое значение | Значение регистра |
| Примечания | При записи в регистр рекомендуется преобразовать указатель char* к указателю на тип, соответствующий размеру регистра. Например, для 32х битного регистра: *((uint32*)val) = RegVal; Для 64х битного регистра: *((uint64*)val) = RegVal; |
Функция SetFifo
Таблица 4.2.11 Функция SetFifo.
| Интерфейс | intSetFifo (intfifo_num,char* data,int size) |
| Описание | записать значение в ФИФОс индексом fifo,sizeслов из буфера data |
| Аргументы | fifo_num - индекс ФИФО data - указатель на массив новых значений фифо size - новая длинна ФИФО |
| Возвращаемое значение | 1 в случае успеха |
| Примечания |
Таблица 4.2.12 Функция ProcGetFifo.
| Интерфейс | intProcGetFifo (intfifo_num,char* data,int* size) |
| Описание | Получить значение ФИФО индексом fifo_num и текущий размер ФИФО |
| Аргументы | fifo_num - индекс ФИФО data - указатель на массив, в который будут сохранено фифо size–указатель на переменную для записи длины ФИФО |
| Возвращаемое значение | 1 – в случае успеха 0 – в случае ошибки |
| Примечания |
Функция ProcSetPc.
| Интерфейс | intProcSetPc(unsigned long val) |
| Описание | Установить значение счетчика программ |
| Аргументы | val- новое значение счетчика |
| Возвращаемое значение | 1 – в случае успеха 0 – в случае ошибки |
| Примечания | - |
Функция ProcGetPc
| Интерфейс | uint32 ProcGetPc(unsigned long val) |
| Описание | Считать значение счетчика программ |
| Аргументы | val – игнорируется |
| Возвращаемое значение | Значение счетчика программ |
| Примечания | - |
Функция ProcSetBreakPoint.
| Интерфейс | intProcSetBreakPoint(unsignedlongaddr) |
| Описание | Установить точку останова на адрес addr |
| Аргументы | аddr – адрес точки останова |
| Возвращаемое значение | В случае успеха:1 В случае ошибки:0 |
| Примечания | - |
Функция ProcClearBreakPoint
| Интерфейс | intProcClearBreakPoint(unsigned long addr) |
| Описание | Удалить точку останова |
| Аргументы | аddr – адрес точки останова |
| Возвращаемое значение | В случае успеха:1 В случае ошибки:0 |
| Примечания | - |
Функция ProcReset.
| Интерфейс | voidProcReset() |
| Описание | Сброс процессора (эмуляция прерывания RESET) |
| Аргументы | - |
| Возвращаемое значение | |
| Примечания | - |
Функция ProcStart.
| Интерфейс | voidProcStart() |
| Описание | Запускает процесс исполнения программы на эмуляторе |
| Аргументы | - |
| Возвращаемое значение | - |
| Примечания | - |
Функция ProcStop.
| Интерфейс | voidProcStop() |
| Описание | Останавливает процесс исполнения программы на эмуляторе |
| Аргументы | - |
| Возвращаемое значение | - |
| Примечания | - |
Функция ProcIsRun.
| Интерфейс | intProcIsRun() |
| Описание | Возвращает статус эмулятора |
| Аргументы | |
| Возвращаемое значение | 1 – эмулятор работает 0 – эмулятор остановился |
| Примечания | - |
Функция ProcStepInto.
| Интерфейс | ProcStepInto() |
| Описание | Исполняет одну инструкцию на эмуляторе |
| Аргументы | - |
| Возвращаемое значение | Нет |
| Примечания |