From 6701f6a9d4f979cc1eadb673e767b5c46cd2a9c8 Mon Sep 17 00:00:00 2001 From: Ian C Date: Tue, 10 Apr 2007 23:59:35 +0000 Subject: Initial import --- arm9/include/spec.h | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 arm9/include/spec.h (limited to 'arm9/include/spec.h') diff --git a/arm9/include/spec.h b/arm9/include/spec.h new file mode 100644 index 0000000..f9f6786 --- /dev/null +++ b/arm9/include/spec.h @@ -0,0 +1,69 @@ +/* + ds48 - Nintendo DS ZX Spectrum emulator. + + Copyright (C) 2007 Ian Cowburn (ianc@noddybox.demon.co.uk) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + ------------------------------------------------------------------------- + + $Id$ +*/ + +#ifndef DS48_SPEC_H +#define DS48_SPEC_H + +#include "z80.h" +#include "keyboard.h" + +/* Initialise the SPEC +*/ +void SPECInit(uint16 *vram, Z80 *z80); + +/* Handle keypresses +*/ +void SPECHandleKey(SoftKey k, int is_pressed); + +/* Enable fopen() loading of tape files +*/ +void SPECEnableFileSystem(int enable); + +/* Set a file to load from tape +*/ +void SPECSetTape(const Z80Byte *image, int len); + +/* Interfaces for the Z80 +*/ +Z80Byte SPECPeek(Z80 *z80, Z80Word addr); +void SPECPoke(Z80 *z80, Z80Word addr, Z80Byte val); + +#define SPECDisPeek SPECPeek + +Z80Byte SPECReadPort(Z80 *z80, Z80Word port); +void SPECWritePort(Z80 *z80, Z80Word port, Z80Byte val); + + +/* Reset the speccy +*/ +void SPECReset(Z80 *z80); + +/* Tell the Spectrum that config may have changed +*/ +void SPECReconfigure(void); + +#endif + + +/* END OF FILE */ -- cgit v1.2.3