home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
405.lha
/
AppleII_Emulators_src
/
src-2
/
cpu_cnts.c
< prev
next >
Wrap
C/C++ Source or Header
|
1990-06-28
|
3KB
|
177 lines
#include <cpu_prog_model.h>
#include <cpu6502_addrm.h>
void DEC_zer( code)
PM *code;
{
unsigned short int address;
short memory;
address = zero_address( code);
memory = code->Me [address] - 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void DEC_zex( code)
PM *code;
{
unsigned short int address;
short memory;
address = zero_x_address( code);
memory = code->Me [address] - 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void DEC_abs( code)
PM *code;
{
unsigned short int address;
short memory;
address = abs_address( code);
memory = code->Me [address] - 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void DEC_abx( code)
PM *code;
{
unsigned short int address;
short memory;
address = abs_x_address( code);
memory = code->Me [address] - 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void DEX( code)
PM *code;
{
(code->Xr)--;
code->Xr &= 0xFF;
set_neg_zero_stat( code, code->Xr);
}
void DEY( code)
PM *code;
{
(code->Yr)--;
code->Yr &= 0xFF;
set_neg_zero_stat( code, code->Yr);
}
void INC_zer( code)
PM *code;
{
unsigned short int address;
short memory;
address = zero_address( code);
memory = code->Me [address] + 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void INC_zex( code)
PM *code;
{
unsigned short int address;
short memory;
address = zero_x_address( code);
memory = code->Me [address] + 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void INC_abs( code)
PM *code;
{
unsigned short int address;
short memory;
address = abs_address( code);
memory = code->Me [address] + 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void INC_abx( code)
PM *code;
{
unsigned short int address;
short memory;
address = abs_x_address( code);
memory = code->Me [address] + 1;
memory &= 0xFF;
mem_check( address, &memory, code, Func_STORE);
code->Me [address] = memory;
set_neg_zero_stat( code, memory);
}
void INX( code)
PM *code;
{
(code->Xr)++;
(code->Xr) &= 0xFF;
set_neg_zero_stat( code, code->Xr);
}
void INY( code)
PM *code;
{
(code->Yr)++;
code->Yr &= 0xFF;
set_neg_zero_stat( code, code->Yr);
}