diff options
author | Ian C <ianc@noddybox.co.uk> | 2003-12-19 01:14:08 +0000 |
---|---|---|
committer | Ian C <ianc@noddybox.co.uk> | 2003-12-19 01:14:08 +0000 |
commit | 50f23c8c394338fc48f825e5b61303d4ac0360db (patch) | |
tree | 5ad022778212fc6b094b3e11dd1a73fe3df7f9c2 /src/main.c | |
parent | 3a80024643367a4514f0160a90583e00042382b2 (diff) |
Added basic GFX wrapper
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..edf772f --- /dev/null +++ b/src/main.c @@ -0,0 +1,114 @@ +/* + + ezx81 - X11 ZX81 emulator + + Copyright (C) 2003 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 + + ------------------------------------------------------------------------- + +*/ +static const char id[]="$Id$"; + +#include <stdlib.h> +#include <stdio.h> + +#include "SDL.h" + +#include "z80.h" +#include "zx81.h" +#include "gfx.h" +#include "config.h" +#include "exit.h" + + +/* ---------------------------------------- MACROS +*/ +#ifndef TRUE +#define TRUE 1 +#endif + +#ifndef FALSE +#define FALSE 0 +#endif + + +/* ---------------------------------------- STATICS +*/ +static Uint32 white; +static Uint32 black; +static Uint32 grey; + + +/* ---------------------------------------- PROTOS +*/ + + +/* ---------------------------------------- MAIN +*/ +int main(int argc, char *argv[]) +{ + Z80 *z80; + + ConfigRead(); + + ZX81Init(); + + z80=Z80Init(ZX81WriteMem, + ZX81ReadMem, + ZX81WritePort, + ZX81ReadPort, + ZX81ReadForDisassem, + NULL); + + GFXInit(); + + white=GFXRGB(255,255,255); + grey=GFXRGB(128,128,128); + black=GFXRGB(0,0,0); + + GFXClear(grey); + GFXPrint(1,1,black,"Quick SDL check"); + GFXPrint(2,2,white,"Quick SDL check"); + GFXRect(100,100,20,20,white,TRUE); + GFXRect(99,99,22,22,white,FALSE); + + GFXHLine(0,319,0,white); + GFXVLine(0,1,199,black); + + { + SDL_Event e; + int f; + + for(f=0;f<1000;f++) + { + GFXPlot(rand()%320,rand()%200,white); + GFXEndFrame(FALSE); + } + + do + { + SDL_WaitEvent(&e); + } while(e.type!=SDL_KEYUP); + } + + SDL_Quit(); + + return EXIT_SUCCESS; +} + + +/* END OF FILE */ |