Mercurial > hg > ede
view tests/emu/test_mem.c @ 42:792da050d8c4 tip
more dox
author | james <jb302@eecs.qmul.ac.uk> |
---|---|
date | Tue, 22 Apr 2014 14:25:14 +0100 |
parents | 4411dee34085 |
children |
line wrap: on
line source
#include <stdio.h> #define MAIN #include "mem.h" void main(void) { A = 0xAA; IR = 0x12; unsigned char i; for (i = 0 ; i < 8 ; i++) { set_flag(i, 1); } set_wide(DPTR, 0xDE1D); set_wide(SP, 0xADEA); set_wide(PC, 0xBEFA); set_wide(TMP, 0xEFC3); for (i = 0; i < 4; i++) { regs[i] = i; } for (i = 8; i < 0x0C; i++) { regs[i] = 0x10 | (i - 8); } putchar(A); putchar(IR); putchar(flags); for (i = 0; i < 0x10; i++) { putchar(regs[i]); } unsigned short int data_pointer = get_wide(DPTR); unsigned short int program_counter = get_wide(PC); unsigned short int stack_pointer = get_wide(SP); unsigned short int temp = get_wide(TMP); putchar((data_pointer >> 8) & 0xFF); putchar(data_pointer & 0xFF); putchar((program_counter >> 8) & 0xFF); putchar(program_counter & 0xFF); putchar((stack_pointer >> 8) & 0xFF); putchar(stack_pointer & 0xFF); putchar((temp >> 8) & 0xFF); putchar(temp & 0xFF); int ac; for (ac = 0 ; ac < 0x10000 ; ac++) { mem[ac] = ac & 0xFF; } for (ac = 0 ; ac < 0x10000 ; ac++) { putchar(fetch()); } }