[Fuse-for-macosx-commits] SF.net SVN: fuse-for-macosx:[532] vendor/fuse-emulator/current
Brought to you by:
fredm
|
From: <fr...@us...> - 2008-09-28 12:27:37
|
Revision: 532
http://fuse-for-macosx.svn.sourceforge.net/fuse-for-macosx/?rev=532&view=rev
Author: fredm
Date: 2008-09-28 12:26:43 +0000 (Sun, 28 Sep 2008)
Log Message:
-----------
Load . into vendor/fuse-emulator/current.
Modified Paths:
--------------
vendor/fuse-emulator/current/fuse/Makefile.am
vendor/fuse-emulator/current/fuse/README
vendor/fuse-emulator/current/fuse/compat/amiga/Makefile.am
vendor/fuse-emulator/current/fuse/compat/morphos/Makefile.am
vendor/fuse-emulator/current/fuse/compat/unix/Makefile.am
vendor/fuse-emulator/current/fuse/compat/unix/osname.c
vendor/fuse-emulator/current/fuse/compat/win32/Makefile.am
vendor/fuse-emulator/current/fuse/compat.h
vendor/fuse-emulator/current/fuse/configure.in
vendor/fuse-emulator/current/fuse/dck.c
vendor/fuse-emulator/current/fuse/debugger/Makefile.am
vendor/fuse-emulator/current/fuse/debugger/breakpoint.c
vendor/fuse-emulator/current/fuse/debugger/breakpoint.h
vendor/fuse-emulator/current/fuse/debugger/command.c
vendor/fuse-emulator/current/fuse/debugger/commandl.l
vendor/fuse-emulator/current/fuse/debugger/commandy.y
vendor/fuse-emulator/current/fuse/debugger/debugger.c
vendor/fuse-emulator/current/fuse/debugger/debugger.h
vendor/fuse-emulator/current/fuse/debugger/debugger_internals.h
vendor/fuse-emulator/current/fuse/debugger/expression.c
vendor/fuse-emulator/current/fuse/disk/beta.c
vendor/fuse-emulator/current/fuse/disk/beta.h
vendor/fuse-emulator/current/fuse/disk/disk.c
vendor/fuse-emulator/current/fuse/disk/fdd.c
vendor/fuse-emulator/current/fuse/disk/fdd.h
vendor/fuse-emulator/current/fuse/disk/plusd.c
vendor/fuse-emulator/current/fuse/disk/plusd.h
vendor/fuse-emulator/current/fuse/disk/upd_fdc.c
vendor/fuse-emulator/current/fuse/disk/upd_fdc.h
vendor/fuse-emulator/current/fuse/disk/wd_fdc.c
vendor/fuse-emulator/current/fuse/disk/wd_fdc.h
vendor/fuse-emulator/current/fuse/divide.c
vendor/fuse-emulator/current/fuse/event.c
vendor/fuse-emulator/current/fuse/event.h
vendor/fuse-emulator/current/fuse/fuse.c
vendor/fuse-emulator/current/fuse/hacking/ChangeLog
vendor/fuse-emulator/current/fuse/if1.c
vendor/fuse-emulator/current/fuse/input.c
vendor/fuse-emulator/current/fuse/input.h
vendor/fuse-emulator/current/fuse/keysyms.pl
vendor/fuse-emulator/current/fuse/loader.c
vendor/fuse-emulator/current/fuse/machine.c
vendor/fuse-emulator/current/fuse/machines/specplus3.h
vendor/fuse-emulator/current/fuse/memory.c
vendor/fuse-emulator/current/fuse/menu.c
vendor/fuse-emulator/current/fuse/menu.h
vendor/fuse-emulator/current/fuse/menu_data.dat
vendor/fuse-emulator/current/fuse/menu_data.pl
vendor/fuse-emulator/current/fuse/periph.c
vendor/fuse-emulator/current/fuse/periph.h
vendor/fuse-emulator/current/fuse/profile.c
vendor/fuse-emulator/current/fuse/rzx.c
vendor/fuse-emulator/current/fuse/rzx.h
vendor/fuse-emulator/current/fuse/screenshot.c
vendor/fuse-emulator/current/fuse/settings.dat
vendor/fuse-emulator/current/fuse/simpleide.c
vendor/fuse-emulator/current/fuse/snapshot.c
vendor/fuse-emulator/current/fuse/sound/alsasound.c
vendor/fuse-emulator/current/fuse/sound/dxsound.c
vendor/fuse-emulator/current/fuse/sound/win32sound.c
vendor/fuse-emulator/current/fuse/spectrum.c
vendor/fuse-emulator/current/fuse/spectrum.h
vendor/fuse-emulator/current/fuse/tape.c
vendor/fuse-emulator/current/fuse/tape.h
vendor/fuse-emulator/current/fuse/timer/timer.c
vendor/fuse-emulator/current/fuse/timer/timer.h
vendor/fuse-emulator/current/fuse/ui/fb/fbdisplay.c
vendor/fuse-emulator/current/fuse/ui/gtk/debugger.c
vendor/fuse-emulator/current/fuse/ui/gtk/gtkjoystick.c
vendor/fuse-emulator/current/fuse/ui/gtk/gtkkeyboard.c
vendor/fuse-emulator/current/fuse/ui/gtk/gtkui.c
vendor/fuse-emulator/current/fuse/ui/options.dat
vendor/fuse-emulator/current/fuse/ui/scaler/scalers.c
vendor/fuse-emulator/current/fuse/ui/sdl/sdldisplay.c
vendor/fuse-emulator/current/fuse/ui/sdl/sdljoystick.c
vendor/fuse-emulator/current/fuse/ui/svga/svgadisplay.c
vendor/fuse-emulator/current/fuse/ui/svga/svgajoystick.c
vendor/fuse-emulator/current/fuse/ui/uidisplay.h
vendor/fuse-emulator/current/fuse/ui/uijoystick.c
vendor/fuse-emulator/current/fuse/ui/widget/Makefile.am
vendor/fuse-emulator/current/fuse/ui/widget/browse.c
vendor/fuse-emulator/current/fuse/ui/widget/debugger.c
vendor/fuse-emulator/current/fuse/ui/widget/error.c
vendor/fuse-emulator/current/fuse/ui/widget/filesel.c
vendor/fuse-emulator/current/fuse/ui/widget/memory.c
vendor/fuse-emulator/current/fuse/ui/widget/menu.c
vendor/fuse-emulator/current/fuse/ui/widget/options.pl
vendor/fuse-emulator/current/fuse/ui/widget/picture.c
vendor/fuse-emulator/current/fuse/ui/widget/pokefinder.c
vendor/fuse-emulator/current/fuse/ui/widget/query.c
vendor/fuse-emulator/current/fuse/ui/widget/roms.c
vendor/fuse-emulator/current/fuse/ui/widget/select.c
vendor/fuse-emulator/current/fuse/ui/widget/text.c
vendor/fuse-emulator/current/fuse/ui/widget/widget.c
vendor/fuse-emulator/current/fuse/ui/widget/widget.h
vendor/fuse-emulator/current/fuse/ui/widget/widget_internals.h
vendor/fuse-emulator/current/fuse/ui/win32/Makefile.am
vendor/fuse-emulator/current/fuse/ui/win32/binary.c
vendor/fuse-emulator/current/fuse/ui/win32/binary.rc
vendor/fuse-emulator/current/fuse/ui/win32/browse.c
vendor/fuse-emulator/current/fuse/ui/win32/browse.h
vendor/fuse-emulator/current/fuse/ui/win32/browse.rc
vendor/fuse-emulator/current/fuse/ui/win32/debugger.c
vendor/fuse-emulator/current/fuse/ui/win32/debugger.h
vendor/fuse-emulator/current/fuse/ui/win32/debugger.rc
vendor/fuse-emulator/current/fuse/ui/win32/memorybrowser.c
vendor/fuse-emulator/current/fuse/ui/win32/memorybrowser.h
vendor/fuse-emulator/current/fuse/ui/win32/memorybrowser.rc
vendor/fuse-emulator/current/fuse/ui/win32/options-header.pl
vendor/fuse-emulator/current/fuse/ui/win32/options-resource.pl
vendor/fuse-emulator/current/fuse/ui/win32/options.pl
vendor/fuse-emulator/current/fuse/ui/win32/picture.c
vendor/fuse-emulator/current/fuse/ui/win32/picture.h
vendor/fuse-emulator/current/fuse/ui/win32/picture.rc
vendor/fuse-emulator/current/fuse/ui/win32/pokefinder.c
vendor/fuse-emulator/current/fuse/ui/win32/pokefinder.h
vendor/fuse-emulator/current/fuse/ui/win32/pokefinder.rc
vendor/fuse-emulator/current/fuse/ui/win32/rollback.c
vendor/fuse-emulator/current/fuse/ui/win32/rollback.rc
vendor/fuse-emulator/current/fuse/ui/win32/roms.c
vendor/fuse-emulator/current/fuse/ui/win32/roms.rc
vendor/fuse-emulator/current/fuse/ui/win32/select_template.rc
vendor/fuse-emulator/current/fuse/ui/win32/statusbar.c
vendor/fuse-emulator/current/fuse/ui/win32/win32display.c
vendor/fuse-emulator/current/fuse/ui/win32/win32internals.h
vendor/fuse-emulator/current/fuse/ui/win32/win32joystick.c
vendor/fuse-emulator/current/fuse/ui/win32/win32joystick.rc
vendor/fuse-emulator/current/fuse/ui/win32/win32keyboard.c
vendor/fuse-emulator/current/fuse/ui/win32/win32ui.c
vendor/fuse-emulator/current/fuse/ui/xlib/xdisplay.c
vendor/fuse-emulator/current/fuse/ui/xlib/xui.c
vendor/fuse-emulator/current/fuse/unittests/unittests.c
vendor/fuse-emulator/current/fuse/utils.c
vendor/fuse-emulator/current/fuse/z80/coretest.c
vendor/fuse-emulator/current/fuse/z80/tests/tests.expected
vendor/fuse-emulator/current/fuse/z80/tests/tests.in
vendor/fuse-emulator/current/fuse/z80/z80.c
vendor/fuse-emulator/current/fuse/z80/z80.h
vendor/fuse-emulator/current/fuse/z80/z80.pl
vendor/fuse-emulator/current/fuse/z80/z80_ops.c
vendor/fuse-emulator/current/fuse/zxatasp.c
vendor/fuse-emulator/current/fuse/zxcf.c
vendor/fuse-emulator/current/fuse-utils/Makefile.am
vendor/fuse-emulator/current/fuse-utils/configure.in
vendor/fuse-emulator/current/fuse-utils/hacking/ChangeLog
vendor/fuse-emulator/current/fuse-utils/listbasic.c
vendor/fuse-emulator/current/fuse-utils/man/audio2tape.1
vendor/fuse-emulator/current/fuse-utils/man/tapeconv.1
vendor/fuse-emulator/current/fuse-utils/rzxcheck.c
vendor/fuse-emulator/current/fuse-utils/rzxtool.c
vendor/fuse-emulator/current/fuse-utils/snap2tzx.c
vendor/fuse-emulator/current/fuse-utils/snapconv.c
vendor/fuse-emulator/current/fuse-utils/tape2wav.c
vendor/fuse-emulator/current/fuse-utils/tapeconv.c
vendor/fuse-emulator/current/fuse-utils/tzxlist.c
vendor/fuse-emulator/current/fuse-utils/utils.c
vendor/fuse-emulator/current/libspectrum/Makefile.am
vendor/fuse-emulator/current/libspectrum/accessor.pl
vendor/fuse-emulator/current/libspectrum/bzip2.c
vendor/fuse-emulator/current/libspectrum/configure.in
vendor/fuse-emulator/current/libspectrum/creator.c
vendor/fuse-emulator/current/libspectrum/crypto.c
vendor/fuse-emulator/current/libspectrum/csw.c
vendor/fuse-emulator/current/libspectrum/dck.c
vendor/fuse-emulator/current/libspectrum/hacking/ChangeLog
vendor/fuse-emulator/current/libspectrum/ide.c
vendor/fuse-emulator/current/libspectrum/internals.h
vendor/fuse-emulator/current/libspectrum/libspectrum.c
vendor/fuse-emulator/current/libspectrum/libspectrum.h.in
vendor/fuse-emulator/current/libspectrum/make-perl.c
vendor/fuse-emulator/current/libspectrum/microdrive.c
vendor/fuse-emulator/current/libspectrum/myglib/Makefile.am
vendor/fuse-emulator/current/libspectrum/myglib/ghash.c
vendor/fuse-emulator/current/libspectrum/myglib/gslist.c
vendor/fuse-emulator/current/libspectrum/plusd.c
vendor/fuse-emulator/current/libspectrum/rzx.c
vendor/fuse-emulator/current/libspectrum/sna.c
vendor/fuse-emulator/current/libspectrum/snapshot.c
vendor/fuse-emulator/current/libspectrum/sp.c
vendor/fuse-emulator/current/libspectrum/szx.c
vendor/fuse-emulator/current/libspectrum/tap.c
vendor/fuse-emulator/current/libspectrum/tape.c
vendor/fuse-emulator/current/libspectrum/tape_block.c
vendor/fuse-emulator/current/libspectrum/tape_block.h
vendor/fuse-emulator/current/libspectrum/test/Makefile.am
vendor/fuse-emulator/current/libspectrum/test/edges.c
vendor/fuse-emulator/current/libspectrum/test/test.c
vendor/fuse-emulator/current/libspectrum/test/test.h
vendor/fuse-emulator/current/libspectrum/test/test15.c
vendor/fuse-emulator/current/libspectrum/tzx_read.c
vendor/fuse-emulator/current/libspectrum/tzx_write.c
vendor/fuse-emulator/current/libspectrum/warajevo_read.c
vendor/fuse-emulator/current/libspectrum/wav.c
vendor/fuse-emulator/current/libspectrum/z80.c
vendor/fuse-emulator/current/libspectrum/z80em.c
vendor/fuse-emulator/current/libspectrum/zlib.c
vendor/fuse-emulator/current/libspectrum/zxs.c
vendor/fuse-emulator/current/website/fuse.php
vendor/fuse-emulator/current/website/libspectrum.php
Added Paths:
-----------
vendor/fuse-emulator/current/fuse/PORTING
vendor/fuse-emulator/current/fuse/compat/unix/file.c
vendor/fuse-emulator/current/fuse/compat/wii/
vendor/fuse-emulator/current/fuse/compat/wii/Makefile.am
vendor/fuse-emulator/current/fuse/compat/wii/file.c
vendor/fuse-emulator/current/fuse/debugger/event.c
vendor/fuse-emulator/current/fuse/debugger/variable.c
vendor/fuse-emulator/current/fuse/mempool.c
vendor/fuse-emulator/current/fuse/mempool.h
vendor/fuse-emulator/current/fuse/ui/win32/confirm.c
vendor/fuse-emulator/current/fuse/ui/win32/fileselector.c
vendor/fuse-emulator/current/fuse-basic/
vendor/fuse-emulator/current/fuse-basic/COPYING
vendor/fuse-emulator/current/fuse-basic/Makefile.am
vendor/fuse-emulator/current/fuse-basic/autogen.sh
vendor/fuse-emulator/current/fuse-basic/basic.c
vendor/fuse-emulator/current/fuse-basic/basic.h
vendor/fuse-emulator/current/fuse-basic/basicl.l
vendor/fuse-emulator/current/fuse-basic/basicy.y
vendor/fuse-emulator/current/fuse-basic/check
vendor/fuse-emulator/current/fuse-basic/configure.ac
vendor/fuse-emulator/current/fuse-basic/dump.c
vendor/fuse-emulator/current/fuse-basic/dump.h
vendor/fuse-emulator/current/fuse-basic/explist.c
vendor/fuse-emulator/current/fuse-basic/explist.h
vendor/fuse-emulator/current/fuse-basic/line.c
vendor/fuse-emulator/current/fuse-basic/line.h
vendor/fuse-emulator/current/fuse-basic/numexp.c
vendor/fuse-emulator/current/fuse-basic/numexp.h
vendor/fuse-emulator/current/fuse-basic/parse.c
vendor/fuse-emulator/current/fuse-basic/parse.h
vendor/fuse-emulator/current/fuse-basic/printlist.c
vendor/fuse-emulator/current/fuse-basic/printlist.h
vendor/fuse-emulator/current/fuse-basic/program.c
vendor/fuse-emulator/current/fuse-basic/program.h
vendor/fuse-emulator/current/fuse-basic/spectrum-string.c
vendor/fuse-emulator/current/fuse-basic/spectrum-string.h
vendor/fuse-emulator/current/fuse-basic/statement.c
vendor/fuse-emulator/current/fuse-basic/statement.h
vendor/fuse-emulator/current/fuse-basic/strexp.c
vendor/fuse-emulator/current/fuse-basic/strexp.h
vendor/fuse-emulator/current/fuse-basic/tests/
vendor/fuse-emulator/current/fuse-basic/tests/abs.bas
vendor/fuse-emulator/current/fuse-basic/tests/abs.out
vendor/fuse-emulator/current/fuse-basic/tests/acs.bas
vendor/fuse-emulator/current/fuse-basic/tests/acs.out
vendor/fuse-emulator/current/fuse-basic/tests/and.bas
vendor/fuse-emulator/current/fuse-basic/tests/and.out
vendor/fuse-emulator/current/fuse-basic/tests/asn.bas
vendor/fuse-emulator/current/fuse-basic/tests/asn.out
vendor/fuse-emulator/current/fuse-basic/tests/atn.bas
vendor/fuse-emulator/current/fuse-basic/tests/atn.out
vendor/fuse-emulator/current/fuse-basic/tests/chrs.bas
vendor/fuse-emulator/current/fuse-basic/tests/chrs.out
vendor/fuse-emulator/current/fuse-basic/tests/code.bas
vendor/fuse-emulator/current/fuse-basic/tests/code.out
vendor/fuse-emulator/current/fuse-basic/tests/cos.bas
vendor/fuse-emulator/current/fuse-basic/tests/cos.out
vendor/fuse-emulator/current/fuse-basic/tests/dim.bas
vendor/fuse-emulator/current/fuse-basic/tests/dim.out
vendor/fuse-emulator/current/fuse-basic/tests/divide.bas
vendor/fuse-emulator/current/fuse-basic/tests/divide.out
vendor/fuse-emulator/current/fuse-basic/tests/equal.bas
vendor/fuse-emulator/current/fuse-basic/tests/equal.out
vendor/fuse-emulator/current/fuse-basic/tests/exp.bas
vendor/fuse-emulator/current/fuse-basic/tests/exp.out
vendor/fuse-emulator/current/fuse-basic/tests/for.bas
vendor/fuse-emulator/current/fuse-basic/tests/for.out
vendor/fuse-emulator/current/fuse-basic/tests/ge.bas
vendor/fuse-emulator/current/fuse-basic/tests/ge.out
vendor/fuse-emulator/current/fuse-basic/tests/gosub.bas
vendor/fuse-emulator/current/fuse-basic/tests/gosub.out
vendor/fuse-emulator/current/fuse-basic/tests/goto.bas
vendor/fuse-emulator/current/fuse-basic/tests/goto.out
vendor/fuse-emulator/current/fuse-basic/tests/greater.bas
vendor/fuse-emulator/current/fuse-basic/tests/greater.out
vendor/fuse-emulator/current/fuse-basic/tests/if.bas
vendor/fuse-emulator/current/fuse-basic/tests/if.out
vendor/fuse-emulator/current/fuse-basic/tests/int.bas
vendor/fuse-emulator/current/fuse-basic/tests/int.out
vendor/fuse-emulator/current/fuse-basic/tests/le.bas
vendor/fuse-emulator/current/fuse-basic/tests/le.out
vendor/fuse-emulator/current/fuse-basic/tests/len.bas
vendor/fuse-emulator/current/fuse-basic/tests/len.out
vendor/fuse-emulator/current/fuse-basic/tests/less.bas
vendor/fuse-emulator/current/fuse-basic/tests/less.out
vendor/fuse-emulator/current/fuse-basic/tests/let.bas
vendor/fuse-emulator/current/fuse-basic/tests/let.out
vendor/fuse-emulator/current/fuse-basic/tests/ln.bas
vendor/fuse-emulator/current/fuse-basic/tests/ln.out
vendor/fuse-emulator/current/fuse-basic/tests/minus.bas
vendor/fuse-emulator/current/fuse-basic/tests/minus.out
vendor/fuse-emulator/current/fuse-basic/tests/ne.bas
vendor/fuse-emulator/current/fuse-basic/tests/ne.out
vendor/fuse-emulator/current/fuse-basic/tests/not.bas
vendor/fuse-emulator/current/fuse-basic/tests/not.out
vendor/fuse-emulator/current/fuse-basic/tests/or.bas
vendor/fuse-emulator/current/fuse-basic/tests/or.out
vendor/fuse-emulator/current/fuse-basic/tests/pi.bas
vendor/fuse-emulator/current/fuse-basic/tests/pi.out
vendor/fuse-emulator/current/fuse-basic/tests/plus.bas
vendor/fuse-emulator/current/fuse-basic/tests/plus.out
vendor/fuse-emulator/current/fuse-basic/tests/power.bas
vendor/fuse-emulator/current/fuse-basic/tests/power.out
vendor/fuse-emulator/current/fuse-basic/tests/rnd.bas
vendor/fuse-emulator/current/fuse-basic/tests/rnd.out
vendor/fuse-emulator/current/fuse-basic/tests/sgn.bas
vendor/fuse-emulator/current/fuse-basic/tests/sgn.out
vendor/fuse-emulator/current/fuse-basic/tests/sin.bas
vendor/fuse-emulator/current/fuse-basic/tests/sin.out
vendor/fuse-emulator/current/fuse-basic/tests/slicer.bas
vendor/fuse-emulator/current/fuse-basic/tests/slicer.out
vendor/fuse-emulator/current/fuse-basic/tests/sqr.bas
vendor/fuse-emulator/current/fuse-basic/tests/sqr.out
vendor/fuse-emulator/current/fuse-basic/tests/stop.bas
vendor/fuse-emulator/current/fuse-basic/tests/stop.out
vendor/fuse-emulator/current/fuse-basic/tests/tan.bas
vendor/fuse-emulator/current/fuse-basic/tests/tan.out
vendor/fuse-emulator/current/fuse-basic/tests/times.bas
vendor/fuse-emulator/current/fuse-basic/tests/times.out
vendor/fuse-emulator/current/fuse-basic/token.h
vendor/fuse-emulator/current/fuse-basic/utils.c
vendor/fuse-emulator/current/fuse-basic/utils.h
vendor/fuse-emulator/current/fuse-basic/val.c
vendor/fuse-emulator/current/fuse-basic/val.h
vendor/fuse-emulator/current/fuse-utils/audio2tape.cc
vendor/fuse-emulator/current/fuse-utils/audio2tape.h
vendor/fuse-emulator/current/fuse-utils/converter/
vendor/fuse-emulator/current/fuse-utils/converter/findpilot.cc
vendor/fuse-emulator/current/fuse-utils/converter/findpilot.h
vendor/fuse-emulator/current/fuse-utils/converter/findsync1.cc
vendor/fuse-emulator/current/fuse-utils/converter/findsync1.h
vendor/fuse-emulator/current/fuse-utils/converter/getpulse1.cc
vendor/fuse-emulator/current/fuse-utils/converter/getpulse1.h
vendor/fuse-emulator/current/fuse-utils/converter/getpulse2.cc
vendor/fuse-emulator/current/fuse-utils/converter/getpulse2.h
vendor/fuse-emulator/current/fuse-utils/converter/getsync2.cc
vendor/fuse-emulator/current/fuse-utils/converter/getsync2.h
vendor/fuse-emulator/current/fuse-utils/converter/romloader.cc
vendor/fuse-emulator/current/fuse-utils/converter/romloader.h
vendor/fuse-emulator/current/fuse-utils/converter/romloaderstate.h
vendor/fuse-emulator/current/fuse-utils/importer/
vendor/fuse-emulator/current/fuse-utils/importer/interpolator.h
vendor/fuse-emulator/current/fuse-utils/importer/schmitt.h
vendor/fuse-emulator/current/fuse-utils/importer/simple.h
vendor/fuse-emulator/current/fuse-utils/importer/soundfile.cc
vendor/fuse-emulator/current/fuse-utils/importer/soundfile.h
vendor/fuse-emulator/current/fuse-utils/importer/trigger.cc
vendor/fuse-emulator/current/fuse-utils/importer/trigger.h
vendor/fuse-emulator/current/libspectrum/memory.c
vendor/fuse-emulator/current/libspectrum/myglib/garray.c
vendor/fuse-emulator/current/libspectrum/test/writeprotected.mdr
Removed Paths:
-------------
vendor/fuse-emulator/current/fuse/ui/win32/error.c
vendor/fuse-emulator/current/fuse/ui/win32/win32display.h
vendor/fuse-emulator/current/fuse/ui/win32/win32keyboard.h
vendor/fuse-emulator/current/fuse-utils/audio2tape.c
Modified: vendor/fuse-emulator/current/fuse/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/Makefile.am 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
# Process this file with automake to produce Makefile.in
## Copyright (c) 1999-2008 Philip Kendall
-## $Id: Makefile.am 3609 2008-05-01 13:17:56Z fredm $
+## $Id: Makefile.am 3617 2008-05-17 08:09:47Z pak21 $
## 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
@@ -72,6 +72,7 @@
loader.c \
machine.c \
memory.c \
+ mempool.c \
menu.c \
module.c \
periph.c \
Added: vendor/fuse-emulator/current/fuse/PORTING
===================================================================
--- vendor/fuse-emulator/current/fuse/PORTING (rev 0)
+++ vendor/fuse-emulator/current/fuse/PORTING 2008-09-28 12:26:43 UTC (rev 532)
@@ -0,0 +1,22 @@
+Porting Fuse
+============
+
+Sorry, at the moment this isn't a helpful guide as to what you need to do
+to port Fuse to a new platform.
+
+Unfortunately, various people have failed to read and understand the GNU
+General Public License (see 'COPYING') before porting Fuse, so this is a
+very brief guide to what you can and can't do with Fuse's code:
+
+* If you release a binary of Fuse, you *must* release *all* the source
+ code you used to create it at the same time. "Soon" or "when I've
+ tidied up the code" is NOT acceptable.
+
+* If you use any code which you haven't written yourself, it must be
+ available under a licence compatible with the GPL. As an example, this
+ means you may *not* use any code which "may not be used for commercial
+ purposes". Any code which is licenced under the GPL (v2), the modified
+ BSD license or which is truly in the public domain is OK.
+
+Note that above is not an exhaustive list of what you can and cannot
+do with Fuse's code. For the full details, see the GPL.
Modified: vendor/fuse-emulator/current/fuse/README
===================================================================
--- vendor/fuse-emulator/current/fuse/README 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/README 2008-09-28 12:26:43 UTC (rev 532)
@@ -26,6 +26,14 @@
* Emulation of the DivIDE, Interface I, Kempston mouse, Spectrum +3e,
ZXATASP, ZXCF, Beta 128 and +D interfaces.
+Help! <xyz> doesn't work
+------------------------
+
+If you're having a problem using/running/building Fuse, the two places
+you're most likely to get help are the development mailing list
+<fus...@li...> or the official forums at
+<http://sourceforge.net/forum/?group_id=91293>.
+
What you'll need to run Fuse
----------------------------
@@ -143,4 +151,4 @@
Philip Kendall <phi...@sh...>
5 January 2008
-$Id: README 3584 2008-03-25 10:27:30Z fredm $
+$Id: README 3718 2008-07-19 12:29:41Z pak21 $
Modified: vendor/fuse-emulator/current/fuse/compat/amiga/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/amiga/Makefile.am 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/compat/amiga/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
-## Copyright (c) 2007 Philip Kendall
+## Copyright (c) 2007-2008 Philip Kendall
-## $Id: Makefile.am 3578 2008-03-22 20:51:36Z zubzero $
+## $Id: Makefile.am 3687 2008-06-23 11:55:23Z pak21 $
## 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
@@ -27,7 +27,8 @@
noinst_LIBRARIES = libcompatos.a
-libcompatos_a_SOURCES = osname.c \
+libcompatos_a_SOURCES = ../unix/file.c \
+ osname.c \
paths.c
INCLUDES = @GLIB_CFLAGS@ @GTK_CFLAGS@ @LIBSPEC_CFLAGS@
Modified: vendor/fuse-emulator/current/fuse/compat/morphos/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/morphos/Makefile.am 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/compat/morphos/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
-## Copyright (c) 2007 Philip Kendall
+## Copyright (c) 2007-2008 Philip Kendall
-## $Id: Makefile.am 3115 2007-08-19 02:49:14Z fredm $
+## $Id: Makefile.am 3687 2008-06-23 11:55:23Z pak21 $
## 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
@@ -27,7 +27,8 @@
noinst_LIBRARIES = libcompatos.a
-libcompatos_a_SOURCES = osname.c \
+libcompatos_a_SOURCES = ../unix/file.c \
+ osname.c \
../amiga/paths.c
INCLUDES = @GLIB_CFLAGS@ @GTK_CFLAGS@ @LIBSPEC_CFLAGS@
Modified: vendor/fuse-emulator/current/fuse/compat/unix/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/unix/Makefile.am 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/compat/unix/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
-## Copyright (c) 2007 Philip Kendall
+## Copyright (c) 2007-2008 Philip Kendall
-## $Id: Makefile.am 3115 2007-08-19 02:49:14Z fredm $
+## $Id: Makefile.am 3687 2008-06-23 11:55:23Z pak21 $
## 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
@@ -27,7 +27,8 @@
noinst_LIBRARIES = libcompatos.a
-libcompatos_a_SOURCES = osname.c \
+libcompatos_a_SOURCES = file.c \
+ osname.c \
paths.c
INCLUDES = @GLIB_CFLAGS@ @GTK_CFLAGS@ @LIBSPEC_CFLAGS@
Added: vendor/fuse-emulator/current/fuse/compat/unix/file.c
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/unix/file.c (rev 0)
+++ vendor/fuse-emulator/current/fuse/compat/unix/file.c 2008-09-28 12:26:43 UTC (rev 532)
@@ -0,0 +1,107 @@
+/* file.c: File-related compatibility routines
+ Copyright (c) 2008 Philip Kendall
+
+ $Id: file.c 3722 2008-07-22 03:12:28Z specu $
+
+ 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.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Author contact information:
+
+ E-mail: phi...@sh...
+
+*/
+
+#include <config.h>
+
+#include <errno.h>
+#include <fcntl.h>
+#include <string.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+#include "compat.h"
+#include "ui/ui.h"
+
+/* Certain brain damaged operating systems (DOS/Windows) treat text
+ and binary files different in open(2) and need to be given the
+ O_BINARY flag to tell them it's a binary file */
+#ifndef O_BINARY
+#define O_BINARY 0
+#endif /* #ifndef O_BINARY */
+
+const compat_fd COMPAT_FILE_OPEN_FAILED = -1;
+
+compat_fd
+compat_file_open( const char *path, int write )
+{
+ int flags = write ? O_WRONLY | O_CREAT | O_BINARY : O_RDONLY | O_BINARY;
+ return open( path, flags );
+}
+
+off_t
+compat_file_get_length( compat_fd fd )
+{
+ struct stat file_info;
+
+ if( fstat( fd, &file_info ) ) {
+ ui_error( UI_ERROR_ERROR, "couldn't stat file: %s", strerror( errno ) );
+ return -1;
+ }
+
+ return file_info.st_size;
+}
+
+int
+compat_file_read( compat_fd fd, utils_file *file )
+{
+ ssize_t bytes = read( fd, file->buffer, file->length );
+ if( bytes != file->length ) {
+ if( bytes == -1 ) {
+ ui_error( UI_ERROR_ERROR, "error reading file: %s", strerror( errno ) );
+ } else {
+ ui_error( UI_ERROR_ERROR,
+ "error reading file: expected %ld bytes, but read only %ld",
+ (unsigned long)file->length, (unsigned long)bytes );
+ }
+ return 1;
+ }
+
+ return 0;
+}
+
+int
+compat_file_write( compat_fd fd, const unsigned char *buffer, size_t length )
+{
+ ssize_t bytes = write( fd, buffer, length );
+ if( bytes != length ) {
+ if( bytes == -1 ) {
+ ui_error( UI_ERROR_ERROR, "error writing file: %s", strerror( errno ) );
+ } else {
+ ui_error( UI_ERROR_ERROR,
+ "error writing file: expected %ld bytes, but wrote only %ld",
+ (unsigned long)length, (unsigned long)bytes );
+ }
+ return 1;
+ }
+
+ return 0;
+}
+
+int
+compat_file_close( compat_fd fd )
+{
+ return close( fd );
+}
Modified: vendor/fuse-emulator/current/fuse/compat/unix/osname.c
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/unix/osname.c 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/compat/unix/osname.c 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* osname.c: Get a representation of the OS we're running on
Copyright (c) 1999-2007 Philip Kendall
- $Id: osname.c 3115 2007-08-19 02:49:14Z fredm $
+ $Id: osname.c 3626 2008-05-23 10:30:30Z pak21 $
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
@@ -38,7 +38,7 @@
int error;
error = uname( &osname );
- if( error ) {
+ if( error < 0 ) {
ui_error( UI_ERROR_ERROR, "error getting system information: %s",
strerror( errno ) );
return 1;
Added: vendor/fuse-emulator/current/fuse/compat/wii/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/wii/Makefile.am (rev 0)
+++ vendor/fuse-emulator/current/fuse/compat/wii/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -0,0 +1,34 @@
+## Process this file with automake to produce Makefile.in
+## Copyright (c) 2007-2008 Philip Kendall
+
+## $Id: Makefile.am 3687 2008-06-23 11:55:23Z pak21 $
+
+## 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.,
+## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+##
+## Author contact information:
+##
+## E-mail: phi...@sh...
+
+AUTOMAKE_OPTIONS = foreign
+
+AM_CPPFLAGS = -I$(srcdir)/../..
+
+noinst_LIBRARIES = libcompatos.a
+
+libcompatos_a_SOURCES = file.c \
+ osname.c \
+ paths.c
+
+INCLUDES = @GLIB_CFLAGS@ @GTK_CFLAGS@ @LIBSPEC_CFLAGS@
Added: vendor/fuse-emulator/current/fuse/compat/wii/file.c
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/wii/file.c (rev 0)
+++ vendor/fuse-emulator/current/fuse/compat/wii/file.c 2008-09-28 12:26:43 UTC (rev 532)
@@ -0,0 +1,90 @@
+/* file.c: File-related compatibility routines
+ Copyright (c) 2008 Philip Kendall
+
+ $Id: file.c 3688 2008-06-23 18:17:56Z pak21 $
+
+ 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.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+ Author contact information:
+
+ E-mail: phi...@sh...
+
+*/
+
+#include <config.h>
+
+#include <errno.h>
+#include <fcntl.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+
+#include "compat.h"
+#include "ui/ui.h"
+
+const compat_fd COMPAT_FILE_OPEN_FAILED = NULL;
+
+compat_fd
+compat_file_open( const char *path, int write )
+{
+ return fopen( path, write ? "w" : "r" );
+}
+
+off_t
+compat_file_get_length( compat_fd fd )
+{
+ struct stat file_info;
+
+ if( fstat( fileno( fd ), &file_info ) ) {
+ ui_error( UI_ERROR_ERROR, "couldn't stat file: %s", strerror( errno ) );
+ return -1;
+ }
+
+ return file_info.st_size;
+}
+
+int
+compat_file_read( compat_fd fd, utils_file *file )
+{
+ size_t bytes = fread( file->buffer, 1, file->length, fd );
+ if( bytes != file->length ) {
+ ui_error( UI_ERROR_ERROR,
+ "error reading file: expected %d bytes, but read only %d",
+ file->length, bytes );
+ return 1;
+ }
+
+ return 0;
+}
+
+int
+compat_file_write( compat_fd fd, const unsigned char *buffer, size_t length )
+{
+ size_t bytes = fwrite( buffer, 1, length, fd );
+ if( bytes != length ) {
+ ui_error( UI_ERROR_ERROR,
+ "error writing file: expected %d bytes, but wrote only %d",
+ length, bytes );
+ return 1;
+ }
+
+ return 0;
+}
+
+int
+compat_file_close( compat_fd fd )
+{
+ return fclose( fd );
+}
Modified: vendor/fuse-emulator/current/fuse/compat/win32/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/compat/win32/Makefile.am 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/compat/win32/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
-## Copyright (c) 2007 Philip Kendall
+## Copyright (c) 2007-2008 Philip Kendall
-## $Id: Makefile.am 3115 2007-08-19 02:49:14Z fredm $
+## $Id: Makefile.am 3687 2008-06-23 11:55:23Z pak21 $
## 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
@@ -27,7 +27,8 @@
noinst_LIBRARIES = libcompatos.a
-libcompatos_a_SOURCES = osname.c \
+libcompatos_a_SOURCES = ../unix/file.c \
+ osname.c \
paths.c
INCLUDES = @GLIB_CFLAGS@ @GTK_CFLAGS@ @LIBSPEC_CFLAGS@
Modified: vendor/fuse-emulator/current/fuse/compat.h
===================================================================
--- vendor/fuse-emulator/current/fuse/compat.h 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/compat.h 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* compat.h: various compatibility bits
- Copyright (c) 2003 Philip Kendall
+ Copyright (c) 2003-2008 Philip Kendall
- $Id: compat.h 3129 2007-08-30 12:46:32Z pak21 $
+ $Id: compat.h 3687 2008-06-23 11:55:23Z pak21 $
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
@@ -28,6 +28,8 @@
#include <stdlib.h>
+#include <utils.h>
+
/* Remove the gcc-specific incantations if we're not using gcc */
#ifdef __GNUC__
@@ -43,14 +45,6 @@
#endif /* #ifdef __GNUC__ */
-/* Certain brain damaged operating systems (DOS/Windows) treat text
- and binary files different in open(2) and need to be given the
- O_BINARY flag to tell them it's a binary file */
-#ifndef O_BINARY
-#define O_BINARY 0
-#endif /* #ifndef O_BINARY */
-
-/* Replacement functions */
#ifndef HAVE_DIRNAME
char *dirname( char *path );
#endif /* #ifndef HAVE_DIRNAME */
@@ -77,4 +71,19 @@
const char* compat_get_home_path( void );
int compat_is_absolute_path( const char *path );
+#ifndef UI_WII
+typedef int compat_fd;
+#else /* #ifndef UI_WII */
+typedef FILE* compat_fd;
+#endif /* #ifndef UI_WII */
+
+extern const compat_fd COMPAT_FILE_OPEN_FAILED;
+
+compat_fd compat_file_open( const char *path, int write );
+off_t compat_file_get_length( compat_fd fd );
+int compat_file_read( compat_fd fd, utils_file *file );
+int compat_file_write( compat_fd fd, const unsigned char *buffer,
+ size_t length );
+int compat_file_close( compat_fd fd );
+
#endif /* #ifndef FUSE_COMPAT_H */
Modified: vendor/fuse-emulator/current/fuse/configure.in
===================================================================
--- vendor/fuse-emulator/current/fuse/configure.in 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/configure.in 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-dnl $Id: configure.in 3609 2008-05-01 13:17:56Z fredm $
+dnl $Id: configure.in 3756 2008-08-24 13:41:23Z specu $
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
@@ -94,6 +94,8 @@
AC_CHECK_HEADER(windows.h,
LIBS="$LIBS -mwindows -lcomctl32";
AC_DEFINE([UI_WIN32], 1, [Defined if Win32 UI in use])
+ AC_DEFINE([WINVER], 0x0400, [Minimal supported version of Windows is 95 or NT4])
+ AC_DEFINE([_WIN32_IE], 0x400, [Internet Explorer is 4.0 or higher is required])
UI=win32; UI_LIBS="ui/win32/libuiwin32.a",
AC_MSG_ERROR([Win32 UI not found]))
fi
@@ -363,7 +365,8 @@
AC_CHECK_HEADER(
dsound.h,
[dxsound_available=yes],
- [AC_MSG_WARN(dsound.h not found - no DirectSound output)]
+ [AC_MSG_WARN(dsound.h not found - no DirectSound output)],
+ [#define DIRECTSOUND_VERSION 0x0700]
)
dnl Check if MS Windows Multimedia API sound is available
@@ -402,15 +405,16 @@
dnl
AC_MSG_CHECKING(which sound routines to use)
-if test "$dxsound_available" = yes; then
+if test "$UI" = sdl; then
+ SOUND_LIBADD='sdlsound.$(OBJEXT)' SOUND_LIBS='' sound_fifo=yes
+ AC_MSG_RESULT(SDL)
+elif test "$dxsound_available" = yes; then
SOUND_LIBADD='dxsound.$(OBJEXT)' SOUND_LIBS='-ldsound -lole32 -ldxguid'
AC_MSG_RESULT(DirectX)
+ AC_DEFINE([DIRECTSOUND_VERSION], 0x0700, [DirectX 7 or higher is required])
elif test "$win32sound_available" = yes; then
SOUND_LIBADD='win32sound.$(OBJEXT)' SOUND_LIBS='-lwinmm'
AC_MSG_RESULT(win32sound)
-elif test "$UI" = sdl; then
- SOUND_LIBADD='sdlsound.$(OBJEXT)' SOUND_LIBS='' sound_fifo=yes
- AC_MSG_RESULT(SDL)
elif test "$alsa_available" = yes; then
SOUND_LIBADD='alsasound.$(OBJEXT)' SOUND_LIBS='-lasound'
AC_MSG_RESULT(ALSA)
Modified: vendor/fuse-emulator/current/fuse/dck.c
===================================================================
--- vendor/fuse-emulator/current/fuse/dck.c 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/dck.c 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* dck.c: dock snapshot (Warajevo .DCK) handling routines
Copyright (c) 2003-2004 Darren Salt, Fredrick Meunier, Philip Kendall
- $Id: dck.c 3609 2008-05-01 13:17:56Z fredm $
+ $Id: dck.c 3703 2008-06-30 20:36:11Z pak21 $
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
@@ -99,7 +99,7 @@
return 0;
}
- error = libspectrum_dck_alloc( &dck ); if( error ) return error;
+ dck = libspectrum_dck_alloc();
error = utils_read_file( settings_current.dck_file, &file );
if( error ) { libspectrum_dck_free( dck, 0 ); return error; }
Modified: vendor/fuse-emulator/current/fuse/debugger/Makefile.am
===================================================================
--- vendor/fuse-emulator/current/fuse/debugger/Makefile.am 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/debugger/Makefile.am 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
-## Copyright (c) 2001-2004 Philip Kendall
+## Copyright (c) 2001-2008 Philip Kendall
-## $Id: Makefile.am 3150 2007-09-05 14:05:00Z pak21 $
+## $Id: Makefile.am 3657 2008-06-08 15:04:37Z pak21 $
## 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
@@ -35,7 +35,9 @@
commandy.y \
debugger.c \
disassemble.c \
- expression.c
+ event.c \
+ expression.c \
+ variable.c
commandl.c: commandy.c
commandy.h: commandy.c
Modified: vendor/fuse-emulator/current/fuse/debugger/breakpoint.c
===================================================================
--- vendor/fuse-emulator/current/fuse/debugger/breakpoint.c 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/debugger/breakpoint.c 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* breakpoint.c: a debugger breakpoint
- Copyright (c) 2002-2007 Philip Kendall
+ Copyright (c) 2002-2008 Philip Kendall
- $Id: breakpoint.c 3138 2007-09-02 12:19:16Z pak21 $
+ $Id: breakpoint.c 3685 2008-06-21 12:37:24Z pak21 $
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
@@ -26,6 +26,7 @@
#include <config.h>
#include <ctype.h>
+#include <string.h>
#include <libspectrum.h>
@@ -43,11 +44,11 @@
/* Textual representations of the breakpoint types and lifetimes */
const char *debugger_breakpoint_type_text[] = {
- "Execute", "Read", "Write", "Port Read", "Port Write", "Time",
+ "Execute", "Read", "Write", "Port Read", "Port Write", "Time", "Event",
};
const char debugger_breakpoint_type_abbr[][4] = {
- "Exe", "Rd", "Wr", "PtR", "PtW", "Tm",
+ "Exe", "Rd", "Wr", "PtR", "PtW", "Tm", "Ev",
};
const char *debugger_breakpoint_life_text[] = {
@@ -146,11 +147,46 @@
fuse_abort();
}
- value.tstates = tstates;
+ value.time.tstates = tstates;
return breakpoint_add( type, value, ignore, life, condition );
}
+int
+debugger_breakpoint_add_event( debugger_breakpoint_type type,
+ const char *type_string, const char *detail,
+ size_t ignore, debugger_breakpoint_life life,
+ debugger_expression *condition )
+{
+ debugger_breakpoint_value value;
+
+ switch( type ) {
+ case DEBUGGER_BREAKPOINT_TYPE_EVENT:
+ break;
+
+ default:
+ ui_error( UI_ERROR_ERROR, "%s given type %d", __func__, type );
+ fuse_abort();
+ }
+
+ if( !debugger_event_is_registered( type_string, detail ) ) {
+ ui_error( UI_ERROR_WARNING, "Event type %s:%s not known", type_string,
+ detail );
+ return 1;
+ }
+
+ value.event.detail = NULL;
+ value.event.type = strdup( type_string );
+ value.event.detail = strdup( detail );
+ if( !value.event.type || !value.event.detail ) {
+ free( value.event.type );
+ free( value.event.detail );
+ return 1;
+ }
+
+ return breakpoint_add( type, value, ignore, life, condition );
+}
+
static int
breakpoint_add( debugger_breakpoint_type type, debugger_breakpoint_value value,
size_t ignore, debugger_breakpoint_life life,
@@ -158,7 +194,7 @@
{
debugger_breakpoint *bp;
- bp = malloc( sizeof( debugger_breakpoint ) );
+ bp = malloc( sizeof( *bp ) );
if( !bp ) {
ui_error( UI_ERROR_ERROR, "Out of memory at %s:%d", __FILE__, __LINE__ );
return 1;
@@ -167,8 +203,18 @@
bp->id = next_breakpoint_id++; bp->type = type;
bp->value = value;
bp->ignore = ignore; bp->life = life;
- bp->condition = condition;
+ if( condition ) {
+ bp->condition = debugger_expression_copy( condition );
+ if( !bp->condition ) {
+ free( bp );
+ return 1;
+ }
+ } else {
+ bp->condition = NULL;
+ }
+ bp->commands = NULL;
+
debugger_breakpoints = g_slist_append( debugger_breakpoints, bp );
if( debugger_mode == DEBUGGER_MODE_INACTIVE )
@@ -179,7 +225,7 @@
if( type == DEBUGGER_BREAKPOINT_TYPE_TIME ) {
int error;
- error = event_add( value.tstates, EVENT_TYPE_BREAKPOINT );
+ error = event_add( value.time.tstates, debugger_breakpoint_event );
if( error ) return error;
}
@@ -203,16 +249,18 @@
if( breakpoint_check( bp, type, value ) ) {
debugger_mode = DEBUGGER_MODE_HALTED;
- return 1;
+ debugger_command_evaluate( bp->commands );
}
}
- return 0;
+ break;
case DEBUGGER_MODE_HALTED: return 1;
}
- return 0; /* Keep gcc happy */
+
+ /* Debugger mode could have been reset by a breakpoint command */
+ return ( debugger_mode == DEBUGGER_MODE_HALTED );
}
static int
@@ -296,6 +344,25 @@
return buffer;
}
+int
+debugger_breakpoint_trigger( debugger_breakpoint *bp )
+{
+ if( bp->ignore ) { bp->ignore--; return 0; }
+
+ if( bp->condition && !debugger_expression_evaluate( bp->condition ) )
+ return 0;
+
+ if( bp->life == DEBUGGER_BREAKPOINT_LIFE_ONESHOT ) {
+ debugger_breakpoints = g_slist_remove( debugger_breakpoints, bp );
+ free( bp );
+ }
+
+ if( bp->type == DEBUGGER_BREAKPOINT_TYPE_TIME )
+ bp->value.time.triggered = 1;
+
+ return 1;
+}
+
/* Check whether 'bp' should trigger if we're looking for a breakpoint
of 'type' with parameter 'value'. Returns non-zero if we should trigger */
static int
@@ -332,7 +399,7 @@
/* Timed breakpoints trigger if we're past the relevant time */
case DEBUGGER_BREAKPOINT_TYPE_TIME:
- if( bp->value.tstates > tstates ) return 0;
+ if( bp->value.time.triggered || bp->value.time.tstates > tstates ) return 0;
break;
default:
@@ -341,17 +408,7 @@
}
- if( bp->ignore ) { bp->ignore--; return 0; }
-
- if( bp->condition && !debugger_expression_evaluate( bp->condition ) )
- return 0;
-
- if( bp->life == DEBUGGER_BREAKPOINT_LIFE_ONESHOT ) {
- debugger_breakpoints = g_slist_remove( debugger_breakpoints, bp );
- free( bp );
- }
-
- return 1;
+ return debugger_breakpoint_trigger( bp );
}
struct remove_t {
@@ -378,7 +435,7 @@
struct remove_t remove;
- remove.tstates = bp->value.tstates;
+ remove.tstates = bp->value.time.tstates;
remove.done = 0;
event_foreach( remove_time, &remove );
@@ -424,9 +481,9 @@
if( remove->done ) return;
- if( event->type == EVENT_TYPE_BREAKPOINT &&
+ if( event->type == debugger_breakpoint_event &&
event->tstates == remove->tstates ) {
- event->type = EVENT_TYPE_NULL;
+ event->type = event_type_null;
remove->done = 1;
}
}
@@ -447,7 +504,7 @@
found++;
- free( ptr->data );
+ free_breakpoint( ptr->data, NULL );
debugger_breakpoints = g_slist_remove( debugger_breakpoints, ptr->data );
if( debugger_mode == DEBUGGER_MODE_ACTIVE && !debugger_breakpoints )
@@ -503,7 +560,24 @@
{
debugger_breakpoint *bp = data;
+ switch( bp->type ) {
+ case DEBUGGER_BREAKPOINT_TYPE_EVENT:
+ free( bp->value.event.type );
+ free( bp->value.event.detail );
+ break;
+
+ case DEBUGGER_BREAKPOINT_TYPE_EXECUTE:
+ case DEBUGGER_BREAKPOINT_TYPE_READ:
+ case DEBUGGER_BREAKPOINT_TYPE_WRITE:
+ case DEBUGGER_BREAKPOINT_TYPE_PORT_READ:
+ case DEBUGGER_BREAKPOINT_TYPE_PORT_WRITE:
+ case DEBUGGER_BREAKPOINT_TYPE_TIME:
+ /* No action needed */
+ break;
+ }
+
if( bp->condition ) debugger_expression_delete( bp->condition );
+ if( bp->commands ) free( bp->commands );
free( bp );
}
@@ -531,11 +605,29 @@
if( bp->condition ) debugger_expression_delete( bp->condition );
- bp->condition = condition;
+ if( condition ) {
+ bp->condition = debugger_expression_copy( condition );
+ if( !bp->condition ) return 1;
+ } else {
+ bp->condition = NULL;
+ }
return 0;
}
+int
+debugger_breakpoint_set_commands( size_t id, const char *commands )
+{
+ debugger_breakpoint *bp = get_breakpoint_by_id( id );
+ if( !bp ) return 1;
+
+ free( bp->commands );
+ bp->commands = strdup( commands );
+ if( !bp->commands ) return 1;
+
+ return 0;
+}
+
/* Add events corresponding to all the time events to happen during
this frame */
int
@@ -550,6 +642,15 @@
{
debugger_breakpoint *bp = data;
- if( bp->type == DEBUGGER_BREAKPOINT_TYPE_TIME )
- event_add( bp->value.tstates, EVENT_TYPE_BREAKPOINT );
+ if( bp->type == DEBUGGER_BREAKPOINT_TYPE_TIME ) {
+ bp->value.time.triggered = 0;
+ event_add( bp->value.time.tstates, debugger_breakpoint_event );
+ }
}
+
+void
+debugger_breakpoint_time_fn( libspectrum_dword tstates, int type GCC_UNUSED,
+ void *user_data GCC_UNUSED )
+{
+ debugger_check( DEBUGGER_BREAKPOINT_TYPE_TIME, 0 );
+}
Modified: vendor/fuse-emulator/current/fuse/debugger/breakpoint.h
===================================================================
--- vendor/fuse-emulator/current/fuse/debugger/breakpoint.h 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/debugger/breakpoint.h 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* breakpoint.h: a debugger breakpoint
- Copyright (c) 2002-2004 Philip Kendall
+ Copyright (c) 2002-2008 Philip Kendall
- $Id: breakpoint.h 2889 2007-05-26 17:45:08Z zubzero $
+ $Id: breakpoint.h 3662 2008-06-09 11:19:29Z pak21 $
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
@@ -34,6 +34,7 @@
DEBUGGER_BREAKPOINT_TYPE_PORT_READ,
DEBUGGER_BREAKPOINT_TYPE_PORT_WRITE,
DEBUGGER_BREAKPOINT_TYPE_TIME,
+ DEBUGGER_BREAKPOINT_TYPE_EVENT,
} debugger_breakpoint_type;
extern const char *debugger_breakpoint_type_text[];
@@ -71,11 +72,22 @@
} debugger_breakpoint_port;
+typedef struct debugger_breakpoint_time {
+ libspectrum_dword tstates;
+ int triggered;
+} debugger_breakpoint_time;
+
+typedef struct debugger_event_t {
+ char *type;
+ char *detail;
+} debugger_event_t;
+
typedef union debugger_breakpoint_value {
debugger_breakpoint_address address;
debugger_breakpoint_port port;
- libspectrum_dword tstates;
+ debugger_breakpoint_time time;
+ debugger_event_t event;
} debugger_breakpoint_value;
@@ -92,6 +104,9 @@
debugger_breakpoint_life life;
debugger_expression *condition; /* Conditional expression to activate this
breakpoint */
+
+ char *commands;
+
} debugger_breakpoint;
/* The current breakpoints */
@@ -118,6 +133,12 @@
size_t ignore, debugger_breakpoint_life life, debugger_expression *condition
);
+int
+debugger_breakpoint_add_event(
+ debugger_breakpoint_type type, const char *type_string, const char *detail,
+ size_t ignore, debugger_breakpoint_life life, debugger_expression *condition
+);
+
/* Add events corresponding to all the time breakpoints to happen
during this frame */
int debugger_add_time_events( void );
Modified: vendor/fuse-emulator/current/fuse/debugger/command.c
===================================================================
--- vendor/fuse-emulator/current/fuse/debugger/command.c 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/debugger/command.c 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* command.c: Parse a debugger command
- Copyright (c) 2002 Philip Kendall
+ Copyright (c) 2002-2008 Philip Kendall
- $Id: command.c 3115 2007-08-19 02:49:14Z fredm $
+ $Id: command.c 3631 2008-05-26 12:22:29Z pak21 $
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
@@ -31,6 +31,7 @@
#include "debugger.h"
#include "debugger_internals.h"
+#include "mempool.h"
#include "ui/ui.h"
#include "z80/z80.h"
#include "z80/z80_macros.h"
@@ -64,6 +65,9 @@
/* Parse the command */
yyparse();
+ /* And free any memory we allocated while parsing */
+ mempool_free( debugger_memory_pool );
+
ui_debugger_update();
return 0;
Modified: vendor/fuse-emulator/current/fuse/debugger/commandl.l
===================================================================
--- vendor/fuse-emulator/current/fuse/debugger/commandl.l 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/debugger/commandl.l 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* commandl.l: Debugger command lexical scanner
- Copyright (c) 2002 Philip Kendall
+ Copyright (c) 2002-2008 Philip Kendall
- $Id: commandl.l 3503 2008-01-30 14:58:55Z pak21 $
+ $Id: commandl.l 3712 2008-07-06 11:45:24Z pak21 $
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
@@ -31,6 +31,7 @@
#include "debugger.h"
#include "debugger_internals.h"
+#include "mempool.h"
#include "commandy.h"
@@ -39,23 +40,29 @@
if( !debugger_command_input( buf, &result, max_size ) ) result = YY_NULL; \
}
+#define YY_NO_INPUT
+
%}
-DIGIT [0-9]
-HEX [0-9a-f]
+ID [a-z][a-z0-9]+
%option caseless
+%s COMMANDSTATE1
+%x COMMANDSTATE2
+
%%
ba|bas|base { return BASE; }
br|bre|brea|break|breakp|breakpo|breakpoi|breakpoin|breakpoint { return BREAK;}
co|con|cont|contin|continu|continue { return CONTINUE; }
+com|comm|comma|comman|command|commands { BEGIN(COMMANDSTATE1); return COMMANDS; }
cond|condi|condit|conditi|conditio|condition { return CONDITION; }
cl|cle|clea|clear { return CLEAR; }
del|dele|delet|delete { return DEBUGGER_DELETE; }
di|dis|disa|disas|disass|disasse|disassm|disassmb|diasassmbl|disassemble {
return DISASSEMBLE; }
+ev|eve|even|event { return EVENT; }
ex|exi|exit { return EXIT; }
fi|fin|fini|finis|finish { return FINISH; }
if { return IF; }
@@ -64,6 +71,7 @@
o|ou|out { return DEBUGGER_OUT; } /* Different name to avoid clashing
with OUT from z80/z80_macros.h */
p|po|por|port { return PORT; }
+pr|pri|prin|print { return DEBUGGER_PRINT; }
r|re|rea|read { return READ; }
se|set { return SET; }
s|st|ste|step { return STEP; }
@@ -119,16 +127,36 @@
":" { return ':'; }
-${HEX}+ { yylval.integer = strtol( yytext+1, NULL, 16 );
+$[[:xdigit:]]+ { yylval.integer = strtol( yytext+1, NULL, 16 );
+ if( YY_START == COMMANDSTATE1 ) BEGIN( COMMANDSTATE2 );
return NUMBER; }
-0x{HEX}+ { yylval.integer = strtol( yytext+2, NULL, 16 );
+0x[[:xdigit:]]+ { yylval.integer = strtol( yytext+2, NULL, 16 );
+ if( YY_START == COMMANDSTATE1 ) BEGIN( COMMANDSTATE2 );
return NUMBER; }
-{DIGIT}+ { yylval.integer = atoi( yytext ); return NUMBER; }
+[[:digit:]]+ { yylval.integer = atoi( yytext );
+ if( YY_START == COMMANDSTATE1 ) BEGIN( COMMANDSTATE2 );
+ return NUMBER; }
-[cdrx]{DIGIT}+ { yylval.integer = debugger_page_hash( yytext ); return PAGE; }
+[cdrx][[:digit:]]+ { yylval.integer = debugger_page_hash( yytext ); return PAGE; }
-[ \n]+ /* Swallow whitespace */
+{ID} { yylval.string = mempool_strdup( debugger_memory_pool, yytext ); return STRING; }
+${ID} { yylval.string = mempool_strdup( debugger_memory_pool, yytext + 1 ); return VARIABLE; }
+\n { return '\n'; }
+
+[ ]+ /* Swallow whitespace */
+
. { if( 0 ) unput( '\0' ); /* Prevent warning about yyunput
being defined and not used */
return DEBUGGER_ERROR; }
+
+ /* Debugger command parsing */
+
+<COMMANDSTATE2>{
+
+end { BEGIN(INITIAL); return DEBUGGER_END; }
+
+[^\n]* { yylval.string = mempool_strdup( debugger_memory_pool, yytext ); return STRING; }
+\n { return '\n'; }
+
+}
Modified: vendor/fuse-emulator/current/fuse/debugger/commandy.y
===================================================================
--- vendor/fuse-emulator/current/fuse/debugger/commandy.y 2008-05-10 23:53:25 UTC (rev 531)
+++ vendor/fuse-emulator/current/fuse/debugger/commandy.y 2008-09-28 12:26:43 UTC (rev 532)
@@ -1,7 +1,7 @@
/* commandy.y: Parse a debugger command
- Copyright (c) 2002-2004 Philip Kendall
+ Copyright (c) 2002-2008 Philip Kendall
- $Id: commandy.y 3503 2008-01-30 14:58:55Z pak21 $
+ $Id: commandy.y 3657 2008-06-08 15:04:37Z pak21 $
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
@@ -33,6 +33,7 @@
#include "debugger.h"
#include "debugger_internals.h"
+#include "mempool.h"
#include "ui/ui.h"
#include "z80/z80.h"
#include "z80/z80_macros.h"
@@ -48,6 +49,8 @@
int reg;
libspectrum_dword integer;
+ char *string;
+
debugger_breakpoint_type bptype;
debugger_breakpoint_life bplife;
struct { int value1; libspectrum_word value2; } pair;
@@ -56,6 +59,8 @@
}
+%debug
+
/* Tokens as returned from the Flex scanner (commandl.l) */
/* Some tokens are named DEBUGGER_* to avoid clashes with <windows.h> */
@@ -71,10 +76,13 @@
%token BREAK
%token TBREAK
%token CLEAR
+%token COMMANDS
%token CONDITION
%token CONTINUE
%token DEBUGGER_DELETE
%token DISASSEMBLE
+%token DEBUGGER_END
+%token EVENT
%token EXIT
%token FINISH
%token IF
@@ -82,6 +90,7 @@
%token NEXT
%token DEBUGGER_OUT
%token PORT
+%token DEBUGGER_PRINT
%token READ
%token SET
%token STEP
@@ -93,6 +102,9 @@
%token <integer> NUMBER
+%token <string> STRING
+%token <string> VARIABLE
+
%token DEBUGGER_ERROR
/* Derived types */
@@ -110,6 +122,9 @@
%type <exp> expressionornull
%type <exp> expression;
+%type <string> debuggercommand
+%type <string> debuggercommands
+
/* Operator precedences */
/* Low precedence */
@@ -132,6 +147,7 @@
input: /* empty */
| command
| error
+ | input '\n' command
;
command: BASE number { debugger_output_base = $2; }
@@ -149,7 +165,12 @@
debugger_breakpoint_add_time( DEBUGGER_BREAKPOINT_TYPE_TIME,
$3, 0, $1, $4 );
}
+ | breakpointlife EVENT STRING ':' STRING optionalcondition {
+ debugger_breakpoint_add_event( DEBUGGER_BREAKPOINT_TYPE_EVENT,
+ $3, $5, 0, $1, $6 );
+ }
| CLEAR numberorpc { debugger_breakpoint_clear( $2 ); }
+ | COMMANDS number '\n' debuggercommands DEBUGGER_END { debugger_breakpoint_set_commands( $2, $4 ); }
| CONDITION NUMBER expressionornull {
debugger_breakpoint_set_condition( $2, $3 );
}
@@ -164,8 +185,10 @@
}
| NEXT { debugger_next(); }
| DEBUGGER_OUT number NUMBER { debugger_port_write( $2, $3 ); }
+ | DEBUGGER_PRINT number { printf( "0x%x\n", $2 ); }
| SET NUMBER number { debugger_poke( $2, $3 ); }
| SET DEBUGGER_REGISTER number { debugger_register_set( $2, $3 ); }
+ | SET VARIABLE number { debugger_variable_set( $2, $3 ); }
| STEP { debugger_step(); }
;
@@ -204,66 +227,77 @@
number: expression { $$ = debugger_expression_evaluate( $1 ); }
;
-expression: NUMBER { $$ = debugger_expression_new_number( $1 );
+expression: NUMBER { $$ = debugger_expression_new_number( $1, debugger_memory_pool );
if( !$$ ) YYABORT;
}
- | DEBUGGER_REGISTER { $$ = debugger_expression_new_register( $1 );
+ | DEBUGGER_REGISTER { $$ = debugger_expression_new_register( $1, debugger_memory_pool );
if( !$$ ) YYABORT;
}
+ | VARIABLE { $$ = debugger_expression_new_variable( $1, debugger_memory_pool );
+ if( !$$ ) YYABORT;
+ }
| '(' expression ')' { $$ = $2; }
| '+' expression %prec NEGATE { $$ = $2; }
| '-' expression %prec NEGATE {
- $$ = debugger_expression_new_unaryop( '-', $2 );
+ $$ = debugger_expression_new_unaryop( '-', $2, debugger_memory_pool );
if( !$$ ) YYABORT;
}
| NEGATE expression {
- ...
[truncated message content] |