summaryrefslogtreecommitdiffstats
path: root/uisimulator
diff options
context:
space:
mode:
authorDan Everton <dan@iocaine.org>2006-08-12 10:28:30 +0000
committerDan Everton <dan@iocaine.org>2006-08-12 10:28:30 +0000
commit9d2929b79b22765701e9db240d967877d7f7bab8 (patch)
tree0829913b3e58ce5d1886358395d42c5cee80ce6c /uisimulator
parent509ee3d42cfe0660a107ae169a11cef9c0604b1f (diff)
downloadrockbox-9d2929b79b22765701e9db240d967877d7f7bab8.tar.gz
rockbox-9d2929b79b22765701e9db240d967877d7f7bab8.tar.bz2
rockbox-9d2929b79b22765701e9db240d967877d7f7bab8.zip
Remove Win32 and X11 simulator sources. They've been deprecated for a while in favour of the SDL sim. Time to go.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10543 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'uisimulator')
-rw-r--r--uisimulator/win32/Makefile69
-rw-r--r--uisimulator/win32/Makefile.vc6101
-rw-r--r--uisimulator/win32/SOURCES12
-rw-r--r--uisimulator/win32/UI-fmrecorder.bmpbin236864 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-gmini120.bmpbin195416 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-h100.bmpbin194120 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-h120.bmpbin194120 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-h300.bmpbin168408 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-ipod4g.bmpbin217604 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-ipodcolor.bmpbin131232 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-ipodnano.bmpbin85280 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-ondiofm.bmpbin104264 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-ondiosp.bmpbin104264 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-player.bmpbin238616 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-recorder.bmpbin219296 -> 0 bytes
-rw-r--r--uisimulator/win32/UI-recorderv2.bmpbin236864 -> 0 bytes
-rw-r--r--uisimulator/win32/atoi.h20
-rw-r--r--uisimulator/win32/button.c286
-rw-r--r--uisimulator/win32/debug-win32.c66
-rw-r--r--uisimulator/win32/dir-win32.c91
-rw-r--r--uisimulator/win32/dir-win32.h46
-rw-r--r--uisimulator/win32/kernel.c167
-rw-r--r--uisimulator/win32/lcd-win32.c326
-rw-r--r--uisimulator/win32/lcd-win32.h47
-rw-r--r--uisimulator/win32/panic-win32.c43
-rw-r--r--uisimulator/win32/plugin-win32.h48
-rwxr-xr-xuisimulator/win32/plugin.def2
-rw-r--r--uisimulator/win32/resource.h19
-rw-r--r--uisimulator/win32/rockbox.dsp626
-rw-r--r--uisimulator/win32/rockbox.icobin3638 -> 0 bytes
-rw-r--r--uisimulator/win32/sound.c201
-rw-r--r--uisimulator/win32/sound.h22
-rw-r--r--uisimulator/win32/sprintf.h36
-rw-r--r--uisimulator/win32/stdbool.h46
-rw-r--r--uisimulator/win32/string-win32.c34
-rw-r--r--uisimulator/win32/thread-win32.c80
-rw-r--r--uisimulator/win32/thread-win32.h23
-rw-r--r--uisimulator/win32/timefuncs.h8
-rw-r--r--uisimulator/win32/uisw32.c344
-rw-r--r--uisimulator/win32/uisw32.h168
-rw-r--r--uisimulator/win32/uisw32.rc76
-rw-r--r--uisimulator/win32/uisw32.sln21
-rw-r--r--uisimulator/win32/uisw32.suobin13312 -> 0 bytes
-rw-r--r--uisimulator/win32/uisw32.vcproj280
-rw-r--r--uisimulator/x11/Makefile60
-rw-r--r--uisimulator/x11/README6
-rw-r--r--uisimulator/x11/SOURCES14
-rw-r--r--uisimulator/x11/archos/rockbox112.bmpbin5222 -> 0 bytes
-rw-r--r--uisimulator/x11/atoi.h2
-rw-r--r--uisimulator/x11/button-x11.c321
-rw-r--r--uisimulator/x11/config-x11.h362
-rw-r--r--uisimulator/x11/kernel.c165
-rw-r--r--uisimulator/x11/lcd-x11.c262
-rw-r--r--uisimulator/x11/lcd-x11.h26
-rw-r--r--uisimulator/x11/oss_sound.c84
-rw-r--r--uisimulator/x11/resources.c113
-rw-r--r--uisimulator/x11/resources.h23
-rw-r--r--uisimulator/x11/screenhack.c579
-rw-r--r--uisimulator/x11/screenhack.h52
-rw-r--r--uisimulator/x11/sound.c140
-rw-r--r--uisimulator/x11/sound.h22
-rw-r--r--uisimulator/x11/sprintf.h12
-rw-r--r--uisimulator/x11/thread.c148
-rw-r--r--uisimulator/x11/timefuncs.h7
-rw-r--r--uisimulator/x11/uibasic.c277
-rw-r--r--uisimulator/x11/utils.h22
-rw-r--r--uisimulator/x11/version.h1
-rw-r--r--uisimulator/x11/visual.c544
-rw-r--r--uisimulator/x11/visual.h29
-rw-r--r--uisimulator/x11/vroot.h126
-rw-r--r--uisimulator/x11/xmu.h14
71 files changed, 0 insertions, 6719 deletions
diff --git a/uisimulator/win32/Makefile b/uisimulator/win32/Makefile
deleted file mode 100644
index 160924a0f3..0000000000
--- a/uisimulator/win32/Makefile
+++ /dev/null
@@ -1,69 +0,0 @@
-############################################################################
-# __________ __ ___.
-# Open \______ \ ____ ____ | | _\_ |__ _______ ___
-# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
-# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
-# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
-# \/ \/ \/ \/ \/
-# $Id$
-#
-# Copyright (C) 2002 by Daniel Stenberg <daniel@haxx.se>
-#
-# All files in this archive are subject to the GNU General Public License.
-# See the file COPYING in the source tree root for full license agreement.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-############################################################################
-
-SIMCOMMON = ../common
-
-DEPFILE = $(OBJDIR)/dep-simwin
-
-RM = rm -f
-DEBUG = -g
-
-INCLUDES = -I. -I$(SIMCOMMON) -I$(OBJDIR) -I$(FIRMDIR)/export -I$(APPSDIR) \
- -I$(BUILDDIR)
-
-DEFINES = -DHAVE_CONFIG_H -DGETTIMEOFDAY_TWO_ARGS -DSIMULATOR \
-$(TARGET) -DAPPSVERSION=\"$(VERSION)\" -DMEM=${MEMORYSIZE} $(EXTRA_DEFINES)
-
-# This sets up 'SRC' based on the files mentioned in SOURCES
-include $(TOOLSDIR)/makesrc.inc
-
-OBJS := $(SRC:%.c=$(OBJDIR)/%.o)
-
-SOURCES = $(SRC)
-DIRS = .
-
-CFLAGS = $(DEBUG) $(DEFINES) $(INCLUDES) -W -Wall -mno-cygwin
-
-OUTFILE = $(BUILDDIR)/libsim.a
-
-all: $(OUTFILE)
-
-$(OUTFILE): $(OBJS) $(OBJDIR)/UI256.bmp $(OBJDIR)/uisw32-res.o
- @echo "AR+RANLIB $@"
- @$(AR) ruv $@ $(OBJS) $(OBJDIR)/uisw32-res.o >/dev/null 2>&1
- @$(RANLIB) $@
-
-clean:
- @echo "cleaning simwin"
- @$(RM) $(OBJS) *~ core $(OUTFILE) $(OBJDIR)/uisw32-res.o \
- $(OBJDIR)/UI256.bmp $(DEPFILE)
- @$(MAKE) -C $(SIMCOMMON) clean
-
-################## Specific dependencies ##################
-$(OBJDIR)/UI256.bmp: UI-$(ARCHOS).bmp
- @echo UI
- @cp $< $@
-
-$(OBJDIR)/uisw32-res.o: uisw32.rc $(OBJDIR)/UI256.bmp
- @echo "WINDRES"
- @$(WINDRES) --include-dir $(OBJDIR) -i $< -o $@
-
-include $(TOOLSDIR)/make.inc
-
--include $(DEPFILE)
diff --git a/uisimulator/win32/Makefile.vc6 b/uisimulator/win32/Makefile.vc6
deleted file mode 100644
index d92f18d86d..0000000000
--- a/uisimulator/win32/Makefile.vc6
+++ /dev/null
@@ -1,101 +0,0 @@
-############################################################################
-# __________ __ ___.
-# Open \______ \ ____ ____ | | _\_ |__ _______ ___
-# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
-# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
-# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
-# \/ \/ \/ \/ \/
-# $Id$
-#
-# Copyright (C) 2002 by Felix Arends
-#
-# All files in this archive are subject to the GNU General Public License.
-# See the file COPYING in the source tree root for full license agreement.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-############################################################################
-
-
-#CHANGE THIS FIELD TO SPECIFY RECORDER OR PLAYER (Player does not work very well atm)
-TARGET = RECORDER
-
-FIRMWAREDIR = ../../firmware
-DRIVERS = $(FIRMWAREDIR)/drivers
-COMMON = $(FIRMWAREDIR)/common
-APPSCOMMON = ../common
-TOOLSDIR = ..\..\tools
-SIMDIR = ../win32/
-APPDIR = ../../apps/
-PLAYERDIR = $(APPDIR)player/
-RECDIR = $(APPDIR)recorder/
-RM = del
-LANGUAGE = english
-FONT = $(FIRMWAREDIR)/fonts/clR6x8.bdf
-
-!IF ("$(TARGET)" == "RECORDER")
-DISPLAY = -DHAVE_LCD_BITMAP
-KEYPAD = -DHAVE_RECORDER_KEYPAD
-MODEL_SPECIFIC_DIR = $(RECDIR)
-!ELSE
-DISPLAY = -DHAVE_LCD_CHARCELLS
-KEYPAD = -DHAVE_PLAYER_KEYPAD
-MODEL_SPECIFIC_DIR = $(PLAYERDIR)
-!ENDIF
-
-CC = cl
-RC = rc
-LINK = link
-DEFINES = $(DEFINES) -DWIN32 -DHAVE_CONFIG_H -DGETTIMEOFDAY_TWO_ARGS -DSIMULATOR $(KEYPAD) $(DISPLAY) -DAPPSVERSION=\"WIN32SIM\"
-LDFLAGS = /OUT:uisw32.exe /SUBSYSTEM:windows /NOLOGO /MACHINE:IX86 kernel32.lib user32.lib gdi32.lib
-INCLUDES = -I$(FIRMWAREDIR)/export -I$(DRIVERS) -I$(COMMON) -I$(APPSCOMMON) -I$(SIMDIR) -I$(APPDIR) -I$(MODEL_SPECIFIC_DIR)
-LIBS = /DEFAULTLIB:gdi32.lib /DEFAULTLIB:user32.lib /NODEFAULTLIB:libc.lib
-
-CFLAGS = $(DEBUG) $(DEFINES) $(INCLUDES) /MD /Fd"Release/vc70.pdb" /c
-
-SRCS = *.c \
- $(DRIVERS)/power.c \
- $(APPDIR)*.c \
- $(APPSCOMMON)/lcd-common.c $(APPSCOMMON)/mpegplay.c $(APPSCOMMON)/sim_icons.c $(APPSCOMMON)/stubs.c \
- $(FIRMWAREDIR)/mpeg.c $(FIRMWAREDIR)/id3.c $(FIRMWAREDIR)/usb.c $(FIRMWAREDIR)/mpeg.c $(FIRMWAREDIR)/font.c $(FIRMWAREDIR)/powermgmt.c \
- $(COMMON)/sprintf.c $(COMMON)/strtok.c $(COMMON)/errno.c
-
-!IF ("$(DISPLAY)" == "-DHAVE_LCD_BITMAP")
-SRCS = $(SRCS) $(RECDIR)/bmp.c $(RECDIR)/bounce.c $(RECDIR)/cube.c $(RECDIR)/icons.c $(RECDIR)/keyboard.c $(RECDIR)/peakmeter.c \
- $(RECDIR)/snow.c $(RECDIR)/sokoban.c $(RECDIR)/tetris.c $(RECDIR)/widgets.c $(RECDIR)/wormlet.c $(DRIVERS)/lcd-recorder.c
-!ELSE
-SRCS = $(SRCS) $(APPSCOMMON)/lcd-playersim.c $(DRIVERS)/lcd-player.c $(PLAYERDIR)*.c
-!ENDIF
-
-OBJS = lang.obj $(SRCS:.c=.obj) uisw32.res
-
-all : uisw32.exe
-
-$(APPDIR)credits.raw:
- perl $(APPDIR)credits.pl < ../../docs/CREDITS > $(APPDIR)credits.raw
-
-kernel.obj:
- $(CC) $(CFLAGS) *.c
-
-sysfont.c: $(FONT)
- $(TOOLSDIR)\convbdf -c -o sysfont.c $(FONT)
-
-sysfont.obj: sysfont.c
- $(CC) $(CFLAGS) sysfont.c
-
-uisw32.exe: $(APPDIR)credits.raw $(OBJS) sysfont.obj kernel.obj
- $(LINK) $(LIBS) $(LDFLAGS) *.obj uisw32.res
-
-uisw32.res:
- $(RC) /r uisw32.rc
-
-build.lang: $(APPDIR)/lang/$(LANGUAGE).lang
- perl $(TOOLSDIR)/uplang $(APPDIR)/lang/english.lang $(APPDIR)/lang/$(LANGUAGE).lang > build.lang
-
-lang.obj: build.lang
- perl -s $(TOOLSDIR)/genlang -p=lang build.lang
- $(CC) $(CFLAGS) -c lang.c -o lang.obj
-
-clean:
- $(RM) *.obj ..\..\apps\lang.c ..\..\apps\lang.h ..\..\apps\credits.raw lang.build uisw32.res uisw32.exe
diff --git a/uisimulator/win32/SOURCES b/uisimulator/win32/SOURCES
deleted file mode 100644
index 29710fd82c..0000000000
--- a/uisimulator/win32/SOURCES
+++ /dev/null
@@ -1,12 +0,0 @@
-button.c
-debug-win32.c
-#if 0 /* this is only for non-cygwin simulator builds */
-dir-win32.c
-#endif
-kernel.c
-lcd-win32.c
-panic-win32.c
-string-win32.c
-thread-win32.c
-uisw32.c
-sound.c
diff --git a/uisimulator/win32/UI-fmrecorder.bmp b/uisimulator/win32/UI-fmrecorder.bmp
deleted file mode 100644
index 53f705b9ef..0000000000
--- a/uisimulator/win32/UI-fmrecorder.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-gmini120.bmp b/uisimulator/win32/UI-gmini120.bmp
deleted file mode 100644
index afeaf74801..0000000000
--- a/uisimulator/win32/UI-gmini120.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-h100.bmp b/uisimulator/win32/UI-h100.bmp
deleted file mode 100644
index caeb81bc4b..0000000000
--- a/uisimulator/win32/UI-h100.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-h120.bmp b/uisimulator/win32/UI-h120.bmp
deleted file mode 100644
index caeb81bc4b..0000000000
--- a/uisimulator/win32/UI-h120.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-h300.bmp b/uisimulator/win32/UI-h300.bmp
deleted file mode 100644
index 5f099b717a..0000000000
--- a/uisimulator/win32/UI-h300.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-ipod4g.bmp b/uisimulator/win32/UI-ipod4g.bmp
deleted file mode 100644
index 85af574d7c..0000000000
--- a/uisimulator/win32/UI-ipod4g.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-ipodcolor.bmp b/uisimulator/win32/UI-ipodcolor.bmp
deleted file mode 100644
index de5dad4ffe..0000000000
--- a/uisimulator/win32/UI-ipodcolor.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-ipodnano.bmp b/uisimulator/win32/UI-ipodnano.bmp
deleted file mode 100644
index e33f7e81da..0000000000
--- a/uisimulator/win32/UI-ipodnano.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-ondiofm.bmp b/uisimulator/win32/UI-ondiofm.bmp
deleted file mode 100644
index e258720d28..0000000000
--- a/uisimulator/win32/UI-ondiofm.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-ondiosp.bmp b/uisimulator/win32/UI-ondiosp.bmp
deleted file mode 100644
index c62c2334a3..0000000000
--- a/uisimulator/win32/UI-ondiosp.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-player.bmp b/uisimulator/win32/UI-player.bmp
deleted file mode 100644
index db4003b120..0000000000
--- a/uisimulator/win32/UI-player.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-recorder.bmp b/uisimulator/win32/UI-recorder.bmp
deleted file mode 100644
index 98937fea2d..0000000000
--- a/uisimulator/win32/UI-recorder.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/UI-recorderv2.bmp b/uisimulator/win32/UI-recorderv2.bmp
deleted file mode 100644
index 53f705b9ef..0000000000
--- a/uisimulator/win32/UI-recorderv2.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/atoi.h b/uisimulator/win32/atoi.h
deleted file mode 100644
index c95cfca64f..0000000000
--- a/uisimulator/win32/atoi.h
+++ /dev/null
@@ -1,20 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-int atoi(const char *);
diff --git a/uisimulator/win32/button.c b/uisimulator/win32/button.c
deleted file mode 100644
index 8f21fe4396..0000000000
--- a/uisimulator/win32/button.c
+++ /dev/null
@@ -1,286 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <windows.h>
-#include "uisw32.h"
-#include "config.h"
-#include "button.h"
-#include "kernel.h"
-#include "backlight.h"
-#include "misc.h"
-
-/* how long until repeat kicks in */
-#define REPEAT_START 6
-
-/* the speed repeat starts at */
-#define REPEAT_INTERVAL_START 4
-
-/* speed repeat finishes at */
-#define REPEAT_INTERVAL_FINISH 2
-
-struct event_queue button_queue;
-
-static int btn = 0; /* Hopefully keeps track of currently pressed keys... */
-
-void button_event(int key, bool pressed)
-{
- int new_btn = 0;
- int diff = 0;
- static int count = 0;
- static int lastbtn;
- static int repeat_speed = REPEAT_INTERVAL_START;
- static int repeat_count = 0;
- static bool repeat = false;
- static bool post = false;
-
- switch (key)
- {
- case VK_NUMPAD4:
- case VK_LEFT:
- new_btn = BUTTON_LEFT;
- break;
- case VK_NUMPAD6:
- case VK_RIGHT:
- new_btn = BUTTON_RIGHT;
- break;
-
- case VK_NUMPAD8:
- case VK_UP:
-#ifdef BUTTON_UP
- new_btn = BUTTON_UP;
-#elif defined BUTTON_SCROLL_FWD
- new_btn = BUTTON_SCROLL_FWD;
-#elif defined BUTTON_PLAY
- new_btn = BUTTON_PLAY;
-#endif
- break;
-
- case VK_NUMPAD2:
- case VK_DOWN:
-#ifdef BUTTON_DOWN
- new_btn = BUTTON_DOWN;
-#elif defined BUTTON_SCROLL_BACK
- new_btn = BUTTON_SCROLL_BACK;
-#elif defined BUTTON_STOP
- new_btn = BUTTON_STOP;
-#endif
- break;
-
- case VK_ADD:
-#ifdef BUTTON_ON
- new_btn = BUTTON_ON;
-#elif defined(BUTTON_SELECT) && defined(BUTTON_PLAY)
- new_btn = BUTTON_PLAY;
-#endif
- break;
-
-#ifdef BUTTON_OFF
- case VK_RETURN:
- new_btn = BUTTON_OFF;
- break;
-#endif
-
-#ifdef BUTTON_F1
- case VK_DIVIDE:
- case VK_F1:
- new_btn = BUTTON_F1;
- break;
- case VK_MULTIPLY:
- case VK_F2:
- new_btn = BUTTON_F2;
- break;
- case VK_SUBTRACT:
- case VK_F3:
- new_btn = BUTTON_F3;
- break;
-#elif defined(BUTTON_REC)
- case VK_DIVIDE:
- case VK_F1:
- new_btn = BUTTON_REC;
- break;
-#endif
-
- case VK_NUMPAD5:
- case VK_SPACE:
-#if defined(BUTTON_PLAY) && !defined(BUTTON_SELECT)
- new_btn = BUTTON_PLAY;
-#elif defined(BUTTON_SELECT)
- new_btn = BUTTON_SELECT;
-#endif
- break;
-
-#ifdef HAVE_LCD_BITMAP
- case VK_NUMPAD0:
- case VK_F5:
- if(pressed)
- {
- screen_dump();
- return;
- }
- break;
-#endif
-
- case VK_DECIMAL:
- case VK_INSERT:
-#ifdef BUTTON_MENU
- new_btn = BUTTON_MENU;
-#elif defined(BUTTON_MODE)
- new_btn = BUTTON_MODE;
-#endif
- break;
- }
-
- if (pressed)
- btn |= new_btn;
- else
- btn &= ~new_btn;
-
- /* Lots of stuff copied from real button.c. Not good, I think... */
-
- /* Find out if a key has been released */
- diff = btn ^ lastbtn;
-
- if(diff && (btn & diff) == 0)
- {
- queue_post(&button_queue, BUTTON_REL | diff, NULL);
- }
- else
- {
- if ( btn )
- {
- /* normal keypress */
- if ( btn != lastbtn )
- {
- post = true;
- repeat = false;
- repeat_speed = REPEAT_INTERVAL_START;
-
- }
- else /* repeat? */
- {
- if ( repeat )
- {
- if (!post)
- count--;
- if (count == 0)
- {
- post = true;
- /* yes we have repeat */
- repeat_speed--;
- if (repeat_speed < REPEAT_INTERVAL_FINISH)
- repeat_speed = REPEAT_INTERVAL_FINISH;
- count = repeat_speed;
-
- repeat_count++;
- }
- }
- else
- {
- if (count++ > REPEAT_START)
- {
- post = true;
- repeat = true;
- repeat_count = 0;
- /* initial repeat */
- count = REPEAT_INTERVAL_START;
- }
- }
- }
- if ( post )
- {
- if(repeat)
- {
- if (queue_empty(&button_queue))
- {
- queue_post(&button_queue, BUTTON_REPEAT | btn, NULL);
- post = false;
- }
- }
- else
- {
- queue_post(&button_queue, btn, NULL);
- post = false;
- }
-
-#ifdef HAVE_REMOTE_LCD
- if(btn & BUTTON_REMOTE)
- remote_backlight_on();
- else
-#endif
- backlight_on();
-
- }
- }
- else
- {
- repeat = false;
- count = 0;
- }
- }
- lastbtn = btn & ~(BUTTON_REL | BUTTON_REPEAT);
-}
-
-/* Again copied from real button.c... */
-
-long button_get(bool block)
-{
- struct event ev;
-
- if ( block || !queue_empty(&button_queue) ) {
- queue_wait(&button_queue, &ev);
- return ev.id;
- }
- return BUTTON_NONE;
-}
-
-long button_get_w_tmo(int ticks)
-{
- struct event ev;
- queue_wait_w_tmo(&button_queue, &ev, ticks);
- return (ev.id != SYS_TIMEOUT)? ev.id: BUTTON_NONE;
-}
-
-void button_init(void)
-{
-}
-
-int button_status(void)
-{
- return btn;
-}
-
-void button_clear_queue(void)
-{
- queue_clear(&button_queue);
-}
-
-#ifdef HAS_BUTTON_HOLD
-bool button_hold(void) {
- /* temp fix for hold button on irivers */
- return false;
-}
-#endif
-
-#ifdef HAS_REMOTE_BUTTON_HOLD
-bool remote_button_hold(void) {
- /* temp fix for hold button on irivers */
- return false;
-}
-#endif
-
diff --git a/uisimulator/win32/debug-win32.c b/uisimulator/win32/debug-win32.c
deleted file mode 100644
index dbc0f10e85..0000000000
--- a/uisimulator/win32/debug-win32.c
+++ /dev/null
@@ -1,66 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <windows.h>
-#include <stdio.h>
-
-char debugmembuf[200];
-
-void debug( const char *message )
-{
- static int debugger = -1;
-
- if (debugger == -1)
- {
- HINSTANCE hInst = LoadLibrary("kernel32.dll");
- debugger = 0;
-
- if (hInst != NULL)
- {
- FARPROC pIsDebuggerPresent = GetProcAddress(hInst, "IsDebuggerPresent");
- if (pIsDebuggerPresent != NULL)
- debugger = pIsDebuggerPresent();
- }
- }
-
- if (debugger)
- OutputDebugString (message);
- else
- printf("%s", message);
-}
-
-void debugf(const char *fmt, ...)
-{
- va_list ap;
-
- va_start( ap, fmt );
- wvsprintf( debugmembuf, fmt, ap );
- va_end( ap );
- debug ( debugmembuf );
-}
-
-void Logf(char *fmt, ...)
-{
- va_list ap;
-
- va_start( ap, fmt );
- wvsprintf( debugmembuf, fmt, ap );
- va_end( ap );
- debug ( debugmembuf );
-}
diff --git a/uisimulator/win32/dir-win32.c b/uisimulator/win32/dir-win32.c
deleted file mode 100644
index 6f14e798be..0000000000
--- a/uisimulator/win32/dir-win32.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <io.h>
-#include <windows.h>
-#include <malloc.h>
-#include "dir-win32.h"
-
-// Directory operations
-//
-
-// opendir
-// open directory for scanning
-DIR *opendir (
- const char *dirname // directory name
- )
-{
- DIR *p = (DIR*)malloc(sizeof(DIR));
- struct _finddata_t fd;
- unsigned int i;
- char *s = (char*)malloc(strlen(dirname) + 5);
- wsprintf (s, "%s", dirname);
-
- for (i = 0; i < strlen(s); i++)
- if (s[i] == '/')
- s[i] = '\\';
-
- if (s[i - 1] != '\\')
- {
- s[i] = '\\';
- s[++i] = '\0';
- }
-
- OutputDebugString (s);
-
- wsprintf (s, "%s*.*", s);
-
- if ((p->handle = _findfirst (s, &fd)) == -1)
- {
- free (s);
- free (p);
- return 0;
- }
- free (s);
- return p;
-}
-
-// closedir
-// close directory
-int closedir (
- DIR *dir // previously opened dir search
- )
-{
- free(dir);
- return 0;
-}
-
-// read dir
-// read next entry in directory
-struct dirent *readdir (
- DIR *dir
- )
-{
- struct _finddata_t fd;
- if (_findnext (dir->handle, &fd) == -1)
- return 0;
- memcpy (dir->fd.d_name, fd.name, 256);
-
- dir->fd.attribute = fd.attrib & 0x3f;
- dir->fd.size = fd.size;
- dir->fd.startcluster = 0 ;
-
-
- return &dir->fd;
-}
diff --git a/uisimulator/win32/dir-win32.h b/uisimulator/win32/dir-win32.h
deleted file mode 100644
index 95ce326e9f..0000000000
--- a/uisimulator/win32/dir-win32.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Björn Stenberg
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-#ifndef _DIR_WIN32_H_
-#define _DIR_WIN32_H_
-
-#include <stdbool.h>
-
-struct dirent {
- unsigned char d_name[MAX_PATH];
- int attribute;
- int size;
- int startcluster;
-};
-
-typedef struct
-{
- struct dirent fd;
- int handle;
-} DIR;
-
-extern DIR* opendir(const char* name);
-extern int closedir(DIR* dir);
-extern int mkdir(const char* name);
-extern int rmdir(const char* name);
-
-extern struct dirent* readdir(DIR* dir);
-
-#define S_ISDIR(x) (((x) & _S_IFDIR) == _S_IFDIR)
-
-#endif
diff --git a/uisimulator/win32/kernel.c b/uisimulator/win32/kernel.c
deleted file mode 100644
index 34100a234e..0000000000
--- a/uisimulator/win32/kernel.c
+++ /dev/null
@@ -1,167 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <windows.h>
-#include "uisw32.h"
-#include "kernel.h"
-#include "thread-win32.h"
-#include "thread.h"
-#include "debug.h"
-
-static void (*tick_funcs[MAX_NUM_TICK_TASKS])(void);
-
-int set_irq_level (int level)
-{
- static int _lv = 0;
- return (_lv = level);
-}
-
-void queue_init(struct event_queue *q)
-{
- q->read = 0;
- q->write = 0;
-}
-
-void queue_delete(struct event_queue *q)
-{
- (void)q;
-}
-
-void queue_wait(struct event_queue *q, struct event *ev)
-{
- while(q->read == q->write)
- {
- switch_thread();
- }
-
- *ev = q->events[(q->read++) & QUEUE_LENGTH_MASK];
-}
-
-void queue_wait_w_tmo(struct event_queue *q, struct event *ev, int ticks)
-{
- unsigned int timeout = current_tick + ticks;
-
- while(q->read == q->write && TIME_BEFORE( current_tick, timeout ))
- {
- sleep(1);
- }
-
- if(q->read != q->write)
- {
- *ev = q->events[(q->read++) & QUEUE_LENGTH_MASK];
- }
- else
- {
- ev->id = SYS_TIMEOUT;
- }
-}
-
-void queue_post(struct event_queue *q, long id, void *data)
-{
- int wr;
- int oldlevel;
-
- oldlevel = set_irq_level(15<<4);
- wr = (q->write++) & QUEUE_LENGTH_MASK;
-
- q->events[wr].id = id;
- q->events[wr].data = data;
- set_irq_level(oldlevel);
-}
-
-bool queue_empty(const struct event_queue* q)
-{
- return ( q->read == q->write );
-}
-
-void queue_clear(struct event_queue* q)
-{
- /* fixme: This is potentially unsafe in case we do interrupt-like processing */
- q->read = 0;
- q->write = 0;
-}
-
-void switch_thread (void)
-{
- yield ();
-}
-
-void sim_tick_tasks(void)
-{
- int i;
-
- /* Run through the list of tick tasks */
- for(i = 0;i < MAX_NUM_TICK_TASKS;i++)
- {
- if(tick_funcs[i])
- {
- tick_funcs[i]();
- }
- }
-}
-
-int tick_add_task(void (*f)(void))
-{
- int i;
-
- /* Add a task if there is room */
- for(i = 0;i < MAX_NUM_TICK_TASKS;i++)
- {
- if(tick_funcs[i] == NULL)
- {
- tick_funcs[i] = f;
- return 0;
- }
- }
- DEBUGF("Error! tick_add_task(): out of tasks");
- return -1;
-}
-
-int tick_remove_task(void (*f)(void))
-{
- int i;
-
- /* Remove a task if it is there */
- for(i = 0;i < MAX_NUM_TICK_TASKS;i++)
- {
- if(tick_funcs[i] == f)
- {
- tick_funcs[i] = NULL;
- return 0;
- }
- }
-
- return -1;
-}
-
-/* TODO: Implement mutexes for win32 */
-void mutex_init(struct mutex *m)
-{
- (void)m;
-}
-
-void mutex_lock(struct mutex *m)
-{
- (void)m;
-}
-
-void mutex_unlock(struct mutex *m)
-{
- (void)m;
-}
diff --git a/uisimulator/win32/lcd-win32.c b/uisimulator/win32/lcd-win32.c
deleted file mode 100644
index 8afd025a16..0000000000
--- a/uisimulator/win32/lcd-win32.c
+++ /dev/null
@@ -1,326 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <windows.h>
-#include <process.h>
-#include "uisw32.h"
-#include "lcd.h"
-#include "lcd-playersim.h"
-#include "debug.h"
-
-#if LCD_DEPTH == 16
-unsigned short bitmap[LCD_HEIGHT][LCD_WIDTH]; /* the ui display */
-
-BITMAPINFO256 bmi =
-{
- {sizeof (BITMAPINFOHEADER),
- LCD_WIDTH, -LCD_HEIGHT, 1, 16,
- BI_BITFIELDS, 0, 0, 0, 3, 3,
- }, /* bitfield masks (RGB565) */
- {{0x00, 0xf8, 0, 0}, {0xe0, 0x07, 0, 0}, {0x1f, 0x00, 0, 0}}
-}; /* bitmap information */
-#else
-unsigned char bitmap[LCD_HEIGHT][LCD_WIDTH]; /* the ui display */
-RGBQUAD color_zero = {UI_LCD_BGCOLORLIGHT, 0};
-RGBQUAD color_max = {0, 0, 0, 0};
-
-BITMAPINFO256 bmi =
-{
- {sizeof (BITMAPINFOHEADER),
- LCD_WIDTH, -LCD_HEIGHT, 1, 8,
- BI_RGB, 0, 0, 0, 2, 2,
- },
- {} /* colour lookup table gets filled later */
-}; /* bitmap information */
-#endif
-
-#ifdef HAVE_LCD_BITMAP
-
-#ifdef HAVE_REMOTE_LCD
-unsigned char remote_bitmap[LCD_REMOTE_HEIGHT][LCD_REMOTE_WIDTH];
-RGBQUAD remote_color_zero = {UI_REMOTE_BGCOLORLIGHT, 0};
-RGBQUAD remote_color_max = {0, 0, 0, 0};
-
-BITMAPINFO256 remote_bmi =
-{
- {sizeof (BITMAPINFOHEADER),
- LCD_REMOTE_WIDTH, -LCD_REMOTE_HEIGHT, 1, 8,
- BI_RGB, 0, 0, 0, 2, 2,
- },
- {} /* colour lookup table gets filled later */
-};
-#endif
-
-void lcd_update(void)
-{
- lcd_update_rect(0, 0, LCD_WIDTH, LCD_HEIGHT);
-}
-
-void lcd_update_rect(int x_start, int y_start,
- int width, int height)
-{
- int x, y;
- int xmax, ymax;
- RECT r;
-
- ymax = y_start + height;
- xmax = x_start + width;
-
- if (hGUIWnd == NULL)
- _endthread ();
-
- if(xmax > LCD_WIDTH)
- xmax = LCD_WIDTH;
- if(ymax >= LCD_HEIGHT)
- ymax = LCD_HEIGHT;
-
- for (x = x_start; x < xmax; x++)
- for (y = y_start; y < ymax; y++)
- {
-#if LCD_DEPTH == 1
- bitmap[y][x] = ((lcd_framebuffer[y/8][x] >> (y & 7)) & 1);
-#elif LCD_DEPTH == 2
-#if LCD_PIXELFORMAT == HORIZONTAL_PACKING
- bitmap[y][x] = ((lcd_framebuffer[y][x/4] >> (2 * (x & 3))) & 3);
-#else
- bitmap[y][x] = ((lcd_framebuffer[y/4][x] >> (2 * (y & 3))) & 3);
-#endif
-#elif LCD_DEPTH == 16
-#if LCD_PIXELFORMAT == RGB565SWAPPED
- unsigned bits = lcd_framebuffer[y][x];
- bitmap[y][x] = (bits >> 8) | (bits << 8);
-#else
- bitmap[y][x] = lcd_framebuffer[y][x];
-#endif
-#endif
- }
-
- /* Invalidate only the window part that actually did change */
- GetClientRect (hGUIWnd, &r);
- r.left = (UI_LCD_POSX + (UI_LCD_WIDTH * x_start / LCD_WIDTH))
- * r.right / UI_WIDTH;
- r.top = (UI_LCD_POSY + (UI_LCD_HEIGHT * y_start / LCD_HEIGHT))
- * r.bottom / UI_HEIGHT;
- r.right = (UI_LCD_POSX + (UI_LCD_WIDTH * xmax / LCD_WIDTH))
- * r.right / UI_WIDTH;
- r.bottom = (UI_LCD_POSY + (UI_LCD_HEIGHT * ymax / LCD_HEIGHT))
- * r.bottom / UI_HEIGHT;
- InvalidateRect (hGUIWnd, &r, FALSE);
-}
-
-#ifdef HAVE_REMOTE_LCD
-
-extern unsigned char lcd_remote_framebuffer[LCD_REMOTE_HEIGHT/8][LCD_REMOTE_WIDTH];
-
-void lcd_remote_update (void)
-{
- lcd_remote_update_rect(0, 0, LCD_REMOTE_WIDTH, LCD_REMOTE_HEIGHT);
-}
-
-void lcd_remote_update_rect(int x_start, int y_start,
- int width, int height)
-{
- int x, y;
- int xmax, ymax;
- RECT r;
-
- ymax = y_start + height;
- xmax = x_start + width;
-
- if (hGUIWnd == NULL)
- _endthread ();
-
- if(xmax > LCD_REMOTE_WIDTH)
- xmax = LCD_REMOTE_WIDTH;
- if(ymax >= LCD_REMOTE_HEIGHT)
- ymax = LCD_REMOTE_HEIGHT;
-
- for (x = x_start; x < xmax; x++)
- for (y = y_start; y < ymax; y++)
- remote_bitmap[y][x] = ((lcd_remote_framebuffer[y/8][x] >> (y & 7)) & 1);
-
- /* Invalidate only the window part that actually did change */
- GetClientRect (hGUIWnd, &r);
- r.left = (UI_REMOTE_POSX + (UI_REMOTE_WIDTH * x_start / LCD_REMOTE_WIDTH))
- * r.right / UI_WIDTH;
- r.top = (UI_REMOTE_POSY + (UI_REMOTE_HEIGHT * y_start / LCD_REMOTE_HEIGHT))
- * r.bottom / UI_HEIGHT;
- r.right = (UI_REMOTE_POSX + (UI_REMOTE_WIDTH * xmax / LCD_REMOTE_WIDTH))
- * r.right / UI_WIDTH;
- r.bottom = (UI_REMOTE_POSY + (UI_REMOTE_HEIGHT * ymax / LCD_REMOTE_HEIGHT))
- * r.bottom / UI_HEIGHT;
- InvalidateRect (hGUIWnd, &r, FALSE);
-}
-
-#endif /* HAVE_REMOTE_LCD */
-#endif /* HAVE_LCD_BITMAP */
-
-#ifdef HAVE_LCD_CHARCELLS
-/* Defined in lcd-playersim.c */
-extern void lcd_print_char(int x, int y);
-extern bool lcd_display_redraw;
-extern unsigned char hardware_buffer_lcd[11][2];
-static unsigned char lcd_buffer_copy[11][2];
-
-void lcd_update(void)
-{
- int x, y;
- bool changed = false;
- RECT r;
-
- if (hGUIWnd == NULL)
- _endthread ();
-
- for (y = 0; y < 2; y++)
- {
- for (x = 0; x < 11; x++)
- {
- if (lcd_display_redraw ||
- lcd_buffer_copy[x][y] != hardware_buffer_lcd[x][y])
- {
- lcd_buffer_copy[x][y] = hardware_buffer_lcd[x][y];
- lcd_print_char(x, y);
- changed = true;
- }
- }
- }
- if (changed)
- {
- /* Invalidate only the window part that actually did change */
- GetClientRect (hGUIWnd, &r);
- r.left = UI_LCD_POSX * r.right / UI_WIDTH;
- r.top = UI_LCD_POSY * r.bottom / UI_HEIGHT;
- r.right = (UI_LCD_POSX + UI_LCD_WIDTH) * r.right / UI_WIDTH;
- r.bottom = (UI_LCD_POSY + UI_LCD_HEIGHT) * r.bottom / UI_HEIGHT;
- InvalidateRect (hGUIWnd, &r, FALSE);
- }
- lcd_display_redraw = false;
-}
-
-void drawdots(int color, struct coordinate *points, int count)
-{
- while (count--)
- {
- bitmap[points[count].y][points[count].x] = color;
- }
-}
-
-void drawrectangles(int color, struct rectangle *points, int count)
-{
- while (count--)
- {
- int x;
- int y;
- int ix;
- int iy;
-
- for (x = points[count].x, ix = 0; ix < points[count].width; x++, ix++)
- {
- for (y = points[count].y, iy = 0; iy < points[count].height; y++, iy++)
- {
- bitmap[y][x] = color;
- }
- }
- }
-}
-#endif /* HAVE_LCD_CHARCELLS */
-
-#if 0
-/* set backlight state of lcd */
-void lcd_backlight (bool on)
-{
- if (on)
- color_zero = {UI_LCD_BGCOLORLIGHT, 0};
- else
- color_zero = {UI_LCD_BGCOLOR, 0};
-
- lcdcolors(0, (1<<LCD_DEPTH), &color_zero, &color_max);
- InvalidateRect (hGUIWnd, NULL, FALSE);
-}
-#endif
-
-#if LCD_DEPTH <= 8
-/* set a range of bitmap indices to a gradient from startcolour to endcolour */
-void lcdcolors(int index, int count, RGBQUAD *start, RGBQUAD *end)
-{
- int i;
-
- bmi.bmiHeader.biClrUsed = index + count;
- bmi.bmiHeader.biClrImportant = index + count;
-
- count--;
- for (i = 0; i <= count; i++)
- {
- bmi.bmiColors[i+index].rgbRed = start->rgbRed
- + (end->rgbRed - start->rgbRed) * i / count;
- bmi.bmiColors[i+index].rgbGreen = start->rgbGreen
- + (end->rgbGreen - start->rgbGreen) * i / count;
- bmi.bmiColors[i+index].rgbBlue = start->rgbBlue
- + (end->rgbBlue - start->rgbBlue) * i / count;
- }
-}
-#endif
-
-#ifdef HAVE_REMOTE_LCD
-/* set a range of bitmap indices to a gradient from startcolour to endcolour */
-void lcdremotecolors(int index, int count, RGBQUAD *start, RGBQUAD *end)
-{
- int i;
-
- remote_bmi.bmiHeader.biClrUsed = index + count;
- remote_bmi.bmiHeader.biClrImportant = index + count;
-
- count--;
- for (i = 0; i <= count; i++)
- {
- remote_bmi.bmiColors[i+index].rgbRed = start->rgbRed
- + (end->rgbRed - start->rgbRed) * i / count;
- remote_bmi.bmiColors[i+index].rgbGreen = start->rgbGreen
- + (end->rgbGreen - start->rgbGreen) * i / count;
- remote_bmi.bmiColors[i+index].rgbBlue = start->rgbBlue
- + (end->rgbBlue - start->rgbBlue) * i / count;
- }
-}
-#endif
-
-/* initialise simulator lcd driver */
-void simlcdinit(void)
-{
-#if LCD_DEPTH <= 8
- lcdcolors(0, (1<<LCD_DEPTH), &color_zero, &color_max);
-#endif
-#ifdef HAVE_REMOTE_LCD
- lcdremotecolors(0, (1<<LCD_REMOTE_DEPTH), &remote_color_zero, &remote_color_max);
-#endif
-}
-
-#ifdef CONFIG_BACKLIGHT
-void sim_backlight(int value)
-{
- DEBUGF("backlight: %s\n", (value > 0) ? "on" : "off");
-}
-#endif
-
-#ifdef HAVE_REMOTE_LCD
-void sim_remote_backlight(int value)
-{
- DEBUGF("remote backlight: %s\n", (value > 0) ? "on" : "off");
-}
-#endif
-
diff --git a/uisimulator/win32/lcd-win32.h b/uisimulator/win32/lcd-win32.h
deleted file mode 100644
index b3533ad0cb..0000000000
--- a/uisimulator/win32/lcd-win32.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef __LCDWIN32_H__
-#define __LCDWIN32_H__
-
-#include "uisw32.h"
-#include "lcd.h"
-
-// BITMAPINFO256
-typedef struct
-{
- BITMAPINFOHEADER bmiHeader;
- RGBQUAD bmiColors[256];
-} BITMAPINFO256;
-
-#if LCD_DEPTH <= 8
-extern unsigned char bitmap[LCD_HEIGHT][LCD_WIDTH]; // the ui display
-#elif LCD_DEPTH <= 16
-extern unsigned short bitmap[LCD_HEIGHT][LCD_WIDTH]; // the ui display
-#endif
-extern BITMAPINFO256 bmi; // bitmap information
-
-#ifdef HAVE_REMOTE_LCD
-extern unsigned char remote_bitmap[LCD_REMOTE_HEIGHT][LCD_REMOTE_WIDTH];
-extern BITMAPINFO256 remote_bmi; // bitmap information
-#endif
-
-void simlcdinit(void);
-
-#endif // #ifndef __LCDWIN32_H__
diff --git a/uisimulator/win32/panic-win32.c b/uisimulator/win32/panic-win32.c
deleted file mode 100644
index 614510f3a8..0000000000
--- a/uisimulator/win32/panic-win32.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <windows.h>
-#include "debug.h"
-
-char panic_buf[128];
-
-// panic
-// whatever it says ;)
-void panic( char *message )
-{
- debugf ( message );
- PostQuitMessage (-1);
-}
-
-
-// panicf
-// formatted panic
-void panicf( char *fmt, ...)
-{
- va_list ap;
- va_start( ap, fmt );
- wsprintf( panic_buf, fmt, ap );
- va_end( ap );
- panic( panic_buf );
-}
diff --git a/uisimulator/win32/plugin-win32.h b/uisimulator/win32/plugin-win32.h
deleted file mode 100644
index dd1c79080b..0000000000
--- a/uisimulator/win32/plugin-win32.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 Björn Stenberg
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef _PLUGIN_WIN32_H_
-#define _PLUGIN_WIN32_H_
-
-#define BOOL win32_BOOL /* Avoid conflicts with BOOL/INT defined as */
-#define INT win32_INT /* enum values in settings.h */
-
-#include <windows.h>
-#include "plugin.h"
-#include "file.h"
-
-#define RTLD_NOW 0
-
-#undef filesize
-#define filesize win32_filesize
-
-#undef ftruncate
-#define ftruncate NULL
-
-typedef enum plugin_status (*plugin_fn)(struct plugin_api* api, void* param);
-
-#define dlopen(_x_, _y_) LoadLibrary(_x_)
-#define dlsym(_x_, _y_) (plugin_fn)GetProcAddress(_x_, _y_)
-#define dlclose(_x_) FreeLibrary(_x_)
-#define dlerror() "Unknown"
-
-int strcasecmp (const char *a, const char *b);
-int strncasecmp (const char *a, const char *b, size_t n);
-
-#endif
diff --git a/uisimulator/win32/plugin.def b/uisimulator/win32/plugin.def
deleted file mode 100755
index e37ce20d8f..0000000000
--- a/uisimulator/win32/plugin.def
+++ /dev/null
@@ -1,2 +0,0 @@
-EXPORTS
- __header
diff --git a/uisimulator/win32/resource.h b/uisimulator/win32/resource.h
deleted file mode 100644
index dc8a238d78..0000000000
--- a/uisimulator/win32/resource.h
+++ /dev/null
@@ -1,19 +0,0 @@
-//{{NO_DEPENDENCIES}}
-// Microsoft Visual C++ generated include file.
-// Used by uisw32.rc
-//
-#define IDB_BITMAP1 102
-#define IDR_JPG1 103
-#define IDB_BITMAP2 104
-#define IDB_UI 104
-
-// Next default values for new objects
-//
-#ifdef APSTUDIO_INVOKED
-#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 105
-#define _APS_NEXT_COMMAND_VALUE 40001
-#define _APS_NEXT_CONTROL_VALUE 1001
-#define _APS_NEXT_SYMED_VALUE 101
-#endif
-#endif
diff --git a/uisimulator/win32/rockbox.dsp b/uisimulator/win32/rockbox.dsp
deleted file mode 100644
index ae43fdf7bb..0000000000
--- a/uisimulator/win32/rockbox.dsp
+++ /dev/null
@@ -1,626 +0,0 @@
-# Microsoft Developer Studio Project File - Name="rockbox" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Application" 0x0101
-
-CFG=rockbox - Win32 Player
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "rockbox.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "rockbox.mak" CFG="rockbox - Win32 Player"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "rockbox - Win32 Recorder" (based on "Win32 (x86) Application")
-!MESSAGE "rockbox - Win32 Player" (based on "Win32 (x86) Application")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "rockbox___Win32_Recorder"
-# PROP BASE Intermediate_Dir "rockbox___Win32_Recorder"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "rockbox___Win32_Recorder"
-# PROP Intermediate_Dir "rockbox___Win32_Recorder"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../win32" /I "../../apps/recorder" /I "../../firmware/export" /I "../../firmware/drivers" /I "../../firmware/common" /I "../common" /I "../../apps" /D "ARCHOS_RECORDER" /D "HAVE_LCD_BITMAP" /D "HAVE_RECORDER_KEYPAD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "HAVE_CONFIG_H" /D "GETTIMEOFDAY_TWO_ARGS" /D "SIMULATOR" /D "HAVE_RTC" /D APPSVERSION=\"WIN32SIM\" /FR /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x407 /d "_DEBUG"
-# ADD RSC /l 0x407 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcmtd.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /pdbtype:sept
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "rockbox___Win32_Player"
-# PROP BASE Intermediate_Dir "rockbox___Win32_Player"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "rockbox___Win32_Player"
-# PROP Intermediate_Dir "rockbox___Win32_Player"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "../win32" /I "../../apps/player" /I "../../firmware/export" /I "../../firmware/drivers" /I "../../firmware/common" /I "../common" /I "../../apps" /D "ARCHOS_PLAYER" /D "HAVE_LCD_CHARCELLS" /D "HAVE_PLAYER_KEYPAD" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "HAVE_CONFIG_H" /D "GETTIMEOFDAY_TWO_ARGS" /D "SIMULATOR" /D APPSVERSION=\"WIN32SIM\" /FR /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x407 /d "_DEBUG"
-# ADD RSC /l 0x407 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib libcmtd.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /pdbtype:sept
-
-!ENDIF
-
-# Begin Target
-
-# Name "rockbox - Win32 Recorder"
-# Name "rockbox - Win32 Player"
-# Begin Group "Firmware"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\firmware\buffer.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\font.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\id3.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\mp3_playback.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\mp3data.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\mpeg.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\powermgmt.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\usb.c
-# End Source File
-# End Group
-# Begin Group "Drivers"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE="..\..\firmware\drivers\lcd-player-charset.c"
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE="..\..\firmware\drivers\lcd-player.c"
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE="..\common\lcd-playersim.c"
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE="..\..\firmware\drivers\lcd-recorder.c"
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\drivers\power.c
-# End Source File
-# End Group
-# Begin Group "Common"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\firmware\common\errno.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\common\random.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\common\sprintf.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\common\strtok.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\firmware\common\timefuncs.c
-# End Source File
-# End Group
-# Begin Group "Apps"
-
-# PROP Default_Filter ""
-# Begin Group "Player"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\apps\player\icons.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\player\icons.h
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\player\keyboard.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# End Group
-# Begin Group "Recorder"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\apps\recorder\bmp.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\recorder\icons.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\recorder\keyboard.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\recorder\peakmeter.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\recorder\widgets.c
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Exclude_From_Build 1
-
-!ENDIF
-
-# End Source File
-# End Group
-# Begin Source File
-
-SOURCE=..\..\apps\alarm_menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\bookmark.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\credits.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\debug_menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\filetypes.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\language.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\main.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\main_menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\misc.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\onplay.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\playlist.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\playlist_menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\playlist_viewer.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\plugin.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\screens.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\settings.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\settings_menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\sleeptimer.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\sound_menu.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\status.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\tree.c
-# End Source File
-# Begin Source File
-
-SOURCE="..\..\apps\wps-display.c"
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\wps.c
-# End Source File
-# End Group
-# Begin Group "Win32"
-
-# PROP Default_Filter ""
-# Begin Group "AppsCommon"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE="..\common\lcd-common.c"
-# End Source File
-# Begin Source File
-
-SOURCE=..\common\mpegplay.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\common\sim_icons.c
-# End Source File
-# Begin Source File
-
-SOURCE=..\common\stubs.c
-# End Source File
-# End Group
-# Begin Source File
-
-SOURCE=.\button.c
-# End Source File
-# Begin Source File
-
-SOURCE=".\debug-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE=".\dir-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE="..\common\font-player.c"
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Exclude_From_Build 1
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\common\io.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\kernel.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\lang.c
-# End Source File
-# Begin Source File
-
-SOURCE=".\lcd-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE=".\mpeg-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE=".\panic-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE=".\string-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE=.\sysfont.c
-# End Source File
-# Begin Source File
-
-SOURCE=".\thread-win32.c"
-# End Source File
-# Begin Source File
-
-SOURCE=.\uisw32.c
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# Begin Source File
-
-SOURCE=.\uisw32.rc
-# End Source File
-# End Group
-# Begin Group "Script inputs"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=..\..\firmware\fonts\clR6x8.bdf
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# Begin Custom Build - Creating font from $(InputPath)
-InputPath=..\..\firmware\fonts\clR6x8.bdf
-
-"sysfont.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- ..\..\tools\convbdf -c -o sysfont.c $(InputPath)
-
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# Begin Custom Build - Creating font from $(InputPath)
-InputPath=..\..\firmware\fonts\clR6x8.bdf
-
-"sysfont.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- ..\..\tools\convbdf -c -o sysfont.c $(InputPath)
-
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\docs\CREDITS
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# PROP Ignore_Default_Tool 1
-# Begin Custom Build - Creating credits from $(InputPath)
-InputPath=..\..\docs\CREDITS
-
-"../../apps/credits.raw" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- perl ../../apps/credits.pl < $(InputPath) > ../../apps/credits.raw
-
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# PROP Ignore_Default_Tool 1
-# Begin Custom Build - Creating credits from $(InputPath)
-InputPath=..\..\docs\CREDITS
-
-"../../apps/credits.raw" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- perl ../../apps/credits.pl < $(InputPath) > ../../apps/credits.raw
-
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# Begin Source File
-
-SOURCE=..\..\apps\lang\english.lang
-
-!IF "$(CFG)" == "rockbox - Win32 Recorder"
-
-# Begin Custom Build - Creating language files from $(InputPath)
-InputPath=..\..\apps\lang\english.lang
-
-BuildCmds= \
- perl -s ..\..\tools\genlang -p=lang $(InputPath)
-
-"lang.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"lang.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ELSEIF "$(CFG)" == "rockbox - Win32 Player"
-
-# Begin Custom Build - Creating language files from $(InputPath)
-InputPath=..\..\apps\lang\english.lang
-
-BuildCmds= \
- perl -s ..\..\tools\genlang -p=lang $(InputPath)
-
-"lang.c" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"lang.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-# End Custom Build
-
-!ENDIF
-
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/uisimulator/win32/rockbox.ico b/uisimulator/win32/rockbox.ico
deleted file mode 100644
index 0769e6aec8..0000000000
--- a/uisimulator/win32/rockbox.ico
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/sound.c b/uisimulator/win32/sound.c
deleted file mode 100644
index 54140f59e4..0000000000
--- a/uisimulator/win32/sound.c
+++ /dev/null
@@ -1,201 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2005 by Magnus Holmgren
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "autoconf.h"
-
-#ifdef ROCKBOX_HAS_SIMSOUND
-
-#define WINDOWS_LEAN_AND_MEAN
-#include <windows.h>
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdbool.h>
-
-#include "sound.h"
-#include "kernel.h"
-#include "thread-win32.h"
-#include "debug.h"
-
-static bool playing = false;
-
-void pcm_play_stop(void);
-
-static void sound_play_chunk(HWAVEOUT wave_out, LPWAVEHDR header,
- HANDLE event)
-{
- unsigned char* buf;
- long len;
-
- if (!(header->dwFlags & WHDR_DONE) || !sound_get_pcm)
- {
- return;
- }
-
- EnterCriticalSection(&CriticalSection);
- sound_get_pcm(&buf, &len);
- LeaveCriticalSection(&CriticalSection);
-
- if (len == 0)
- {
- DEBUGF("simulator got no pcm\n");
- sound_get_pcm = NULL;
- return;
- }
-
- header->lpData = buf;
- header->dwBufferLength = len;
- header->dwBytesRecorded = 0;
- header->dwUser = 0;
- header->dwFlags = 0;
- header->dwLoops = 1;
- header->lpNext = NULL;
- header->reserved = 0;
-
- if (MMSYSERR_NOERROR != waveOutPrepareHeader(wave_out, header,
- sizeof(*header)))
- {
- return;
- }
-
- ResetEvent(event);
-
- waveOutWrite(wave_out, header, sizeof(*header));
-}
-
-static int sound_init(LPHWAVEOUT wave_out, HANDLE event)
-{
- static const WAVEFORMATEX format =
- {
- WAVE_FORMAT_PCM, /* Format */
- 2, /* Number of channels */
- 44100, /* Samples per second */
- 44100 * 4, /* Bytes per second */
- 4, /* Block align */
- 16, /* Bits per sample */
- 0 /* Extra size */
- };
-
- if (MMSYSERR_NOERROR != waveOutOpen(wave_out, WAVE_MAPPER, &format,
- (DWORD_PTR) event, 0, CALLBACK_EVENT))
- {
- return -1;
- }
-
- /* Full volume on left and right */
- waveOutSetVolume(*wave_out, 0xffffffff);
-
- return 0;
-}
-
-void sound_playback_thread(void)
-{
- /* To get smooth playback, two buffers are needed, which are queued for
- * playback. (There can still be glitches though.)
- */
- HWAVEOUT wave_out;
- WAVEHDR header1;
- WAVEHDR header2;
- HANDLE event;
- int result = -1;
-
- if ((event = CreateEvent(NULL, FALSE, FALSE, NULL)))
- {
- result = sound_init(&wave_out, event);
- }
-
- while(-1 == result || !event)
- {
- Sleep(100000); /* Wait forever, can't play sound! */
- }
-
- while (true)
- {
- while (!sound_get_pcm)
- {
- /* TODO: fix a fine thread-synch mechanism here */
- Sleep(100);
- }
-
- DEBUGF("starting simulator playback\n");
- header1.dwFlags = WHDR_DONE;
- header2.dwFlags = WHDR_DONE;
- sound_play_chunk(wave_out, &header1, event);
- sound_play_chunk(wave_out, &header2, event);
-
- while (sound_get_pcm
- && (WAIT_FAILED != WaitForSingleObject(event, 1000)))
- {
- sound_play_chunk(wave_out, &header1, event);
- sound_play_chunk(wave_out, &header2, event);
- }
-
- pcm_play_stop();
-
- DEBUGF("stopping simulator playback\n");
-
- waveOutReset(wave_out);
- }
-}
-
-
-/* Stubs for PCM audio playback. */
-bool pcm_is_playing(void)
-{
- return playing;
-}
-
-void pcm_mute(bool state)
-{
- (void)state;
-}
-
-void pcm_play_pause(bool state)
-{
- (void)state;
-}
-
-bool pcm_is_paused(void)
-{
- return false;
-}
-
-void pcm_play_stop(void)
-{
- playing = false;
-}
-
-void pcm_init(void)
-{
-}
-
-void (*sound_get_pcm)(unsigned char** start, long* size);
-void pcm_play_data(void (*get_more)(unsigned char** start, long* size))
-{
- sound_get_pcm = get_more;
- playing = true;
-}
-
-long pcm_get_bytes_waiting(void)
-{
- return 0;
-}
-
-
-#endif /* ROCKBOX_HAS_SIMSOUND */
diff --git a/uisimulator/win32/sound.h b/uisimulator/win32/sound.h
deleted file mode 100644
index 87499cac8e..0000000000
--- a/uisimulator/win32/sound.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2005 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-void sound_playback_thread(void);
-
-extern void (*sound_get_pcm)(unsigned char** start, long* size);
diff --git a/uisimulator/win32/sprintf.h b/uisimulator/win32/sprintf.h
deleted file mode 100644
index 24e1d4e352..0000000000
--- a/uisimulator/win32/sprintf.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef __SPRINTF_H__
-#define __SPRINTF_H__
-
-#include <stddef.h>
-#include <stdarg.h>
-#include <stdio.h>
-
-int snprintf (char *buf, size_t size, const char *fmt, ...);
-char *strtok_r (char *, const char *, char **);
-
-int rockbox_fprintf (int fd, const char *fmt, ...);
-#define fprintf rockbox_fprintf
-
-int rockbox_vsnprintf (char *buf, int size, const char *fmt, va_list ap);
-#define vsnprintf rockbox_vsnprintf
-
-#endif /* __SPRINTF_H__ */
diff --git a/uisimulator/win32/stdbool.h b/uisimulator/win32/stdbool.h
deleted file mode 100644
index d91ef374b9..0000000000
--- a/uisimulator/win32/stdbool.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef __STDBOOL_H__
-#define __STDBOOL_H__ 1
-
-#ifndef __MINGW32__
-typedef unsigned int bool;
-#define __attribute__(s)
-
-#define true 1
-#define false 0
-#else
-
-typedef enum
-{
- false = 0,
- true = 1
-} bool;
-
-#define false false
-#define true true
-
-/* Signal that all the definitions are present. */
-#define __bool_true_false_are_defined 1
-
-#endif
-
-#endif /* __STDBOOL_H__ */
-
diff --git a/uisimulator/win32/string-win32.c b/uisimulator/win32/string-win32.c
deleted file mode 100644
index ced1a410ca..0000000000
--- a/uisimulator/win32/string-win32.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef __MINGW32__
-
-#include <string.h>
-
-int strcasecmp (const char *a, const char *b)
-{
- return stricmp (a, b);
-}
-
-int strncasecmp (const char *a, const char *b, size_t n)
-{
- return _strnicmp (a, b, n);
-}
-
-#endif
diff --git a/uisimulator/win32/thread-win32.c b/uisimulator/win32/thread-win32.c
deleted file mode 100644
index 7c33017c7e..0000000000
--- a/uisimulator/win32/thread-win32.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#define WINDOWS_LEAN_AND_MEAN
-#include <windows.h>
-#include <time.h>
-#include "thread-win32.h"
-#include "kernel.h"
-#include "debug.h"
-
-HANDLE lpThreads[256];
-int nThreads = 0,
- nPos = 0;
-long current_tick = 0;
-CRITICAL_SECTION CriticalSection;
-
-
-void yield(void)
-{
- LeaveCriticalSection(&CriticalSection);
- Sleep(1);
- EnterCriticalSection(&CriticalSection);
-}
-
-void sim_sleep(int ticks)
-{
- LeaveCriticalSection(&CriticalSection);
- Sleep((1000/HZ) * ticks);
- EnterCriticalSection(&CriticalSection);
-}
-
-DWORD WINAPI runthread (LPVOID lpParameter)
-{
- EnterCriticalSection(&CriticalSection);
- ((void(*)())lpParameter) ();
- LeaveCriticalSection(&CriticalSection);
- return 0;
-}
-
-int create_thread(void (*fp)(void), void* sp, int stk_size)
-{
- DWORD dwThreadID;
-
- (void)sp;
- (void)stk_size;
-
- if (nThreads == 256)
- return -1;
-
- lpThreads[nThreads++] = CreateThread (NULL,
- 0,
- runthread,
- fp,
- 0,
- &dwThreadID);
-
- return 0;
-}
-
-void init_threads(void)
-{
- InitializeCriticalSection(&CriticalSection);
- EnterCriticalSection(&CriticalSection);
-}
diff --git a/uisimulator/win32/thread-win32.h b/uisimulator/win32/thread-win32.h
deleted file mode 100644
index 467c47ee39..0000000000
--- a/uisimulator/win32/thread-win32.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-extern HANDLE lpThreads[256];
-extern int nPos,
- nThreads;
-extern CRITICAL_SECTION CriticalSection;
diff --git a/uisimulator/win32/timefuncs.h b/uisimulator/win32/timefuncs.h
deleted file mode 100644
index 8fbc5b1c85..0000000000
--- a/uisimulator/win32/timefuncs.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#include <stdio.h>
-#include <time.h>
-#include <stdbool.h>
-
-/* struct tm defined */
-struct tm *get_time(void);
-int set_time(const struct tm *tm);
-bool valid_time(const struct tm *tm);
diff --git a/uisimulator/win32/uisw32.c b/uisimulator/win32/uisw32.c
deleted file mode 100644
index 1b4dbbd410..0000000000
--- a/uisimulator/win32/uisw32.c
+++ /dev/null
@@ -1,344 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <windows.h>
-#include <process.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include "autoconf.h"
-#include "uisw32.h"
-#include "resource.h"
-#include "button.h"
-#include "thread.h"
-#include "thread-win32.h"
-#include "kernel.h"
-#include "sound.h"
-
-#ifndef LR_VGACOLOR /* Should be under MINGW32 builds? */
-#define LR_VGACOLOR LR_COLOR
-#endif
-
-// extern functions
-extern void app_main (void *); // mod entry point
-extern void new_key(int key);
-extern void sim_tick_tasks(void);
-
-void button_event(int key, bool pressed);
-
-// variables
-HWND hGUIWnd; // the GUI window handle
-unsigned int uThreadID; // id of mod thread
-PBYTE lpKeys;
-bool bActive; // window active?
-HANDLE hGUIThread; // thread for GUI
-#ifdef ROCKBOX_HAS_SIMSOUND
-HANDLE hSoundThread; // thread for sound
-#endif
-bool bIsWinNT; // Windows NT derivate?
-
-bool lcd_display_redraw=true; // Used for player simulator
-char having_new_lcd=true; // Used for player simulator
-
-// GUIWndProc
-// window proc for GUI simulator
-LRESULT CALLBACK GUIWndProc (
- HWND hWnd,
- UINT uMsg,
- WPARAM wParam,
- LPARAM lParam
- )
-{
- static HBITMAP hBkgnd;
- static HDC hMemDc;
-
- static LARGE_INTEGER persec, tick1, ticknow;
- long new_tick;
-
- switch (uMsg)
- {
- case WM_TIMER:
- QueryPerformanceCounter(&ticknow);
- new_tick = ((ticknow.QuadPart-tick1.QuadPart)*HZ)/persec.QuadPart;
- if (new_tick != current_tick)
- {
- long i;
- for (i = new_tick - current_tick; i > 0; i--)
- sim_tick_tasks();
- current_tick = new_tick;
- }
- return TRUE;
- case WM_ACTIVATE:
- if (LOWORD(wParam) == WA_ACTIVE || LOWORD(wParam) == WA_CLICKACTIVE)
- bActive = true;
- else
- bActive = false;
- return TRUE;
- case WM_CREATE:
- QueryPerformanceFrequency(&persec);
- QueryPerformanceCounter(&tick1);
- SetTimer (hWnd, TIMER_EVENT, 1, NULL);
-
- // load background image
- hBkgnd = (HBITMAP)LoadImage (GetModuleHandle (NULL),
- MAKEINTRESOURCE(IDB_UI), IMAGE_BITMAP, 0, 0, LR_VGACOLOR);
- hMemDc = CreateCompatibleDC (GetDC (hWnd));
- SelectObject (hMemDc, hBkgnd);
- return TRUE;
- case WM_SIZING:
- {
- LPRECT r = (LPRECT)lParam;
- char s[256];
- int v;
- int h_add = GetSystemMetrics (SM_CXSIZEFRAME) * 2 + 4;
- int v_add = GetSystemMetrics (SM_CYSIZEFRAME) * 2
- + GetSystemMetrics (SM_CYCAPTION) + 4;
-
- switch (wParam)
- {
- case WMSZ_BOTTOM:
- v = (r->bottom - r->top) / (UI_HEIGHT / 5);
- r->bottom = r->top + v * UI_HEIGHT / 5 + v_add;
- r->right = r->left + v * UI_WIDTH / 5 + h_add;
- break;
- case WMSZ_RIGHT:
- v = (r->right - r->left) / (UI_WIDTH / 5);
- r->bottom = r->top + v * UI_HEIGHT / 5 + v_add;
- r->right = r->left + v * UI_WIDTH / 5 + h_add;
- break;
- case WMSZ_TOP:
- v = (r->bottom - r->top) / (UI_HEIGHT / 5);
- r->top = r->bottom - v * UI_HEIGHT / 5 - v_add;
- r->right = r->left + v * UI_WIDTH / 5 + h_add;
- break;
- case WMSZ_LEFT:
- v = (r->right - r->left) / (UI_WIDTH / 5);
- r->bottom = r->top + v * UI_HEIGHT / 5 + v_add;
- r->left = r->right - v * UI_WIDTH / 5 - h_add;
- break;
- case WMSZ_BOTTOMRIGHT:
- v = ((r->right - r->left) * UI_HEIGHT
- +(r->bottom - r->top) * UI_WIDTH)
- / (2 * UI_WIDTH * UI_HEIGHT / 5);
- r->bottom = r->top + v * UI_HEIGHT / 5 + v_add;
- r->right = r->left + v * UI_WIDTH / 5 + h_add;
- break;
- case WMSZ_BOTTOMLEFT:
- v = ((r->right - r->left) * UI_HEIGHT
- +(r->bottom - r->top) * UI_WIDTH)
- / (2 * UI_WIDTH * UI_HEIGHT / 5);
- r->bottom = r->top + v * UI_HEIGHT / 5 + v_add;
- r->left = r->right - v * UI_WIDTH / 5 - h_add;
- break;
- case WMSZ_TOPRIGHT:
- v = ((r->right - r->left) * UI_HEIGHT
- +(r->bottom - r->top) * UI_WIDTH)
- / (2 * UI_WIDTH * UI_HEIGHT / 5);
- r->top = r->bottom - v * UI_HEIGHT / 5 - v_add;
- r->right = r->left + v * UI_WIDTH / 5 + h_add;
- break;
- case WMSZ_TOPLEFT:
- v = ((r->right - r->left) * UI_HEIGHT
- +(r->bottom - r->top) * UI_WIDTH)
- / (2 * UI_WIDTH * UI_HEIGHT / 5);
- r->top = r->bottom - v * UI_HEIGHT / 5 - v_add;
- r->left = r->right - v * UI_WIDTH / 5 - h_add;
- break;
- }
-
- wsprintf (s, UI_TITLE " @%d%%",
- (r->right - r->left - h_add + 1) * 100 / UI_WIDTH);
- SetWindowText (hWnd, s);
-
- return TRUE;
- }
- case WM_ERASEBKGND:
- {
- HDC hDc = (HDC) wParam;
- RECT r;
-
- GetClientRect (hWnd, &r);
- // blit background image to screen
- SetStretchBltMode(hDc, bIsWinNT ? HALFTONE : COLORONCOLOR);
- StretchBlt (hDc, 0, 0, r.right, r.bottom,
- hMemDc, 0, 0, UI_WIDTH, UI_HEIGHT, SRCCOPY);
- return TRUE;
- }
- case WM_PAINT:
- {
- PAINTSTRUCT ps;
- RECT r;
- HDC hDc = BeginPaint (hWnd, &ps);
-
- GetClientRect (hWnd, &r);
- // draw lcd screen
- SetStretchBltMode(hDc, bIsWinNT ? HALFTONE : COLORONCOLOR);
- StretchDIBits (hDc,
- UI_LCD_POSX * r.right / UI_WIDTH,
- UI_LCD_POSY * r.bottom / UI_HEIGHT,
- UI_LCD_WIDTH * r.right / UI_WIDTH,
- UI_LCD_HEIGHT * r.bottom / UI_HEIGHT,
- 0, 0, LCD_WIDTH, LCD_HEIGHT,
- bitmap, (BITMAPINFO *) &bmi, DIB_RGB_COLORS,
- SRCCOPY);
-#ifdef HAVE_REMOTE_LCD
- StretchDIBits (hDc,
- UI_REMOTE_POSX * r.right / UI_WIDTH,
- UI_REMOTE_POSY * r.bottom / UI_HEIGHT,
- UI_REMOTE_WIDTH * r.right / UI_WIDTH,
- UI_REMOTE_HEIGHT * r.bottom / UI_HEIGHT,
- 0, 0, LCD_REMOTE_WIDTH, LCD_REMOTE_HEIGHT,
- remote_bitmap, (BITMAPINFO *) &remote_bmi,
- DIB_RGB_COLORS, SRCCOPY);
-#endif
- EndPaint (hWnd, &ps);
- return TRUE;
- }
- case WM_CLOSE:
- // close simulator
- KillTimer (hWnd, TIMER_EVENT);
- hGUIWnd = NULL;
- PostQuitMessage (0);
- break;
- case WM_DESTROY:
- // close simulator
- hGUIWnd = NULL;
- PostQuitMessage (0);
- break;
- case WM_KEYDOWN:
- button_event(wParam, true);
- break;
- case WM_KEYUP:
- button_event(wParam, false);
- break;
- }
-
- return DefWindowProc (hWnd, uMsg, wParam, lParam);
-}
-
-// GUIStartup
-// register window class, show window, init GUI
-BOOL GUIStartup ()
-{
- WNDCLASS wc;
-
- // create window class
- ZeroMemory (&wc, sizeof(wc));
- wc.hbrBackground = GetSysColorBrush (COLOR_WINDOW);
- wc.hCursor = LoadCursor (NULL, IDC_ARROW);
- wc.hInstance = GetModuleHandle (NULL);
- wc.lpfnWndProc = GUIWndProc;
- wc.lpszClassName = "RockBoxUISimulator";
- wc.style = CS_HREDRAW | CS_VREDRAW;
-
- if (RegisterClass (&wc) == 0)
- return FALSE;
-
- // create window
- hGUIWnd = CreateWindowEx (
- WS_EX_OVERLAPPEDWINDOW,
- "RockBoxUISimulator", UI_TITLE,
- WS_VISIBLE | WS_SYSMENU | WS_OVERLAPPEDWINDOW,
- CW_USEDEFAULT, CW_USEDEFAULT,
- UI_WIDTH + GetSystemMetrics (SM_CXSIZEFRAME) * 2 +4,
- UI_HEIGHT + GetSystemMetrics (SM_CYSIZEFRAME) * 2 +
- GetSystemMetrics (SM_CYCAPTION) +4,
- NULL, NULL, GetModuleHandle (NULL), NULL);
-
- if (hGUIWnd == NULL)
- return FALSE;
-
- simlcdinit();
-
- return TRUE;
-}
-
-// GUIDown
-// destroy window, unregister window class
-int GUIDown ()
-{
- int i;
-
- DestroyWindow (hGUIWnd);
- CloseHandle (hGUIThread);
-#ifdef ROCKBOX_HAS_SIMSOUND
- CloseHandle (hSoundThread);
-#endif
-
- for (i = 0; i < nThreads; i++)
- {
- CloseHandle (lpThreads[i]);
- }
- return 0;
-}
-
-// GUIMessageLoop
-// standard message loop for GUI window
-void GUIMessageLoop ()
-{
- MSG msg;
- while (GetMessage (&msg, NULL, 0, 0))
- {
- TranslateMessage (&msg);
- DispatchMessage (&msg);
- }
-}
-
-
-// WinMain
-// program entry point
-int WINAPI WinMain (
- HINSTANCE hInstance, // current instance
- HINSTANCE hPrevInstance, // previous instance
- LPSTR lpCmd, // command line
- int nShowCmd // show command
- )
-{
- DWORD dwThreadID;
-
- (void)hInstance;
- (void)hPrevInstance;
- (void)lpCmd;
- (void)nShowCmd;
-
- /* default file mode should be O_BINARY to be consistent with rockbox */
- _fmode = _O_BINARY;
-
- bIsWinNT = ((GetVersion() & 0x80000000) == 0);
-
- if (!GUIStartup ())
- return 0;
-
- hGUIThread = CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE)app_main,
- NULL, 0, &dwThreadID);
-
- if (hGUIThread == NULL)
- return MessageBox (NULL, "Error creating gui thread!", "Error", MB_OK);
-
-#ifdef ROCKBOX_HAS_SIMSOUND
- hSoundThread = CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE)
- sound_playback_thread, NULL, 0, &dwThreadID);
-
- if (hSoundThread == NULL)
- MessageBox (NULL, "Error creating sound thread!", "Warning", MB_OK);
-#endif
-
- GUIMessageLoop ();
-
- return GUIDown ();
-}
diff --git a/uisimulator/win32/uisw32.h b/uisimulator/win32/uisw32.h
deleted file mode 100644
index 22a9015196..0000000000
--- a/uisimulator/win32/uisw32.h
+++ /dev/null
@@ -1,168 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Felix Arends
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#ifndef __UISW32_H__
-#define __UISW32_H__
-
-#ifdef _MSC_VER
-typedef unsigned short wchar_t;
-#define _WCHAR_T_DEFINED
-#endif
-#include <windows.h>
-#include "lcd-win32.h"
-
-#if defined(ARCHOS_RECORDER)
-#define UI_TITLE "Jukebox Recorder"
-#define UI_WIDTH 270 // width of GUI window
-#define UI_HEIGHT 406 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 126, 229, 126 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 80 // x position of lcd
-#define UI_LCD_POSY 104 // y position of lcd (96 for real aspect)
-#define UI_LCD_WIDTH 112
-#define UI_LCD_HEIGHT 64 // (80 for real aspect)
-
-#elif defined(ARCHOS_PLAYER)
-#define UI_TITLE "Jukebox Player"
-#define UI_WIDTH 284 // width of GUI window
-#define UI_HEIGHT 420 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 126, 229, 126 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 75 // x position of lcd
-#define UI_LCD_POSY 116 // y position of lcd
-#define UI_LCD_WIDTH 132
-#define UI_LCD_HEIGHT 64
-
-#elif defined(ARCHOS_FMRECORDER) || defined(ARCHOS_RECORDERV2)
-#define UI_TITLE "Jukebox FM Recorder"
-#define UI_WIDTH 285 // width of GUI window
-#define UI_HEIGHT 414 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 126, 229, 126 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 87 // x position of lcd
-#define UI_LCD_POSY 77 // y position of lcd (69 for real aspect)
-#define UI_LCD_WIDTH 112
-#define UI_LCD_HEIGHT 64 // (80 for real aspect)
-
-#elif defined(ARCHOS_ONDIOSP) || defined(ARCHOS_ONDIOFM)
-#define UI_TITLE "Ondio"
-#define UI_WIDTH 155 // width of GUI window
-#define UI_HEIGHT 334 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 90, 145, 90 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 21 // x position of lcd
-#define UI_LCD_POSY 82 // y position of lcd (74 for real aspect)
-#define UI_LCD_WIDTH 112
-#define UI_LCD_HEIGHT 64 // (80 for real aspect)
-
-#elif defined(IRIVER_H100_SERIES)
-#define UI_TITLE "iriver H1x0"
-#define UI_WIDTH 379 // width of GUI window
-#define UI_HEIGHT 508 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 230, 216, 173 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 109 // x position of lcd
-#define UI_LCD_POSY 23 // y position of lcd
-#define UI_LCD_WIDTH 160
-#define UI_LCD_HEIGHT 128
-#define UI_REMOTE_BGCOLOR 90, 145, 90 // bkgnd of remote lcd (no bklight)
-#define UI_REMOTE_BGCOLORLIGHT 250, 180, 130 // bkgnd of remote lcd (bklight)
-#define UI_REMOTE_POSX 50 // x position of remote lcd
-#define UI_REMOTE_POSY 403 // y position of remote lcd
-#define UI_REMOTE_WIDTH 128
-#define UI_REMOTE_HEIGHT 64
-
-#elif defined(IRIVER_H300_SERIES)
-#define UI_TITLE "iriver H300"
-#define UI_WIDTH 288 // width of GUI window
-#define UI_HEIGHT 581 // height of GUI window
-/* high-colour */
-#define UI_LCD_POSX 26 // x position of lcd
-#define UI_LCD_POSY 36 // y position of lcd
-#define UI_LCD_WIDTH 220
-#define UI_LCD_HEIGHT 176
-#define UI_REMOTE_BGCOLOR 90, 145, 90 // bkgnd of remote lcd (no bklight)
-#define UI_REMOTE_BGCOLORLIGHT 250, 180, 130 // bkgnd of remote lcd (bklight)
-#define UI_REMOTE_POSX 12 // x position of remote lcd
-#define UI_REMOTE_POSY 478 // y position of remote lcd
-#define UI_REMOTE_WIDTH 128
-#define UI_REMOTE_HEIGHT 64
-
-#elif defined(IPOD_4G)
-#define UI_TITLE "iPod 4G"
-#define UI_WIDTH 196 // width of GUI window
-#define UI_HEIGHT 370 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 173, 216, 230 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 19 // x position of lcd
-#define UI_LCD_POSY 14 // y position of lcd
-#define UI_LCD_WIDTH 160
-#define UI_LCD_HEIGHT 128
-
-#elif defined(IPOD_COLOR)
-#define UI_TITLE "iPod Color"
-#define UI_WIDTH 261 // width of GUI window
-#define UI_HEIGHT 493 // height of GUI window
-/* high-colour */
-#define UI_LCD_POSX 21 // x position of lcd
-#define UI_LCD_POSY 16 // y position of lcd
-#define UI_LCD_WIDTH 220
-#define UI_LCD_HEIGHT 176
-
-#elif defined(IPOD_NANO)
-#define UI_TITLE "iPod Nano"
-#define UI_WIDTH 199 // width of GUI window
-#define UI_HEIGHT 421 // height of GUI window
-/* high-colour */
-#define UI_LCD_POSX 13 // x position of lcd
-#define UI_LCD_POSY 14 // y position of lcd
-#define UI_LCD_WIDTH 176
-#define UI_LCD_HEIGHT 132
-
-#elif defined(ARCHOS_GMINI120)
-#define UI_TITLE "Gmini 120"
-#define UI_WIDTH 370 // width of GUI window
-#define UI_HEIGHT 264 // height of GUI window
-#define UI_LCD_BGCOLOR 90, 145, 90 // bkgnd color of LCD (no backlight)
-#define UI_LCD_BGCOLORLIGHT 230, 160, 60 // bkgnd color of LCD (backlight)
-#define UI_LCD_BLACK 0, 0, 0 // black
-#define UI_LCD_POSX 85 // x position of lcd
-#define UI_LCD_POSY 61 // y position of lcd (74 for real aspect)
-#define UI_LCD_WIDTH 192 // * 1.5
-#define UI_LCD_HEIGHT 96 // * 1.5
-
-#endif
-
-#define TIMER_EVENT 0x34928340
-
-extern HWND hGUIWnd; // the GUI window handle
-extern unsigned int uThreadID; // id of mod thread
-extern bool bActive;
-
-// typedefs
-typedef unsigned char uchar;
-typedef unsigned int uint32;
-
-#endif // #ifndef __UISW32_H__
diff --git a/uisimulator/win32/uisw32.rc b/uisimulator/win32/uisw32.rc
deleted file mode 100644
index 379b76ecb1..0000000000
--- a/uisimulator/win32/uisw32.rc
+++ /dev/null
@@ -1,76 +0,0 @@
-// Microsoft Visual C++ generated resource script.
-//
-#include "resource.h"
-
-#define APSTUDIO_READONLY_SYMBOLS
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 2 resource.
-//
-
-#ifndef __MINGW32__
- #include "afxres.h"
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-#undef APSTUDIO_READONLY_SYMBOLS
-
-/////////////////////////////////////////////////////////////////////////////
-// English (U.S.) resources
-
-#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
-#ifdef _WIN32
-#ifndef __MINGW32__
-LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
-#endif
-#pragma code_page(1252)
-#endif //_WIN32
-
-#ifdef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// TEXTINCLUDE
-//
-
-1 TEXTINCLUDE
-BEGIN
- "resource.h\0"
-END
-
-2 TEXTINCLUDE
-BEGIN
- "#include ""afxres.h""\r\n"
- "\0"
-END
-
-3 TEXTINCLUDE
-BEGIN
- "\r\n"
- "\0"
-END
-
-#endif // APSTUDIO_INVOKED
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Bitmap
-//
-
-IDB_UI BITMAP "UI256.bmp"
-IDI_ICON1 ICON DISCARDABLE "rockbox.ico"
-#endif // English (U.S.) resources
-/////////////////////////////////////////////////////////////////////////////
-
-
-
-#ifndef APSTUDIO_INVOKED
-/////////////////////////////////////////////////////////////////////////////
-//
-// Generated from the TEXTINCLUDE 3 resource.
-//
-
-
-/////////////////////////////////////////////////////////////////////////////
-#endif // not APSTUDIO_INVOKED
-
diff --git a/uisimulator/win32/uisw32.sln b/uisimulator/win32/uisw32.sln
deleted file mode 100644
index ada5e11e7c..0000000000
--- a/uisimulator/win32/uisw32.sln
+++ /dev/null
@@ -1,21 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 7.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uisw32", "uisw32.vcproj", "{A81A8EFA-647A-427A-BD04-F6B469752E7A}"
-EndProject
-Global
- GlobalSection(SolutionConfiguration) = preSolution
- ConfigName.0 = Debug
- ConfigName.1 = Release
- EndGlobalSection
- GlobalSection(ProjectDependencies) = postSolution
- EndGlobalSection
- GlobalSection(ProjectConfiguration) = postSolution
- {A81A8EFA-647A-427A-BD04-F6B469752E7A}.Debug.ActiveCfg = Debug|Win32
- {A81A8EFA-647A-427A-BD04-F6B469752E7A}.Debug.Build.0 = Debug|Win32
- {A81A8EFA-647A-427A-BD04-F6B469752E7A}.Release.ActiveCfg = Release|Win32
- {A81A8EFA-647A-427A-BD04-F6B469752E7A}.Release.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- EndGlobalSection
- GlobalSection(ExtensibilityAddIns) = postSolution
- EndGlobalSection
-EndGlobal
diff --git a/uisimulator/win32/uisw32.suo b/uisimulator/win32/uisw32.suo
deleted file mode 100644
index be68cf93f9..0000000000
--- a/uisimulator/win32/uisw32.suo
+++ /dev/null
Binary files differ
diff --git a/uisimulator/win32/uisw32.vcproj b/uisimulator/win32/uisw32.vcproj
deleted file mode 100644
index 449bb19adf..0000000000
--- a/uisimulator/win32/uisw32.vcproj
+++ /dev/null
@@ -1,280 +0,0 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="7.00"
- Name="uisw32"
- ProjectGUID="{A81A8EFA-647A-427A-BD04-F6B469752E7A}"
- Keyword="Win32Proj">
- <Platforms>
- <Platform
- Name="Win32"/>
- </Platforms>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="&quot;..\..\apps\recorder&quot;;&quot;..\..\apps&quot;;&quot;..\..\firmware&quot;;&quot;..\win32&quot;;&quot;..\..\firmware\drivers&quot;;&quot;..\..\firmware\common&quot;"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;HAVE_RECORDER_KEYPAD;HAVE_LCD_BITMAP;SIMULATOR;SIMULATOR;LCD_PROPFONTS;"
- MinimalRebuild="TRUE"
- BasicRuntimeChecks="3"
- RuntimeLibrary="1"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="FALSE"
- DebugInformationFormat="4"
- CompileAs="1"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/uisw32.exe"
- LinkIncremental="2"
- GenerateDebugInformation="TRUE"
- ProgramDatabaseFile="$(OutDir)/uisw32.pdb"
- SubSystem="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="1"
- CharacterSet="2">
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- InlineFunctionExpansion="1"
- OmitFramePointers="TRUE"
- AdditionalIncludeDirectories="&quot;..\..\firmware\drivers&quot;;&quot;..\..\firmware&quot;;&quot;..\..\firmware\common&quot;"
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;ARCHOS_RECORDER;SIMULATOR;WIN32"
- StringPooling="TRUE"
- RuntimeLibrary="0"
- EnableFunctionLevelLinking="TRUE"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="FALSE"
- DebugInformationFormat="3"
- CompileAs="1"/>
- <Tool
- Name="VCCustomBuildTool"/>
- <Tool
- Name="VCLinkerTool"
- OutputFile="$(OutDir)/uisw32.exe"
- LinkIncremental="1"
- GenerateDebugInformation="TRUE"
- SubSystem="2"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"/>
- <Tool
- Name="VCMIDLTool"/>
- <Tool
- Name="VCPostBuildEventTool"/>
- <Tool
- Name="VCPreBuildEventTool"/>
- <Tool
- Name="VCPreLinkEventTool"/>
- <Tool
- Name="VCResourceCompilerTool"/>
- <Tool
- Name="VCWebServiceProxyGeneratorTool"/>
- <Tool
- Name="VCWebDeploymentTool"/>
- </Configuration>
- </Configurations>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
- <File
- RelativePath="backlight-win32.c">
- </File>
- <File
- RelativePath="..\..\apps\recorder\bmp.c">
- </File>
- <File
- RelativePath="..\..\apps\recorder\bounce.c">
- </File>
- <File
- RelativePath="..\..\apps\recorder\boxes.c">
- </File>
- <File
- RelativePath="button.c">
- </File>
- <File
- RelativePath="..\..\firmware\chartables.c">
- </File>
- <File
- RelativePath="..\..\apps\credits.c">
- </File>
- <File
- RelativePath="debug-win32.c">
- </File>
- <File
- RelativePath="dir-win32.c">
- </File>
- <File
- RelativePath="..\..\apps\games_menu.c">
- </File>
- <File
- RelativePath="..\..\apps\recorder\icons.c">
- </File>
- <File
- RelativePath="..\..\firmware\id3.c">
- </File>
- <File
- RelativePath="kernel.c">
- </File>
- <File
- RelativePath="lcd-win32.c">
- </File>
- <File
- RelativePath="..\..\firmware\drivers\lcd.c">
- </File>
- <File
- RelativePath="..\..\apps\main.c">
- </File>
- <File
- RelativePath="..\..\apps\main_menu.c">
- </File>
- <File
- RelativePath="..\..\apps\menu.c">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)/$(InputName)1.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)/$(InputName)1.obj"/>
- </FileConfiguration>
- </File>
- <File
- RelativePath="mpeg.c">
- </File>
- <File
- RelativePath="panic-win32.c">
- </File>
- <File
- RelativePath="..\..\apps\playlist.c">
- </File>
- <File
- RelativePath="..\..\apps\screensavers_menu.c">
- </File>
- <File
- RelativePath="..\..\apps\settings.c">
- <FileConfiguration
- Name="Debug|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)/$(InputName)1.obj"/>
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32">
- <Tool
- Name="VCCLCompilerTool"
- ObjectFile="$(IntDir)/$(InputName)1.obj"/>
- </FileConfiguration>
- </File>
- <File
- RelativePath="..\..\apps\settings_menu.c">
- </File>
- <File
- RelativePath="..\..\apps\recorder\sokoban.c">
- </File>
- <File
- RelativePath="..\..\apps\sound_menu.c">
- </File>
- <File
- RelativePath="..\..\firmware\common\sprintf.c">
- </File>
- <File
- RelativePath="string-win32.c">
- </File>
- <File
- RelativePath="..\..\firmware\common\strtok.c">
- </File>
- <File
- RelativePath="..\..\apps\recorder\tetris.c">
- </File>
- <File
- RelativePath="thread-win32.c">
- </File>
- <File
- RelativePath="..\..\apps\tree.c">
- </File>
- <File
- RelativePath="uisw32.c">
- </File>
- <File
- RelativePath="..\..\apps\wps.c">
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc">
- <File
- RelativePath="dir-win32.h">
- </File>
- <File
- RelativePath="..\x11\dir.h">
- </File>
- <File
- RelativePath="lcd-win32.h">
- </File>
- <File
- RelativePath="..\play.h">
- </File>
- <File
- RelativePath="resource.h">
- </File>
- <File
- RelativePath="..\screensaver.h">
- </File>
- <File
- RelativePath="thread-win32.h">
- </File>
- <File
- RelativePath="..\tree.h">
- </File>
- <File
- RelativePath="uisw32.h">
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe">
- <File
- RelativePath="UI256.bmp">
- </File>
- <File
- RelativePath="uisw32.rc">
- </File>
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/uisimulator/x11/Makefile b/uisimulator/x11/Makefile
deleted file mode 100644
index 989ac65223..0000000000
--- a/uisimulator/x11/Makefile
+++ /dev/null
@@ -1,60 +0,0 @@
-############################################################################
-# __________ __ ___.
-# Open \______ \ ____ ____ | | _\_ |__ _______ ___
-# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
-# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
-# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
-# \/ \/ \/ \/ \/
-# $Id$
-#
-# Copyright (C) 2002 by Daniel Stenberg <daniel@haxx.se>
-#
-# All files in this archive are subject to the GNU General Public License.
-# See the file COPYING in the source tree root for full license agreement.
-#
-# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-# KIND, either express or implied.
-#
-############################################################################
-
-SIMCOMMON = ../common
-
-DEPFILE = $(OBJDIR)/dep-sim
-
-RM = rm -f
-DEBUG = -g
-
-# Use this for simulator-only files
-INCLUDES = -I. -I$(SIMCOMMON) -I$(OBJDIR) -I$(FIRMDIR)/export -I$(APPSDIR) \
- -I$(BUILDDIR)
-
-# This sets up 'SRC' based on the files mentioned in SOURCES
-include $(TOOLSDIR)/makesrc.inc
-
-OBJS := $(SRC:%.c=$(OBJDIR)/%.o)
-
-DEFINES := -DHAVE_CONFIG_H -DGETTIMEOFDAY_TWO_ARGS -DSIMULATOR \
-$(TARGET) -DAPPSVERSION=\"$(VERSION)\" -DMEM=${MEMORYSIZE} $(EXTRA_DEFINES)
-
-SOURCES = $(SRC)
-
-DIRS = .
-
-CFLAGS = $(DEBUG) $(DEFINES) $(INCLUDES) $(GCCOPTS)
-
-OUTFILE = $(BUILDDIR)/libsim.a
-
-all: $(OUTFILE)
-
-include $(TOOLSDIR)/make.inc
-
-clean:
- @echo "cleaning sim"
- @$(RM) $(OBJS) *~ core $(OUTFILE) $(DEPFILE)
- @$(MAKE) -C $(SIMCOMMON) clean
-
-$(OUTFILE): $(OBJS)
- @echo "AR $@"
- @$(AR) ruv $@ $(OBJS) >/dev/null 2>&1
-
--include $(DEPFILE)
diff --git a/uisimulator/x11/README b/uisimulator/x11/README
deleted file mode 100644
index 0a293f6ad2..0000000000
--- a/uisimulator/x11/README
+++ /dev/null
@@ -1,6 +0,0 @@
-To build:
-
- $ ../tools/configure
- [answer questions]
- $ make
- $ ./rockboxui
diff --git a/uisimulator/x11/SOURCES b/uisimulator/x11/SOURCES
deleted file mode 100644
index 0aabfb2c03..0000000000
--- a/uisimulator/x11/SOURCES
+++ /dev/null
@@ -1,14 +0,0 @@
-button-x11.c
-kernel.c
-lcd-x11.c
-#if 0 /* if sound is enabled */
-oss_sound.c
-#endif
-resources.c
-screenhack.c
-thread.c
-uibasic.c
-visual.c
-#if CONFIG_CODEC == SWCODEC
-sound.c
-#endif
diff --git a/uisimulator/x11/archos/rockbox112.bmp b/uisimulator/x11/archos/rockbox112.bmp
deleted file mode 100644
index 45392f9f7a..0000000000
--- a/uisimulator/x11/archos/rockbox112.bmp
+++ /dev/null
Binary files differ
diff --git a/uisimulator/x11/atoi.h b/uisimulator/x11/atoi.h
deleted file mode 100644
index 74474f110c..0000000000
--- a/uisimulator/x11/atoi.h
+++ /dev/null
@@ -1,2 +0,0 @@
-
-int atoi(const char *);
diff --git a/uisimulator/x11/button-x11.c b/uisimulator/x11/button-x11.c
deleted file mode 100644
index 673f71ea7b..0000000000
--- a/uisimulator/x11/button-x11.c
+++ /dev/null
@@ -1,321 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Björn Stenberg
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-#include <stdlib.h>
-#include "config.h"
-#include "button.h"
-#include "kernel.h"
-#include "debug.h"
-#include "backlight.h"
-#include "misc.h"
-
-#include "X11/keysym.h"
-
-extern int screenhack_handle_events(bool *release);
-
-struct event_queue button_queue;
-
-static int button_state = 0; /* keeps track of pressed keys */
-static long lastbtn; /* Last valid button status */
-
-/* how often we check to see if a button is pressed */
-#define POLL_FREQUENCY HZ/25
-
-/* how long until repeat kicks in */
-#define REPEAT_START 8
-
-/* the speed repeat starts at */
-#define REPEAT_INTERVAL_START 4
-
-/* speed repeat finishes at */
-#define REPEAT_INTERVAL_FINISH 2
-
-/* mostly copied from real button.c */
-void button_read (void);
-
-static void button_tick(void)
-{
- static int tick = 0;
- static int count = 0;
- static int repeat_speed = REPEAT_INTERVAL_START;
- static int repeat_count = 0;
- static bool repeat = false;
- static bool post = false;
- int diff;
- int btn;
-
- /* only poll every X ticks */
- if ( ++tick >= POLL_FREQUENCY )
- {
- button_read();
- btn = button_state;
-
- /* Find out if a key has been released */
- diff = btn ^ lastbtn;
- if(diff && (btn & diff) == 0)
- {
- queue_post(&button_queue, BUTTON_REL | diff, NULL);
- }
- else
- {
- if ( btn )
- {
- /* normal keypress */
- if ( btn != lastbtn )
- {
- post = true;
- repeat = false;
- repeat_speed = REPEAT_INTERVAL_START;
-
- }
- else /* repeat? */
- {
- if ( repeat )
- {
- count--;
- if (count == 0) {
- post = true;
- /* yes we have repeat */
- repeat_speed--;
- if (repeat_speed < REPEAT_INTERVAL_FINISH)
- repeat_speed = REPEAT_INTERVAL_FINISH;
- count = repeat_speed;
-
- repeat_count++;
-
- }
- }
- else
- {
- if (count++ > REPEAT_START)
- {
- post = true;
- repeat = true;
- repeat_count = 0;
- /* initial repeat */
- count = REPEAT_INTERVAL_START;
- }
- }
- }
- if ( post )
- {
- if (repeat)
- {
- if (queue_empty(&button_queue))
- {
- queue_post(&button_queue, BUTTON_REPEAT | btn, NULL);
- post = false;
- }
- }
- else
- {
- queue_post(&button_queue, btn, NULL);
- post = false;
- }
-#ifdef HAVE_REMOTE_LCD
- if(btn & BUTTON_REMOTE)
- remote_backlight_on();
- else
-#endif
- backlight_on();
-
- }
- }
- else
- {
- repeat = false;
- count = 0;
- }
- }
- lastbtn = btn & ~(BUTTON_REL | BUTTON_REPEAT);
- tick = 0;
- }
-}
-
-/*
- * Read X keys and translate to rockbox buttons
- */
-
-void button_read (void)
-{
- int k;
- bool release = false; /* is this a release event */
- int ev = screenhack_handle_events(&release);
-
- switch (ev)
- {
- case XK_KP_Left:
- case XK_Left:
- case XK_KP_4:
- k = BUTTON_LEFT;
- break;
-
- case XK_KP_Right:
- case XK_Right:
- case XK_KP_6:
- k = BUTTON_RIGHT;
- break;
-
- case XK_KP_Up:
- case XK_Up:
- case XK_KP_8:
-#ifdef BUTTON_UP
- k = BUTTON_UP;
-#elif defined BUTTON_PLAY
- k = BUTTON_PLAY;
-#endif
- break;
-
- case XK_KP_Down:
- case XK_Down:
- case XK_KP_2:
-#ifdef BUTTON_DOWN
- k = BUTTON_DOWN;
-#elif defined BUTTON_STOP
- k = BUTTON_STOP;
-#endif
- break;
-
-#ifdef BUTTON_ON
- case XK_KP_Add:
- case XK_Q:
- case XK_q:
- k = BUTTON_ON;
- break;
-#endif
-
-#ifdef BUTTON_OFF
- case XK_KP_Enter:
- case XK_A:
- case XK_a:
- k = BUTTON_OFF;
- break;
-#endif
-
-#ifdef BUTTON_F1
- case XK_KP_Divide:
- case XK_1:
- k = BUTTON_F1;
- break;
-
- case XK_KP_Multiply:
- case XK_2:
- k = BUTTON_F2;
- break;
-
- case XK_KP_Subtract:
- case XK_3:
- k = BUTTON_F3;
- break;
-#elif defined(BUTTON_REC)
- case XK_KP_Divide:
- case XK_1:
- k = BUTTON_REC;
- break;
-#endif
-
- case XK_KP_Space:
- case XK_KP_5:
- case XK_KP_Begin:
- case XK_space:
-#ifdef BUTTON_PLAY
- k = BUTTON_PLAY;
-#elif defined(BUTTON_SELECT)
- k = BUTTON_SELECT;
-#endif
- break;
-
-#ifdef HAVE_LCD_BITMAP
- case XK_5:
- if(!release)
- screen_dump();
- break;
-#endif
-
- case XK_KP_Separator:
- case XK_KP_Insert:
- case XK_Insert:
-#ifdef BUTTON_MENU
- k = BUTTON_MENU;
-#elif defined(BUTTON_MODE)
- k = BUTTON_MODE;
-#endif
- break;
-
- default:
- k = 0;
- if(ev)
- DEBUGF("received ev %d\n", ev);
- break;
- }
-
- if (release)
- button_state &= ~k;
- else
- button_state |= k;
-}
-
-/* Again copied from real button.c... */
-
-long button_get(bool block)
-{
- struct event ev;
-
- if ( block || !queue_empty(&button_queue) )
- {
- queue_wait(&button_queue, &ev);
- return ev.id;
- }
- return BUTTON_NONE;
-}
-
-long button_get_w_tmo(int ticks)
-{
- struct event ev;
- queue_wait_w_tmo(&button_queue, &ev, ticks);
- return (ev.id != SYS_TIMEOUT)? ev.id: BUTTON_NONE;
-}
-
-void button_init(void)
-{
- tick_add_task(button_tick);
-}
-
-int button_status(void)
-{
- return lastbtn;
-}
-
-void button_clear_queue(void)
-{
- queue_clear(&button_queue);
-}
-
-#ifdef HAS_BUTTON_HOLD
-bool button_hold(void) {
- /* temp fix for hold button on irivers */
- return false;
-}
-#endif
-
-#ifdef HAS_REMOTE_BUTTON_HOLD
-bool remote_button_hold(void) {
- /* temp fix for hold button on irivers */
- return false;
-}
-#endif
diff --git a/uisimulator/x11/config-x11.h b/uisimulator/x11/config-x11.h
deleted file mode 100644
index 1c520cfbac..0000000000
--- a/uisimulator/x11/config-x11.h
+++ /dev/null
@@ -1,362 +0,0 @@
-/* config.h. Generated automatically by configure. */
-/* config.h.in --- xscreensaver, Copyright (c) 1998 Jamie Zawinski.
- *
- * The best way to set these parameters is by running the included `configure'
- * script. That examines your system, and generates `config.h' from
- * `config.h.in'.
- *
- * If something goes very wrong, you can edit `config.h' directly, but beware
- * that your changes will be lost if you ever run `configure' again.
- */
-
-
-/* *************************************************************************
- CONFIGURING SERVER EXTENSIONS
- ************************************************************************* */
-
-/* Define this if you have the XReadDisplay extension (I think this is an
- SGI-only thing; it's in <X11/extensions/readdisplay.h>.) A few of the
- screenhacks will take advantage of this if it's available.
- */
-/* #undef HAVE_READ_DISPLAY_EXTENSION */
-
-/* Define this if you have the Iris Video Library (dmedia/vl.h on SGI.)
- A few of the screenhacks will take advantage of this if it's available.
- */
-/* #undef HAVE_SGI_VIDEO */
-
-/* Define this if you have the XHPDisableReset function (an HP only thing.)
- */
-/* #undef HAVE_XHPDISABLERESET */
-
-/* First, some background: there are three distinct server extensions which
- * are useful to a screen saver program: they are XIDLE, MIT-SCREEN-SAVER,
- * and SCREEN_SAVER.
- *
- * The XIDLE extension resides in .../contrib/extensions/xidle/ on the X11R5
- * contrib tape. This extension lets the client get accurate idle-time
- * information from the X server in a potentially more reliable way than by
- * simply watching for keyboard and mouse activity. However, the XIDLE
- * extension has apparently not been ported to X11R6.
- *
- * The SCREEN_SAVER extension is found (as far as I know) only in the SGI
- * X server, and it exists in all releases since (at least) Irix 5. The
- * relevant header file is /usr/include/X11/extensions/XScreenSaver.h.
- *
- * The similarly-named MIT-SCREEN-SAVER extension came into existence long
- * after the SGI SCREEN_SAVER extension was already in use, and resides in
- * .../contrib/extensions/screensaver/ on the X11R6 contrib tape. It is
- * also found in certain recent X servers built in to NCD X terminals.
- *
- * The MIT extension does basically the same thing that the XIDLE extension
- * does, but there are two things wrong with it: first, because of the way
- * the extension was designed, the `fade' option to XScreenSaver will be
- * uglier: just before the screen fades out, there will be an unattractive
- * flicker to black, because this extension blanks the screen *before*
- * telling us that it is time to do so. Second, this extension is known to
- * be buggy; on the systems I use, it works, but some people have reported
- * X server crashes as a result of using it. XScreenSaver uses this
- * extension rather conservatively, because when I tried to use any of its
- * more complicated features, I could get it to crash the server at the
- * drop of a hat.
- *
- * In short, the MIT-SCREEN-SAVER extension is a piece of junk. The older
- * SGI SCREEN_SAVER extension works great, as does XIDLE. It would be nice
- * If those two existed on more systems, that is, would be adopted by the
- * X Consortium in favor of their inferior "not-invented-here" entry.
- */
-
-/* Define this if you have the XIDLE extension installed. If you have the
- * XIDLE extension, this is recommended. (You have this extension if the
- * file /usr/include/X11/extensions/xidle.h exists.) Turning on this flag
- * lets XScreenSaver work better with servers which support this extension;
- * but it will still work with servers which do not suport it, so it's a good
- * idea to compile in support for it if you can.
- */
-/* #undef HAVE_XIDLE_EXTENSION */
-
-/* Define this if you have the MIT-SCREEN-SAVER extension installed. See the
- * caveats about this extension, above. (It's available if the file
- * /usr/include/X11/extensions/scrnsaver.h exists.)
- */
-#define HAVE_MIT_SAVER_EXTENSION 1
-
-/* Define this if you have the SGI SCREEN_SAVER extension. This is standard
- * on Irix systems, and not available elsewhere.
- */
-/* #undef HAVE_SGI_SAVER_EXTENSION */
-
-/* Define this if you have the SGI-VIDEO-CONTROL extension. This is standard
- * on Irix systems, and not available elsewhere.
- */
-/* #undef HAVE_SGI_VC_EXTENSION */
-
-/* Define this if you have the XDPMS extension. This is standard on
- * sufficiently-recent XFree86 systems, and possibly elsewhere. (It's
- * available if the file /usr/include/X11/extensions/dpms.h exists.)
- */
-/* #undef HAVE_DPMS_EXTENSION */
-
-/* Define this if you have the functions XF86VidModeGetModeLine() and
- * XF86VidModeGetViewPort(), in support of virtual desktops where the
- * X server's root window is bigger than the actual screen. This is
- * an XFree86 thing, and probably doesn't exist elsewhere. (It's
- * available if the file /usr/include/X11/extensions/xf86vmode.h exists.)
- */
-/* #undef HAVE_XF86VMODE */
-
-/* Define this if you have a Linux-like /proc/interrupts file which can be
- * examined to determine when keyboard activity has occurred.
- */
-/* #undef HAVE_PROC_INTERRUPTS */
-
-
-
-/* *************************************************************************
- CONFIGURING GRAPHICS TOOLKITS
- ************************************************************************* */
-
-/* Define this if you have Motif.
- */
-#define HAVE_MOTIF 1
-
-/* Define this if you have Gtk.
- */
-/* #undef HAVE_GTK */
-
-/* Define this if you have Athena (-Xaw).
- */
-#define HAVE_ATHENA 1
-
-/* Define this if you have Athena, and the version you have includes the
- * XawViewportSetCoordinates function in Viewport.h (some old versions of
- * the library didn't have this function.)
- */
-#define HAVE_XawViewportSetCoordinates 1
-
-/* Define this if you have the XPM library installed. Some of the demos can
- * make use of this if it is available.
- */
-#define HAVE_XPM 1
-
-/* Define this if you have the Xmu library. This is standard part of X, and
- * if your vendor doesn't ship it, you should report that as a bug.
- */
-#define HAVE_XMU 1
-
-/* Define this if you have OpenGL. Some of the demos require it, so if you
- * don't have it, then those particular demos won't be built. (This won't
- * affect the screen saver as a whole.)
- */
-/* #undef HAVE_GL */
-
-/* Define this if you have OpenGL, but it's the MesaGL variant. (The
- libraries have different names.) (HAVE_GL should be defined too.)
- */
-/* #undef HAVE_MESA_GL */
-
-/* Define this if your version of OpenGL has the glBindTexture() routine.
- This is the case for OpenGL 1.1, but not for OpenGL 1.0.
- */
-/* #undef HAVE_GLBINDTEXTURE */
-
-/* Define this if you have the -lgle and -lmatrix libraries (GL extrusion.)
- */
-/* #undef HAVE_GLE */
-
-/* Define this if the `xscreensaver' process itself (the driver process)
- should be linked against GL. Most systems won't want this (in particular,
- if you're using Linux and/or Mesa, you don't want this) but SGI systems
- do want this. It may also be useful on other systems that have serious
- GL support -- you only need this if you have a lot of different visuals,
- not all of which work with GL programs.
- */
-/* #undef DAEMON_USE_GL */
-
-/* Define this if you have the X Shared Memory Extension.
- */
-#define HAVE_XSHM_EXTENSION 1
-
-/* Define this if you have the X Double Buffer Extension.
- */
-#define HAVE_DOUBLE_BUFFER_EXTENSION 1
-
-/* Some screenhacks like to run an external program to generate random pieces
- of text; set this to the one you like ("yow" and "fortune" are the most
- likely prospects.) Note that this is just the default; X resources can
- be used to override it.
- */
-#define ZIPPY_PROGRAM "/usr/local/libexec/emacs/20.4/sparc-sun-solaris2.6/yow"
-
-
-
-/* *************************************************************************
- CONFIGURING PASSWORD AUTHENTICATION
- ************************************************************************* */
-
-/* Define this to remove the option of locking the screen at all.
- */
-/* #undef NO_LOCKING */
-
-/* Define this if you want to use Kerberos authentication to lock/unlock the
- * screen instead of your local password. This currently uses Kerberos V4,
- * but a V5 server with V4 compatibility will work. WARNING: DO NOT USE AFS
- * string-to-key passwords with this option. This option currently *only*
- * works with standard Kerberos des_string_to_key. If your password is an
- * AFS password and not a kerberos password, it will not authenticate
- * properly. See the comments in driver/kpasswd.c for more information if you
- * need it.
- */
-/* #undef HAVE_KERBEROS */
-
-/* Define this if you want to use PAM (Pluggable Authentication Modules)
- * to lock/unlock the screen, instead of standard /etc/passwd authentication.
- */
-/* #undef HAVE_PAM */
-
-/* If PAM is being used, this is the name of the PAM service that xscreensaver
- * will authenticate as. The default is "xscreensaver", which means that the
- * PAM library will look for an "xscreensaver" line in /etc/pam.conf, or (on
- * recent Linux systems) will look for a file called /etc/pam.d/xscreensaver.
- * Some systems might already have a PAM installation that is configured for
- * xlock, so setting this to "xlock" would also work in that case.
- */
-#define PAM_SERVICE_NAME "xscreensaver"
-
-/* Define if you have PAM and pam_strerror() requires two arguments. */
-/* #undef PAM_STRERROR_TWO_ARGS */
-
-/* Define this if your system uses `shadow' passwords, that is, the passwords
- * live in /etc/shadow instead of /etc/passwd, and one reads them with
- * getspnam() instead of getpwnam(). (Note that SCO systems do some random
- * other thing; others might as well. See the ifdefs in driver/passwd-pwent.c
- * if you're having trouble related to reading passwords.)
- */
-#define HAVE_SHADOW_PASSWD 1
-
-/* Define this if your system is Digital or SCO Unix with so-called ``Enhanced
- Security'', that is, the passwords live in /tcb/files/auth/<x>/<xyz>
- instead of in /etc/passwd, and one reads them with getprpwnam() instead
- of getpwnam().
- */
-/* #undef HAVE_ENHANCED_PASSWD */
-
-/* Define this if your system is Solaris with ``adjunct'' passwords (this is
- the version where one gets at the passwords with getpwanam() instead of
- getpwnam().) I haven't tested this one, let me know if it works.
- */
-/* #undef HAVE_ADJUNCT_PASSWD */
-
-/* Define this if you are running HPUX with so-called ``Secure Passwords''
- (if you have /usr/include/hpsecurity.h, you probably have this.) I
- haven't tested this one, let me know if it works.
- */
-/* #undef HAVE_HPUX_PASSWD */
-
-/* Define this if you are on a system that supports the VT_LOCKSWITCH and
- VT_UNLOCKSWITCH ioctls. If this is defined, then when the screen is
- locked, switching to another virtual terminal will also be prevented.
- That is, the whole console will be locked, rather than just the VT on
- which X is running. (Well, that's the theory anyway -- in practice,
- I haven't yet figured out how to make that work.)
- */
-/* #undef HAVE_VT_LOCKSWITCH */
-
-
-/* Define this if you the openlog(), syslog(), and closelog() functions.
- This is used for logging failed login attempts.
- */
-#define HAVE_SYSLOG 1
-
-
-/* *************************************************************************
- OTHER C ENVIRONMENT JUNK
- ************************************************************************* */
-
-/* Define this to void* if you're using X11R4 or earlier. */
-/* #undef XPointer */
-
-/* Define if you have the nice function. */
-#define HAVE_NICE 1
-
-/* Define if you have the setpriority function. */
-#define HAVE_SETPRIORITY 1
-
-/* Define to empty if the keyword does not work. */
-/* #undef const */
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
-#define HAVE_SYS_WAIT_H 1
-
-/* Define as __inline if that's what the C compiler calls it. */
-/* #undef inline */
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-/* #undef mode_t */
-
-/* Define to `int' if <sys/types.h> doesn't define. */
-/* #undef pid_t */
-
-/* Define as the return type of signal handlers (int or void). */
-#define RETSIGTYPE void
-
-/* Define to `unsigned' if <sys/types.h> doesn't define. */
-/* #undef size_t */
-
-/* Define if you have the ANSI C header files. */
-#define STDC_HEADERS 1
-
-/* Define if you can safely include both <sys/time.h> and <time.h>. */
-#define TIME_WITH_SYS_TIME 1
-
-/* Define if you have the gettimeofday function. */
-#define HAVE_GETTIMEOFDAY 1
-
-/* Define if gettimeofday requires two arguments. */
-#define GETTIMEOFDAY_TWO_ARGS 1
-
-/* Define if you have the putenv function. */
-#define HAVE_PUTENV 1
-
-/* Define if you have the select function. */
-#define HAVE_SELECT 1
-
-/* Define if you have the getcwd function. */
-#define HAVE_GETCWD 1
-
-/* Define if you have the getcwd function. */
-#define HAVE_GETWD 1
-
-/* Define if you have the realpath function. */
-#define HAVE_REALPATH 1
-
-/* Define if you have the uname function. */
-#define HAVE_UNAME 1
-
-/* Define if you have the fcntl function. */
-#define HAVE_FCNTL 1
-
-/* Define if you have the sigaction function. */
-#define HAVE_SIGACTION 1
-
-/* Define if you have the <unistd.h> header file. */
-#define HAVE_UNISTD_H 1
-
-/* Define if you have the <crypt.h> header file. */
-#define HAVE_CRYPT_H 1
-
-/* Define if you have <sys/select.h> that defines fd_set and FD_SET. */
-#define HAVE_SYS_SELECT_H 1
-
-/* Define to use sigaction() instead of signal() for SIGCHLD-related activity.
- This is necessary at least on SCO OpenServer 5, due to a Unix kernel bug.
- */
-/* #undef USE_SIGACTION */
-
-/* Define this if you do pings with a `struct icmp' and a `icmp_id' slot.
- */
-#define HAVE_ICMP 1
-
-/* Define this if you do pings with a `struct icmphdr' and a `un.echo.id' slot.
- */
-/* #undef HAVE_ICMPHDR */
diff --git a/uisimulator/x11/kernel.c b/uisimulator/x11/kernel.c
deleted file mode 100644
index 947d82a550..0000000000
--- a/uisimulator/x11/kernel.c
+++ /dev/null
@@ -1,165 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2005 by Jens Arnold
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <stddef.h>
-#include "kernel.h"
-#include "thread.h"
-#include "debug.h"
-
-static void (*tick_funcs[MAX_NUM_TICK_TASKS])(void);
-
-int set_irq_level (int level)
-{
- static int _lv = 0;
- return (_lv = level);
-}
-
-void queue_init(struct event_queue *q)
-{
- q->read = 0;
- q->write = 0;
-}
-
-void queue_delete(struct event_queue *q)
-{
- (void)q;
-}
-
-void queue_wait(struct event_queue *q, struct event *ev)
-{
- while(q->read == q->write)
- {
- switch_thread();
- }
-
- *ev = q->events[(q->read++) & QUEUE_LENGTH_MASK];
-}
-
-void queue_wait_w_tmo(struct event_queue *q, struct event *ev, int ticks)
-{
- unsigned int timeout = current_tick + ticks;
-
- while(q->read == q->write && TIME_BEFORE( current_tick, timeout ))
- {
- sleep(1);
- }
-
- if(q->read != q->write)
- {
- *ev = q->events[(q->read++) & QUEUE_LENGTH_MASK];
- }
- else
- {
- ev->id = SYS_TIMEOUT;
- }
-}
-
-void queue_post(struct event_queue *q, long id, void *data)
-{
- int wr;
- int oldlevel;
-
- oldlevel = set_irq_level(15<<4);
- wr = (q->write++) & QUEUE_LENGTH_MASK;
-
- q->events[wr].id = id;
- q->events[wr].data = data;
- set_irq_level(oldlevel);
-}
-
-bool queue_empty(const struct event_queue* q)
-{
- return ( q->read == q->write );
-}
-
-void queue_clear(struct event_queue* q)
-{
- /* fixme: This is potentially unsafe in case we do interrupt-like processing */
- q->read = 0;
- q->write = 0;
-}
-
-void switch_thread (void)
-{
- yield ();
-}
-
-void sim_tick_tasks(void)
-{
- int i;
-
- /* Run through the list of tick tasks */
- for(i = 0;i < MAX_NUM_TICK_TASKS;i++)
- {
- if(tick_funcs[i])
- {
- tick_funcs[i]();
- }
- }
-}
-
-int tick_add_task(void (*f)(void))
-{
- int i;
-
- /* Add a task if there is room */
- for(i = 0;i < MAX_NUM_TICK_TASKS;i++)
- {
- if(tick_funcs[i] == NULL)
- {
- tick_funcs[i] = f;
- return 0;
- }
- }
- DEBUGF("Error! tick_add_task(): out of tasks");
- return -1;
-}
-
-int tick_remove_task(void (*f)(void))
-{
- int i;
-
- /* Remove a task if it is there */
- for(i = 0;i < MAX_NUM_TICK_TASKS;i++)
- {
- if(tick_funcs[i] == f)
- {
- tick_funcs[i] = NULL;
- return 0;
- }
- }
-
- return -1;
-}
-
-void mutex_init(struct mutex *m)
-{
- (void)m;
-}
-
-void mutex_lock(struct mutex *m)
-{
- (void)m;
-}
-
-void mutex_unlock(struct mutex *m)
-{
- (void)m;
-}
-
diff --git a/uisimulator/x11/lcd-x11.c b/uisimulator/x11/lcd-x11.c
deleted file mode 100644
index c85848c18b..0000000000
--- a/uisimulator/x11/lcd-x11.c
+++ /dev/null
@@ -1,262 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
-#include <errno.h>
-#include <ctype.h>
-#include <time.h>
-
-#include "screenhack.h"
-#include "config.h"
-#include "debug.h"
-
-/*
- * Specific implementations for X11, using the generic LCD API and data.
- */
-
-#include "lcd-x11.h"
-#include "lcd-playersim.h"
-
-#if LCD_DEPTH == 2
-#define YBLOCK 4
-#define ANDBIT 3 /* AND with this to get the color number */
-#else
-#define YBLOCK 8
-#define ANDBIT 1
-#endif
-
-extern void screen_resized(int width, int height);
-extern bool lcd_display_redraw;
-
-#ifdef HAVE_LCD_BITMAP
-#if LCD_DEPTH==16
-fb_data lcd_framebuffer_copy[LCD_HEIGHT][LCD_WIDTH*2];
-#else
-fb_data lcd_framebuffer_copy[LCD_HEIGHT/YBLOCK][LCD_WIDTH];
-#endif
-
-void lcd_update (void)
-{
- /* update a full screen rect */
- lcd_update_rect(0, 0, LCD_WIDTH, LCD_HEIGHT);
-}
-
-void lcd_update_rect(int x_start, int y_start,
- int width, int height)
-{
- int x;
- int yline=y_start;
- int y;
- int p=0;
- int bit;
- int xmax;
- int ymax;
- int colors[LCD_WIDTH * LCD_HEIGHT];
- struct coordinate points[LCD_WIDTH * LCD_HEIGHT];
- unsigned force_mask = lcd_display_redraw ? 0xFF : 0;
-
-#if 0
- fprintf(stderr, "%04d: lcd_update_rect(%d, %d, %d, %d)\n",
- counter++, x_start, y_start, width, height);
-#endif
- /* The Y coordinates have to work on even YBLOCK pixel rows */
- ymax = (yline + height)/YBLOCK;
- yline /= YBLOCK;
-
- xmax = x_start + width;
-
- if(xmax > LCD_WIDTH)
- xmax = LCD_WIDTH;
- if(ymax >= LCD_HEIGHT/YBLOCK)
- ymax = LCD_HEIGHT/YBLOCK-1;
-
- for(; yline <= ymax; yline++) {
- y = yline * YBLOCK;
- for(x = x_start; x < xmax; x++) {
- unsigned char diff = (lcd_framebuffer[yline][x]
- ^ lcd_framebuffer_copy[yline][x])
- | force_mask;
- if(diff) {
- /* one or more bits/pixels are changed */
- unsigned char mask = ANDBIT;
- for(bit = 0; bit < YBLOCK; bit++) {
- if(diff & mask) {
- /* pixel has changed */
- unsigned int col = lcd_framebuffer[yline][x] & mask;
-#if LCD_DEPTH == 2
- colors[p] = col >> (bit * LCD_DEPTH);
-#else
- colors[p] = col ? 3 : 0;
-#endif
- points[p].x = x + MARGIN_X;
- points[p].y = y + bit + MARGIN_Y;
- p++; /* increase the point counter */
- }
- mask <<= LCD_DEPTH;
- }
-
- /* update the copy */
- lcd_framebuffer_copy[yline][x] = lcd_framebuffer[yline][x];
- }
- }
- }
-
- dots(colors, &points[0], p);
- /* printf("lcd_update_rect: Draws %d pixels, clears %d pixels\n", p, cp);*/
- XtAppLock(app);
- XSync(dpy,False);
- XtAppUnlock(app);
- lcd_display_redraw=false;
-}
-
-#ifdef LCD_REMOTE_HEIGHT
-extern unsigned char lcd_remote_framebuffer[LCD_REMOTE_HEIGHT/8][LCD_REMOTE_WIDTH];
-unsigned char lcd_remote_framebuffer_copy[LCD_REMOTE_HEIGHT/8][LCD_REMOTE_WIDTH];
-
-#define REMOTE_START_Y (LCD_HEIGHT + 2*MARGIN_Y)
-
-void lcd_remote_update (void)
-{
- lcd_remote_update_rect(0, 0, LCD_REMOTE_WIDTH, LCD_REMOTE_HEIGHT);
-}
-
-void lcd_remote_update_rect(int x_start, int y_start,
- int width, int height)
-{
- int x;
- int yline=y_start;
- int y;
- int p=0;
- int bit;
- int xmax;
- int ymax;
- struct coordinate points[LCD_REMOTE_WIDTH * LCD_REMOTE_HEIGHT];
- int colors[LCD_REMOTE_WIDTH * LCD_REMOTE_HEIGHT];
- unsigned force_mask = lcd_display_redraw ? 0xFF : 0;
-
-#if 0
- fprintf(stderr, "%04d: lcd_update_rect(%d, %d, %d, %d)\n",
- counter++, x_start, y_start, width, height);
-#endif
- /* The Y coordinates have to work on even 8 pixel rows */
- ymax = (yline + height)/8;
- yline /= 8;
-
- xmax = x_start + width;
-
- if(xmax > LCD_REMOTE_WIDTH)
- xmax = LCD_REMOTE_WIDTH;
- if(ymax >= LCD_REMOTE_HEIGHT/8)
- ymax = LCD_REMOTE_HEIGHT/8-1;
-
- for(; yline <= ymax; yline++) {
- y = yline * 8;
- for(x = x_start; x < xmax; x++) {
- unsigned char diff = (lcd_remote_framebuffer[yline][x]
- ^ lcd_remote_framebuffer_copy[yline][x])
- | force_mask;
- if(diff) {
- unsigned char mask = 1;
- for(bit = 0; bit < 8; bit++) {
- if(diff & mask) {
- unsigned int col = lcd_remote_framebuffer[yline][x] & mask;
- colors[p] = col ? 3 : 0;
- points[p].x = x + MARGIN_X;
- points[p].y = y + bit + (REMOTE_START_Y + MARGIN_Y);
- p++; /* increase the point counter */
- }
- mask <<= 1;
- }
-
- /* update the copy */
- lcd_remote_framebuffer_copy[yline][x] =
- lcd_remote_framebuffer[yline][x];
- }
- }
- }
-
- dots(colors, &points[0], p);
- /* printf("lcd_update_rect: Draws %d pixels, clears %d pixels\n", p, cp);*/
- XtAppLock(app);
- XSync(dpy,False);
- XtAppUnlock(app);
- lcd_display_redraw=false;
-}
-
-
-#endif
-
-#endif
-#ifdef HAVE_LCD_CHARCELLS
-
-/* Defined in lcd-playersim.c */
-extern void lcd_print_char(int x, int y);
-extern unsigned char lcd_buffer[2][11];
-extern void drawrect(int color, int x1, int y1, int x2, int y2);
-
-extern unsigned char hardware_buffer_lcd[11][2];
-static unsigned char lcd_buffer_copy[11][2];
-
-void lcd_update (void)
-{
- bool changed=false;
- int x, y;
- for (y=0; y<2; y++) {
- for (x=0; x<11; x++) {
- if (lcd_display_redraw ||
- lcd_buffer_copy[x][y] != hardware_buffer_lcd[x][y]) {
- lcd_buffer_copy[x][y] = hardware_buffer_lcd[x][y];
- lcd_print_char(x, y);
- changed=true;
- }
- }
- }
- if (changed)
- {
- XtAppLock(app);
- XSync(dpy,False);
- XtAppUnlock(app);
- }
- lcd_display_redraw=false;
-}
-
-#endif
-
-#ifdef CONFIG_BACKLIGHT
-void sim_backlight(int value)
-{
- DEBUGF("backlight: %s\n", (value > 0) ? "on" : "off");
-}
-#endif
-
-#ifdef HAVE_REMOTE_LCD
-void sim_remote_backlight(int value)
-{
- DEBUGF("remote backlight: %s\n", (value > 0) ? "on" : "off");
-}
-#endif
-
diff --git a/uisimulator/x11/lcd-x11.h b/uisimulator/x11/lcd-x11.h
deleted file mode 100644
index 07911b2530..0000000000
--- a/uisimulator/x11/lcd-x11.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#define MARGIN_X 3
-#define MARGIN_Y 3
-
-/* include the "real" lcd.h file here */
-#include <lcd.h>
-
-
diff --git a/uisimulator/x11/oss_sound.c b/uisimulator/x11/oss_sound.c
deleted file mode 100644
index 51d85470e7..0000000000
--- a/uisimulator/x11/oss_sound.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- *
- * Copyright (C) 2002 Dave Chapman
- *
- * oss_sound - a sound driver for Linux (and others?) OSS audio
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include <stdio.h>
-#include <fcntl.h>
-
-#include <sys/soundcard.h>
-#include "../common/sound.h"
-
-/* We want to use the "real" open in this file */
-#undef open
-
-int init_sound(sound_t* sound) {
- sound->fd=open("/dev/dsp", O_WRONLY);
- sound->freq=-1;
- sound->channels=-1;
-
- if (sound->fd <= 0) {
- fprintf(stderr,"Can not open /dev/dsp - simulating sound output\n");
- sound->fd=0;
- }
-}
-
-int config_sound(sound_t* sound, int sound_freq, int channels) {
- int format=AFMT_S16_NE;
- int setting=0x000C000D; // 12 fragments size 8kb ? WHAT IS THIS?
-
- sound->freq=sound_freq;
- sound->channels=channels;
-
- if (sound->fd) {
- if (ioctl(sound->fd,SNDCTL_DSP_SETFRAGMENT,&setting)==-1) {
- perror("SNDCTL_DSP_SETFRAGMENT");
- }
-
- if (ioctl(sound->fd,SNDCTL_DSP_CHANNELS,&channels)==-1) {
- perror("SNDCTL_DSP_STEREO");
- }
- if (channels==0) { fprintf(stderr,"Warning, only mono supported\n"); }
-
- if (ioctl(sound->fd,SNDCTL_DSP_SETFMT,&format)==-1) {
- perror("SNDCTL_DSP_SETFMT");
- }
-
- if (ioctl(sound->fd,SNDCTL_DSP_SPEED,&sound_freq)==-1) {
- perror("SNDCTL_DSP_SPEED");
- }
- }
-}
-
-int output_sound(sound_t* sound,const void* buf, int count) {
- unsigned long long t;
-
- if (sound->fd) {
- return(write(sound->fd,buf,count));
- } else {
- t=(unsigned int)(((unsigned int)(1000000/sound->channels)*count)/sound->freq);
-// fprintf(stderr,"writing %d bytes at %d frequency - sleeping for %u microseconds\n",count,sound->freq,t);
- usleep(t);
- return(count);
- }
-}
-
-void close_sound(sound_t* sound) {
- if (sound->fd) close(sound->fd);
- sound->fd=-1;
-}
diff --git a/uisimulator/x11/resources.c b/uisimulator/x11/resources.c
deleted file mode 100644
index feaf3b8216..0000000000
--- a/uisimulator/x11/resources.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/* xscreensaver, Copyright (c) 1992, 1997, 1998
- * Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- */
-
-#include "utils.h"
-#include "resources.h"
-#include <X11/Xresource.h>
-
-
-/* Resource functions. Assumes: */
-
-extern char *progname;
-extern char *progclass;
-extern XrmDatabase db;
-
-#ifndef isupper
-# define isupper(c) ((c) >= 'A' && (c) <= 'Z')
-#endif
-#ifndef _tolower
-# define _tolower(c) ((c) - 'A' + 'a')
-#endif
-
-char *
-get_string_resource (char *res_name, char *res_class)
-{
- XrmValue value;
- char *type;
- char full_name [1024], full_class [1024];
- strcpy (full_name, progname);
- strcat (full_name, ".");
- strcat (full_name, res_name);
- strcpy (full_class, progclass);
- strcat (full_class, ".");
- strcat (full_class, res_class);
- if (XrmGetResource (db, full_name, full_class, &type, &value))
- {
- char *str = (char *) malloc (value.size + 1);
- strncpy (str, (char *) value.addr, value.size);
- str [value.size] = 0;
- return str;
- }
- return 0;
-}
-
-Bool
-get_boolean_resource (char *res_name, char *res_class)
-{
- char *tmp, buf [100];
- char *s = get_string_resource (res_name, res_class);
- char *os = s;
- if (! s) return 0;
- for (tmp = buf; *s; s++)
- *tmp++ = isupper (*s) ? _tolower (*s) : *s;
- *tmp = 0;
- free (os);
-
- while (*buf &&
- (buf[strlen(buf)-1] == ' ' ||
- buf[strlen(buf)-1] == '\t'))
- buf[strlen(buf)-1] = 0;
-
- if (!strcmp (buf, "on") || !strcmp (buf, "true") || !strcmp (buf, "yes"))
- return 1;
- if (!strcmp (buf,"off") || !strcmp (buf, "false") || !strcmp (buf,"no"))
- return 0;
- fprintf (stderr, "%s: %s must be boolean, not %s.\n",
- progname, res_name, buf);
- return 0;
-}
-
-unsigned int
-get_pixel_resource (char *res_name, char *res_class,
- Display *dpy, Colormap cmap)
-{
- XColor color;
- char *s = get_string_resource (res_name, res_class);
- char *s2;
- if (!s) goto DEFAULT;
-
- for (s2 = s + strlen(s) - 1; s2 > s; s2--)
- if (*s2 == ' ' || *s2 == '\t')
- *s2 = 0;
- else
- break;
-
- if (! XParseColor (dpy, cmap, s, &color))
- {
- fprintf (stderr, "%s: can't parse color %s\n", progname, s);
- goto DEFAULT;
- }
- if (! XAllocColor (dpy, cmap, &color))
- {
- fprintf (stderr, "%s: couldn't allocate color %s\n", progname, s);
- goto DEFAULT;
- }
- free (s);
- return color.pixel;
- DEFAULT:
- if (s) free (s);
- return ((strlen(res_class) >= 10 &&
- !strcmp ("Background", res_class + strlen(res_class) - 10))
- ? BlackPixel (dpy, DefaultScreen (dpy))
- : WhitePixel (dpy, DefaultScreen (dpy)));
-}
-
diff --git a/uisimulator/x11/resources.h b/uisimulator/x11/resources.h
deleted file mode 100644
index 1fbcfa7ce7..0000000000
--- a/uisimulator/x11/resources.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* xscreensaver, Copyright (c) 1992, 1997 Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- */
-
-#ifndef __XSCREENSAVER_RESOURCES_H__
-#define __XSCREENSAVER_RESOURCES_H__
-extern char *get_string_resource (char*,char*);
-extern Bool get_boolean_resource (char*,char*);
-extern int get_integer_resource (char*,char*);
-extern double get_float_resource (char*,char*);
-extern unsigned int get_pixel_resource (char*,char*,Display*,Colormap);
-extern unsigned int get_minutes_resource (char*,char*);
-extern unsigned int get_seconds_resource (char*,char*);
-extern int parse_time (const char *string, Bool seconds_default_p,
- Bool silent_p);
-#endif /* __XSCREENSAVER_RESOURCES_H__ */
diff --git a/uisimulator/x11/screenhack.c b/uisimulator/x11/screenhack.c
deleted file mode 100644
index c3aa2e4c63..0000000000
--- a/uisimulator/x11/screenhack.c
+++ /dev/null
@@ -1,579 +0,0 @@
-/* xscreensaver, Copyright (c) 1992, 1995, 1997, 1998
- * Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- *
- * And remember: X Windows is to graphics hacking as roman numerals are to
- * the square root of pi.
- */
-
-/* This file contains simple code to open a window or draw on the root.
- The idea being that, when writing a graphics hack, you can just link
- with this .o to get all of the uninteresting junk out of the way.
-
- - create a procedure `screenhack(dpy, window)'
-
- - create a variable `char *progclass' which names this program's
- resource class.
-
- - create a variable `char defaults []' for the default resources, and
- null-terminate it.
-
- - create a variable `XrmOptionDescRec options[]' for the command-line,
- and null-terminate it.
-
- And that's it...
- */
-
-#include <stdio.h>
-#include <X11/Intrinsic.h>
-#include <X11/IntrinsicP.h>
-#include <X11/CoreP.h>
-#include <X11/Shell.h>
-#include <X11/StringDefs.h>
-#include <X11/Xutil.h>
-#include <X11/keysym.h>
-
-#ifdef __sgi
-# include <X11/SGIScheme.h> /* for SgiUseSchemes() */
-#endif /* __sgi */
-
-#ifdef HAVE_XMU
-# ifndef VMS
-# include <X11/Xmu/Error.h>
-# else /* VMS */
-# include <Xmu/Error.h>
-# endif
-#else
-# include "xmu.h"
-#endif
-#include "lcd-x11.h"
-#include "screenhack.h"
-#include "version.h"
-#include "vroot.h"
-
-#include "debug.h"
-#include "config.h"
-
-#ifndef isupper
-# define isupper(c) ((c) >= 'A' && (c) <= 'Z')
-#endif
-#ifndef _tolower
-# define _tolower(c) ((c) - 'A' + 'a')
-#endif
-
-#define KEYBOARD_GENERIC \
- "Keyboard Rockbox\n" \
- "-------- ------------\n" \
- "4, Left LEFT\n" \
- "6, Right RIGHT\n"
-
-#if CONFIG_KEYPAD == PLAYER_PAD
-#define KEYBOARD_SPECIFIC \
- "8, Up PLAY\n" \
- "2, Down STOP\n" \
- "+, Q ON\n" \
- "., INS MENU\n"
-
-#elif CONFIG_KEYPAD == RECORDER_PAD
-#define KEYBOARD_SPECIFIC \
- "8, Up UP\n" \
- "2, Down DOWN\n" \
- "5, Space PLAY\n" \
- "+, Q ON\n" \
- "Enter, A OFF\n" \
- "/, (1) F1\n" \
- "*, (2) F2\n" \
- "-, (3) F3\n"
-
-#elif CONFIG_KEYPAD == ONDIO_PAD
-#define KEYBOARD_SPECIFIC \
- "8, Up UP\n" \
- "2, Down DOWN\n" \
- "., INS MENU\n" \
- "Enter, A OFF\n"
-
-#elif CONFIG_KEYPAD == IRIVER_H100_PAD
-#define KEYBOARD_SPECIFIC \
- "8, Up UP\n" \
- "2, Down DOWN\n" \
- "5, Space SELECT\n" \
- "+, Q ON\n" \
- "Enter, A OFF\n" \
- "., INS MODE\n" \
- "/, (1) RECORD\n"
-
-#elif CONFIG_KEYPAD == IRIVER_H300_PAD
-#define KEYBOARD_SPECIFIC \
- "[not written yet]"
-
-#elif CONFIG_KEYPAD == GMINI100_PAD
-#define KEYBOARD_SPECIFIC \
- "8, Up UP\n" \
- "2, Down DOWN\n" \
- "5, Space PLAY\n" \
- "+, Q ON\n" \
- "Enter, A OFF\n" \
- "., INS MENU\n"
-
-#elif (CONFIG_KEYPAD == IPOD_4G_PAD)
-#define KEYBOARD_SPECIFIC \
- "[not written yet]"
-
-#elif (CONFIG_KEYPAD == IAUDIO_X5_PAD)
-#define KEYBOARD_SPECIFIC \
- "[not written yet]"
-#else
-#error "Put your defines here"
-#endif
-
-
-char having_new_lcd=True;
-
-char *progname;
-XrmDatabase db;
-XtAppContext app;
-Display* dpy;
-Window window;
-Bool mono_p;
-
-static XrmOptionDescRec default_options [] = {
- { "-root", ".root", XrmoptionNoArg, "True" },
- { "-window", ".root", XrmoptionNoArg, "False" },
- { "-mono", ".mono", XrmoptionNoArg, "True" },
- { "-install", ".installColormap", XrmoptionNoArg, "True" },
- { "-noinstall", ".installColormap", XrmoptionNoArg, "False" },
- { "-visual", ".visualID", XrmoptionSepArg, 0 },
- { "-window-id", ".windowID", XrmoptionSepArg, 0 },
- { 0, 0, 0, 0 }
-};
-
-static char *default_defaults[] = {
- ".root: false",
-#define GEOMETRY_POSITION 1
- "*geometry: 120x68", /* to be replaced anyway */
- "*mono: false",
- "*installColormap: false",
- "*visualID: default",
- "*windowID: ",
- 0
-};
-
-extern int display_zoom;
-extern long current_tick;
-
-static XrmOptionDescRec *merged_options;
-static int merged_options_size;
-static char **merged_defaults;
-
-static void merge_options (void)
-{
- int def_opts_size, opts_size;
- int def_defaults_size, defaults_size;
-
- for (def_opts_size = 0; default_options[def_opts_size].option;
- def_opts_size++)
- ;
- for (opts_size = 0; options[opts_size].option; opts_size++)
- ;
-
- merged_options_size = def_opts_size + opts_size;
- merged_options = (XrmOptionDescRec *)
- malloc ((merged_options_size + 1) * sizeof(*default_options));
- memcpy (merged_options, default_options,
- (def_opts_size * sizeof(*default_options)));
- memcpy (merged_options + def_opts_size, options,
- ((opts_size + 1) * sizeof(*default_options)));
-
- for (def_defaults_size = 0; default_defaults[def_defaults_size];
- def_defaults_size++)
- ;
- for (defaults_size = 0; defaults[defaults_size]; defaults_size++)
- ;
-
- merged_defaults = (char **)
- malloc ((def_defaults_size + defaults_size + 1) * sizeof (*defaults));
-
- memcpy (merged_defaults, default_defaults,
- def_defaults_size * sizeof(*defaults));
- memcpy (merged_defaults + def_defaults_size, defaults,
- (defaults_size + 1) * sizeof(*defaults));
-
- /* This totally sucks. Xt should behave like this by default.
- If the string in `defaults' looks like ".foo", change that
- to "Progclass.foo".
- */
- {
- char **s;
- for (s = merged_defaults; *s; s++)
- if (**s == '.')
- {
- const char *oldr = *s;
- char *newr = (char *) malloc(strlen(oldr)
- + strlen(progclass) + 3);
- strcpy (newr, progclass);
- strcat (newr, oldr);
- *s = newr;
- }
- }
-}
-
-
-/* Make the X errors print out the name of this program, so we have some
- clue which one has a bug when they die under the screensaver.
- */
-
-static int screenhack_ehandler (Display *dpy, XErrorEvent *error)
-{
- fprintf (stderr, "\nX error in %s:\n", progname);
- if (XmuPrintDefaultErrorMessage (dpy, error, stderr))
- exit (-1);
- else
- fprintf (stderr, " (nonfatal.)\n");
- return 0;
-}
-
-static Bool MapNotify_event_p (Display *dpy, XEvent *event, XPointer window)
-{
- (void)dpy;
- return (event->xany.type == MapNotify &&
- event->xvisibility.window == (Window) window);
-}
-
-static Atom XA_WM_PROTOCOLS, XA_WM_DELETE_WINDOW;
-
-
-static void kb_disable_auto_repeat(bool on)
-{
- XKeyboardControl kb;
-
- kb.auto_repeat_mode = on ? AutoRepeatModeOff : AutoRepeatModeDefault;
- XChangeKeyboardControl(dpy, KBAutoRepeatMode, &kb);
-}
-
-static void kb_restore_auto_repeat(void) /* registered as an exit handler */
-{
- kb_disable_auto_repeat(false);
- XSync(dpy, false); /* force the X server to process that */
-}
-
-/* Dead-trivial event handling.
- Exit if the WM_PROTOCOLS WM_DELETE_WINDOW ClientMessage is received.
- */
-int screenhack_handle_event(XEvent *event, bool *release)
-{
- int key=0;
-
- *release = FALSE;
-
- switch (event->xany.type) {
- case KeyPress:
- {
- KeySym keysym;
- unsigned char c = 0;
- XLookupString (&event->xkey, (char *)&c, 1, &keysym, 0);
- key = keysym;
-#if 0
- DEBUGF("Got keypress: %c (%02x) %x, tick %ld\n", c, c,
- event->xkey.keycode, current_tick);
-#endif
- }
- break;
- case KeyRelease:
- {
- KeySym keysym;
- unsigned char c = 0;
- XLookupString (&event->xkey, (char *)&c, 1, &keysym, 0);
- key = keysym;
-#if 0
- DEBUGF("Got keyrelease: %c (%02x) %x, tick %ld\n", c, c,
- event->xkey.keycode, current_tick);
-#endif
- *release = TRUE;
- }
- break;
- case Expose:
- screen_redraw();
- break;
- case FocusIn:
- kb_disable_auto_repeat(true);
- break;
- case FocusOut:
- kb_disable_auto_repeat(false);
- break;
- case ClientMessage:
- if (event->xclient.message_type != XA_WM_PROTOCOLS) {
- char *s = XGetAtomName(dpy, event->xclient.message_type);
- if (!s)
- s = "(null)";
- fprintf (stderr, "%s: unknown ClientMessage %s received!\n",
- progname, s);
- }
- else if (event->xclient.data.l[0] != (int)XA_WM_DELETE_WINDOW) {
- char *s1 = XGetAtomName(dpy, event->xclient.message_type);
- char *s2 = XGetAtomName(dpy, event->xclient.data.l[0]);
- if (!s1)
- s1 = "(null)";
- if (!s2)
- s2 = "(null)";
- fprintf (stderr, "%s: unknown ClientMessage %s[%s] received!\n",
- progname, s1, s2);
- }
- else {
- exit (0);
- }
- break;
- default:
- break;
- }
- return key;
-}
-
-
-int screenhack_handle_events(bool *release)
-{
- int key=0;
- XtAppLock(app);
- if(XPending(dpy))
- {
- XEvent event;
- XNextEvent(dpy, &event);
- key=screenhack_handle_event(&event, release);
- }
- XtAppUnlock(app);
- return key;
-}
-
-
-static Visual *pick_visual (Screen *screen)
-{
-#ifdef USE_GL
- /* If we're linking against GL (that is, this is the version of
- screenhack.o that the GL hacks will use, which is different from the
- one that the non-GL hacks will use) then try to pick the "best" visual
- by interrogating the GL library instead of by asking Xlib. GL knows
- better.
- */
- Visual *v = 0;
- char *string = get_string_resource ("visualID", "VisualID");
- char *s;
-
- if (string)
- for (s = string; *s; s++)
- if (isupper (*s)) *s = _tolower (*s);
-
- if (!string || !*string ||
- !strcmp (string, "gl") ||
- !strcmp (string, "best") ||
- !strcmp (string, "color") ||
- !strcmp (string, "default"))
- v = get_gl_visual (screen); /* from ../utils/visual-gl.c */
-
- if (string)
- free (string);
- if (v)
- return v;
-#endif /* USE_GL */
-
- return get_visual_resource (screen, "visualID", "VisualID", False);
-}
-
-int main (int argc, char **argv)
-{
- Widget toplevel;
- Screen *screen;
- Visual *visual;
- Colormap cmap;
- XEvent event;
- char version[255];
-
- sprintf(version,"rockboxui %s",ROCKBOXUI_VERSION);
-#ifdef HAVE_LCD_BITMAP
- display_zoom=2;
- {
- char *env=getenv("RECORDER_ZOOM");
- if (env) {
- display_zoom=atoi(env);
- }
- }
-#else
- display_zoom=1;
- {
- char *env=getenv("PLAYER_ZOOM");
- if (env) {
- display_zoom=atoi(env);
- }
- }
-#endif
-
- if (argc > 1)
- {
- int x;
- for (x=1; x<argc; x++) {
- if (!strcmp("--old_lcd", argv[x])) {
- having_new_lcd=FALSE;
- printf("Using old LCD layout.\n");
- } else if (!strcmp("--zoom", argv[x])) {
- x++;
- display_zoom=atoi(argv[x]);
- printf("Window zoom is %d\n", display_zoom);
- } else {
- printf("rockboxui\n");
- printf("Arguments:\n");
- printf(" --old_lcd \t [Player] simulate old playermodel (ROM version<4.51)\n");
- printf(" --zoom \t window zoom\n");
- printf(KEYBOARD_GENERIC KEYBOARD_SPECIFIC);
- exit(0);
- }
- }
- }
- {
- static char geometry[40];
- unsigned int height = (LCD_HEIGHT+2*MARGIN_Y);
-#ifdef LCD_REMOTE_HEIGHT
- height += (LCD_REMOTE_HEIGHT+2*MARGIN_Y);
-#endif
- printf("height: %d\n", height);
- snprintf(geometry, 40, "*geometry: %dx%d",
- (LCD_WIDTH+2*MARGIN_X) * display_zoom, height * display_zoom);
- default_defaults[GEOMETRY_POSITION]=geometry;
- }
- printf(KEYBOARD_GENERIC KEYBOARD_SPECIFIC);
-
- merge_options ();
-
-#ifdef __sgi
- /* We have to do this on SGI to prevent the background color from being
- overridden by the current desktop color scheme (we'd like our
- backgrounds to be black, thanks.) This should be the same as setting
- the "*useSchemes: none" resource, but it's not -- if that resource is
- present in the `default_defaults' above, it doesn't work, though it
- does work when passed as an -xrm arg on the command line. So screw it,
- turn them off from C instead.
- */
- SgiUseSchemes ("none");
-#endif /* __sgi */
-
- XtToolkitThreadInitialize();
-
- toplevel = XtAppInitialize (&app, progclass, merged_options,
- merged_options_size, &argc, argv,
- merged_defaults, 0, 0);
- dpy = XtDisplay (toplevel);
- screen = XtScreen (toplevel);
- db = XtDatabase (dpy);
-
- XtGetApplicationNameAndClass (dpy, &progname, &progclass);
-
- /* half-assed way of avoiding buffer-overrun attacks. */
- if (strlen (progname) >= 100) progname[100] = 0;
-
- XSetErrorHandler (screenhack_ehandler);
-
- XA_WM_PROTOCOLS = XInternAtom (dpy, "WM_PROTOCOLS", False);
- XA_WM_DELETE_WINDOW = XInternAtom (dpy, "WM_DELETE_WINDOW", False);
-
-
- if (CellsOfScreen (DefaultScreenOfDisplay (dpy)) <= 2)
- mono_p = True;
-
- {
- Boolean def_visual_p;
- visual = pick_visual (screen);
-
- if (toplevel->core.width <= 0)
- toplevel->core.width = 600;
- if (toplevel->core.height <= 0)
- toplevel->core.height = 480;
-
- def_visual_p = (visual == DefaultVisualOfScreen (screen));
-
- if (!def_visual_p)
- {
- unsigned int bg, bd;
- Widget new;
-
- cmap = XCreateColormap (dpy, RootWindowOfScreen(screen),
- visual, AllocNone);
- bg = get_pixel_resource ("background", "Background", dpy, cmap);
- bd = get_pixel_resource ("borderColor", "Foreground", dpy, cmap);
-
- new = XtVaAppCreateShell (progname, progclass,
- topLevelShellWidgetClass, dpy,
- XtNmappedWhenManaged, False,
- XtNvisual, visual,
- XtNdepth, visual_depth (screen, visual),
- XtNwidth, toplevel->core.width,
- XtNheight, toplevel->core.height,
- XtNcolormap, cmap,
- XtNbackground, (Pixel) bg,
- XtNborderColor, (Pixel) bd,
- XtNinput, True, /* for WM_HINTS */
- 0);
- XtDestroyWidget (toplevel);
- toplevel = new;
- XtRealizeWidget (toplevel);
- window = XtWindow (toplevel);
- }
- else
- {
- XtVaSetValues (toplevel,
- XtNmappedWhenManaged, False,
- XtNinput, True, /* for WM_HINTS */
- 0);
- XtRealizeWidget (toplevel);
- window = XtWindow (toplevel);
-
- if (get_boolean_resource ("installColormap", "InstallColormap"))
- {
- cmap = XCreateColormap (dpy, window,
- DefaultVisualOfScreen (XtScreen
- (toplevel)),
- AllocNone);
- XSetWindowColormap (dpy, window, cmap);
- }
- else
- {
- cmap = DefaultColormap (dpy, DefaultScreen (dpy));
- }
- }
-
- XtPopup (toplevel, XtGrabNone);
-
- XtVaSetValues(toplevel, XtNtitle, version, 0);
-
- /* For screenhack_handle_events(): select KeyPress, and
- announce that we accept WM_DELETE_WINDOW. */
- {
- XWindowAttributes xgwa;
- XGetWindowAttributes (dpy, window, &xgwa);
- XSelectInput (dpy, window,
- xgwa.your_event_mask | KeyPressMask | KeyRelease |
- ButtonPressMask | ExposureMask | FocusChangeMask );
- XChangeProperty (dpy, window, XA_WM_PROTOCOLS, XA_ATOM, 32,
- PropModeReplace,
- (unsigned char *) &XA_WM_DELETE_WINDOW, 1);
- }
- }
-
- XSetWindowBackground (dpy, window,
- get_pixel_resource ("background", "Background",
- dpy, cmap));
- XClearWindow (dpy, window);
-
- /* wait for it to be mapped */
- XIfEvent (dpy, &event, MapNotify_event_p, (XPointer) window);
-
- XSync (dpy, False);
-
- atexit(kb_restore_auto_repeat);
- kb_disable_auto_repeat(true);
- screenhack(); /* doesn't return */
- return 0;
-}
diff --git a/uisimulator/x11/screenhack.h b/uisimulator/x11/screenhack.h
deleted file mode 100644
index 5c2e5321ac..0000000000
--- a/uisimulator/x11/screenhack.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* xscreensaver, Copyright (c) 1992-1997 Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- */
-
-#ifndef __SCREENHACK_H__
-#define __SCREENHACK_H__
-
-#include <stdlib.h>
-#include <stdbool.h>
-
-#include "config-x11.h"
-
-#ifdef __hpux
- /* Which of the ten billion standards does values.h belong to?
- What systems always have it? */
-# include <values.h>
-#endif
-
-#include <stdio.h>
-
-#include <X11/Xlib.h>
-#include <X11/Xresource.h>
-#include <X11/Xos.h>
-#include <X11/Intrinsic.h>
-
-#include "resources.h"
-#include "visual.h"
-
-extern Bool mono_p;
-extern char *progname;
-extern char *progclass;
-extern XrmDatabase db;
-extern XrmOptionDescRec options [];
-extern char *defaults [];
-extern XtAppContext app;
-extern Display* dpy;
-extern Window window;
-
-extern void screenhack();
-extern int screenhack_handle_event(XEvent*, bool *);
-extern int screenhack_handle_events(bool *);
-extern void screen_redraw();
-extern void screen_resized();
-
-#endif /* __SCREENHACK_H__ */
diff --git a/uisimulator/x11/sound.c b/uisimulator/x11/sound.c
deleted file mode 100644
index 06d9c014ff..0000000000
--- a/uisimulator/x11/sound.c
+++ /dev/null
@@ -1,140 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2005 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "autoconf.h"
-
-#ifdef ROCKBOX_HAS_SIMSOUND /* play sound in sim enabled */
-
-#include <stdbool.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <sys/ioctl.h>
-#include <sys/soundcard.h>
-
-#include "sound.h"
-
-static bool playing = false;
-
-int sim_sound_init(void)
-{
- int fd;
- int pcmbits;
- int rc;
- int channels;
- int rate;
-
- fd = open("/dev/dsp", O_WRONLY);
- if(-1 == fd)
- return 1;
-
- pcmbits = 16;
- rc = ioctl(fd, SOUND_PCM_WRITE_BITS, &pcmbits);
- rc = ioctl(fd, SOUND_PCM_READ_BITS, &pcmbits);
-
- channels = 2; /* Number of channels, 1=mono */
- rc = ioctl(fd, SOUND_PCM_WRITE_CHANNELS, &channels);
- rc = ioctl(fd, SOUND_PCM_READ_CHANNELS, &channels);
-
- rate = 44100; /* Yeah. sampling rate */
- rc = ioctl(fd, SOUND_PCM_WRITE_RATE, &rate);
- rc = ioctl(fd, SOUND_PCM_READ_RATE, &rate);
-
- return fd;
-}
-
-void sim_sound_play(int soundfd, char *buffer, long len)
-{
- write(soundfd, buffer, len);
-}
-
-void sound_playback_thread(void)
-{
- int soundfd = sim_sound_init();
- unsigned char *buf;
- long size;
-
- while(-1 == soundfd)
- sleep(100000); /* wait forever, can't play sound! */
-
- do {
-
- while(!sound_get_pcm)
- /* TODO: fix a fine thread-synch mechanism here */
- usleep(10000);
-
- do {
- sound_get_pcm(&buf, &size);
- if(!size) {
- sound_get_pcm = NULL;
- break;
- }
- sim_sound_play(soundfd, (char *)buf, size);
- usleep(10000);
- } while(size);
-
- } while(1);
-
-}
-
-/* Stubs for PCM audio playback. */
-bool pcm_is_playing(void)
-{
- return playing;
-}
-
-void pcm_mute(bool state)
-{
- (void)state;
-}
-
-void pcm_play_pause(bool state)
-{
- (void)state;
-}
-
-bool pcm_is_paused(void)
-{
- return false;
-}
-
-void pcm_play_stop(void)
-{
- playing = false;
-}
-
-void pcm_init(void)
-{
-}
-
-void (*sound_get_pcm)(unsigned char** start, long* size);
-void pcm_play_data(void (*get_more)(unsigned char** start, long* size))
-{
- sound_get_pcm = get_more;
- playing = true;
-}
-
-long pcm_get_bytes_waiting(void)
-{
- return 0;
-}
-
-#endif /* ROCKBOX_HAS_SIMSOUND */
diff --git a/uisimulator/x11/sound.h b/uisimulator/x11/sound.h
deleted file mode 100644
index 87499cac8e..0000000000
--- a/uisimulator/x11/sound.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2005 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-void sound_playback_thread(void);
-
-extern void (*sound_get_pcm)(unsigned char** start, long* size);
diff --git a/uisimulator/x11/sprintf.h b/uisimulator/x11/sprintf.h
deleted file mode 100644
index 64a22f3c6e..0000000000
--- a/uisimulator/x11/sprintf.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#include <stdarg.h>
-#include <stdio.h>
-
-int rockbox_snprintf (char *buf, size_t size, const char *fmt, ...);
-int rockbox_vsnprintf (char *buf, int size, const char *fmt, va_list ap);
-int rockbox_fprintf (int fd, const char *fmt, ...);
-
-#ifndef NO_REDEFINES_PLEASE
-#define snprintf rockbox_snprintf
-#define vsnprintf rockbox_vsnprintf
-#define fprintf rockbox_fprintf
-#endif
diff --git a/uisimulator/x11/thread.c b/uisimulator/x11/thread.c
deleted file mode 100644
index 6d9139c35d..0000000000
--- a/uisimulator/x11/thread.c
+++ /dev/null
@@ -1,148 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 Daniel Stenberg
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-
-#include "autoconf.h"
-
-#include <stdio.h>
-#include <pthread.h>
-
-#include "kernel.h"
-#include <sys/time.h>
-
-#ifdef ROCKBOX_HAS_SIMSOUND
-#include "sound.h"
-#endif
-
-long current_tick = 0;
-extern void sim_tick_tasks(void);
-
-static void msleep(int msec)
-{
- struct timeval delay;
-
- delay.tv_sec = msec / 1000;
- delay.tv_usec = (msec % 1000) * 1000;
- select(0, NULL, NULL, NULL, &delay); /* portable sub-second sleep */
-}
-
-/*
- * This is not a target thread, so it does not fall under the 1 thread at a
- * time thing.
- */
-static void update_tick_thread()
-{
- struct timeval start, now;
- long new_tick;
-
- gettimeofday(&start, NULL);
- while (1)
- {
- msleep(5); /* check twice per simulated target tick */
- gettimeofday(&now, NULL);
- new_tick = (now.tv_sec - start.tv_sec) * HZ
- + (now.tv_usec - start.tv_usec) / (1000000/HZ);
- if (new_tick > current_tick)
- {
- sim_tick_tasks();
- current_tick = new_tick;
- }
- }
-}
-
-/*
- * We emulate the target threads by using pthreads. We have a mutex that only
- * allows one thread at a time to execute. It forces each thread to yield()
- * for the other(s) to run.
- */
-
-pthread_mutex_t mp;
-
-void init_threads(void)
-{
- pthread_t tick_tid;
-
- pthread_mutex_init(&mp, NULL);
- /* get mutex to only allow one thread running at a time */
- pthread_mutex_lock(&mp);
-
- /* start a tick thread */
- pthread_create(&tick_tid, NULL, (void *(*)(void *)) update_tick_thread,
- NULL);
-
-#ifdef ROCKBOX_HAS_SIMSOUND /* start thread that plays PCM data */
- {
- pthread_t sound_tid;
- pthread_create(&sound_tid, NULL,
- (void *(*)(void *)) sound_playback_thread,
- NULL);
- }
-#endif
-
-}
-/*
- int pthread_create(pthread_t *new_thread_ID,
- const pthread_attr_t *attr,
- void * (*start_func)(void *), void *arg);
-*/
-
-void yield(void)
-{
- pthread_mutex_unlock(&mp); /* return */
- msleep(1); /* prevent busy loop */
- pthread_mutex_lock(&mp); /* get it again */
-}
-
-void newfunc(void (*func)(void))
-{
- pthread_mutex_lock(&mp);
- func();
- pthread_mutex_unlock(&mp);
-}
-
-
-int create_thread(void (*fp)(void), void* sp, int stk_size)
-{
- pthread_t tid;
- int i;
- int error;
-
- /* we really don't care about these arguments */
- (void)sp;
- (void)stk_size;
- error = pthread_create(&tid,
- NULL, /* default attributes please */
- (void *(*)(void *)) newfunc, /* function to start */
- fp /* start argument */);
- if(0 != error)
- fprintf(stderr, "Couldn't run thread number %d, errno %d\n", i, error);
- else
- fprintf(stderr, "Thread %ld is running\n", (long)tid);
-
- yield();
-
- return error;
-}
-
-void sim_sleep(int ticks)
-{
- pthread_mutex_unlock(&mp); /* return */
- msleep((1000/HZ) * ticks);
- pthread_mutex_lock(&mp); /* get it again */
-}
-
diff --git a/uisimulator/x11/timefuncs.h b/uisimulator/x11/timefuncs.h
deleted file mode 100644
index de17fcdc73..0000000000
--- a/uisimulator/x11/timefuncs.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#include <time.h>
-#include <stdbool.h>
-
-/* struct tm defined */
-struct tm *get_time(void);
-int set_time(const struct tm *tm);
-bool valid_time(const struct tm *tm);
diff --git a/uisimulator/x11/uibasic.c b/uisimulator/x11/uibasic.c
deleted file mode 100644
index 57870c39d3..0000000000
--- a/uisimulator/x11/uibasic.c
+++ /dev/null
@@ -1,277 +0,0 @@
-/***************************************************************************
- * __________ __ ___.
- * Open \______ \ ____ ____ | | _\_ |__ _______ ___
- * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
- * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
- * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
- * \/ \/ \/ \/ \/
- * $Id$
- *
- * Copyright (C) 2002 by Daniel Stenberg <daniel@haxx.se>
- *
- * All files in this archive are subject to the GNU General Public License.
- * See the file COPYING in the source tree root for full license agreement.
- *
- * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
- * KIND, either express or implied.
- *
- ****************************************************************************/
-#include <stdio.h>
-#include <string.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <ctype.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
-#include <errno.h>
-#include <ctype.h>
-#include <time.h>
-
-#include "config.h"
-#include "screenhack.h"
-
-#include "version.h"
-
-#include "lcd-x11.h"
-#include "lcd-playersim.h"
-
-#define MAX(x,y) ((x)>(y)?(x):(y))
-#define MIN(x,y) ((x)<(y)?(x):(y))
-
-#define PROGNAME "rockboxui"
-
-/* -- -- */
-
-GC draw_gc;
-static Colormap cmap;
-
-int display_zoom=1;
-bool lcd_display_redraw=true;
-
-XrmOptionDescRec options [] = {
- /* { "-subtractive", ".additive", XrmoptionNoArg, "false" }, */
- { "-server", ".server", XrmoptionSepArg, 0 },
- { "-help", ".help", XrmoptionNoArg, "false" },
- { 0, 0, 0, 0 }
-};
-char *progclass = "rockboxui";
-
-#ifdef IRIVER_H100_SERIES
-#define BGCOLOR "lightblue"
-#elif defined ARCHOS_GMINI120
-#define BGCOLOR "royalblue"
-#else
-#define BGCOLOR "lightgreen"
-#endif
-
-
-char *defaults [] = {
- ".background: " BGCOLOR,
- ".foreground: black",
- "*help: false",
- 0
-};
-
-static XColor getcolor[4];
-
-/* set a range of bitmap indices to a gradient from startcolour to endcolour
- inherited from the win32 sim code by Jens Arnold */
-static void lcdcolors(int index, int count, XColor *start, XColor *end)
-{
- int i;
- count--;
- for (i = 0; i <= count; i++)
- {
- getcolor[i+index].red = start->red
- + (end->red - start->red) * i / count;
- getcolor[i+index].green = start->green
- + (end->green - start->green) * i / count;
- getcolor[i+index].blue = start->blue
- + (end->blue - start->blue) * i / count;
- XAllocColor (dpy, cmap, &getcolor[i+index]);
- }
-}
-
-
-void init_window ()
-{
- XGCValues gcv;
- XWindowAttributes xgwa;
-
- XGetWindowAttributes (dpy, window, &xgwa);
- XColor bg;
- XColor fg;
-
- cmap = xgwa.colormap;
-
- XParseColor (dpy, cmap, BGCOLOR, &bg);
- XParseColor (dpy, cmap, "black", &fg);
- getcolor[0] = bg;
- getcolor[1] = bg;
- getcolor[2] = bg;
- getcolor[3] = bg;
-
- lcdcolors(0, 4, &bg, &fg);
-
-#if 0
- for(i=0; i<4; i++) {
- printf("color %d: %d %d %d\n",
- i,
- getcolor[i].red,
- getcolor[i].green,
- getcolor[i].blue);
- }
-#endif
-
- gcv.function = GXxor;
- gcv.foreground = getcolor[3].pixel;
- draw_gc = XCreateGC (dpy, window, GCForeground, &gcv);
-
- screen_resized(LCD_WIDTH, LCD_HEIGHT);
-}
-
-void screen_resized(int width, int height)
-{
- int maxx, maxy;
- maxx = width;
- maxy = height;
-
- XtAppLock(app);
- XSetForeground(dpy, draw_gc, getcolor[0].pixel);
-
- XFillRectangle(dpy, window, draw_gc, 0, 0, width*display_zoom,
- height*display_zoom);
- XtAppUnlock(app);
- screen_redraw();
-}
-
-void drawrect(int color, int x1, int y1, int x2, int y2)
-{
- XtAppLock(app);
- XSetForeground(dpy, draw_gc, getcolor[color].pixel);
- XFillRectangle(dpy, window, draw_gc, x1*display_zoom, y1*display_zoom,
- x2*display_zoom, y2*display_zoom);
- XtAppUnlock(app);
-}
-
-static void help(void)
-{
- printf(PROGNAME " " ROCKBOXUI_VERSION " " __DATE__ "\n"
- "usage: " PROGNAME "\n");
-}
-
-static void drawline(int color, int x1, int y1, int x2, int y2)
-{
- XtAppLock(app);
- XSetForeground(dpy, draw_gc, getcolor[color].pixel);
-
- XDrawLine(dpy, window, draw_gc,
- (int)(x1*display_zoom),
- (int)(y1*display_zoom),
- (int)(x2*display_zoom),
- (int)(y2*display_zoom));
- XtAppUnlock(app);
-}
-
-void dots(int *colors, struct coordinate *points, int count)
-{
- int color;
- XtAppLock(app);
-
- while (count--) {
- color = colors[count];
- XSetForeground(dpy, draw_gc, getcolor[color].pixel);
- XFillRectangle(dpy, window, draw_gc,
- points[count].x*display_zoom,
- points[count].y*display_zoom,
- display_zoom,
- display_zoom);
- }
- XtAppUnlock(app);
-}
-
-/* this is where the applicaton starts */
-extern void app_main(void);
-
-void screenhack()
-{
- Bool helpme;
-
- /* This doesn't work, but I don't know why (Daniel 1999-12-01) */
- helpme = get_boolean_resource ("help", "Boolean");
- if(helpme)
- help();
-
- printf(PROGNAME " " ROCKBOXUI_VERSION " (" __DATE__ ")\n");
-
- init_window();
-
- screen_redraw();
-
- app_main();
-}
-
-/* used for the player sim */
-void drawdots(int color, struct coordinate *points, int count)
-{
- XtAppLock(app);
- XSetForeground(dpy, draw_gc, getcolor[color==0?0:3].pixel);
-
- while (count--) {
- XFillRectangle(dpy, window, draw_gc,
- points[count].x*display_zoom,
- points[count].y*display_zoom,
- display_zoom,
- display_zoom);
- }
- XtAppUnlock(app);
-}
-
-/* used for the player sim */
-void drawrectangles(int color, struct rectangle *points, int count)
-{
- XtAppLock(app);
-
- XSetForeground(dpy, draw_gc, getcolor[color==0?0:3].pixel);
- while (count--) {
- XFillRectangle(dpy, window, draw_gc,
- points[count].x*display_zoom,
- points[count].y*display_zoom,
- points[count].width*display_zoom,
- points[count].height*display_zoom);
- }
- XtAppUnlock(app);
-}
-
-
-void screen_redraw()
-{
- /* draw a border around the screen */
-#define X1 0
-#define Y1 0
-#define X2 (LCD_WIDTH + 2*MARGIN_X - 1)
-#define Y2 (LCD_HEIGHT + 2*MARGIN_Y - 1)
-
- drawline(1, X1, Y1, X2, Y1);
- drawline(1, X2, Y1, X2, Y2);
- drawline(1, X1, Y2, X2, Y2);
- drawline(1, X1, Y1, X1, Y2);
- lcd_display_redraw = true;
- lcd_update();
-#ifdef LCD_REMOTE_HEIGHT
- /* draw a border around the remote LCD screen */
-#define RX1 0
-#define RY1 (Y2 + 1)
-#define RX2 (LCD_REMOTE_WIDTH + 2*MARGIN_X - 1)
-#define RY2 (RY1 + LCD_REMOTE_HEIGHT + 2*MARGIN_Y - 1)
-
- drawline(1, RX1, RY1, RX2, RY1);
- drawline(1, RX2, RY1, RX2, RY2);
- drawline(1, RX1, RY2, RX2, RY2);
- drawline(1, RX1, RY1, RX1, RY2);
- lcd_display_redraw = true;
- lcd_remote_update();
-#endif
-}
diff --git a/uisimulator/x11/utils.h b/uisimulator/x11/utils.h
deleted file mode 100644
index 5045d4aa6d..0000000000
--- a/uisimulator/x11/utils.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* xscreensaver, Copyright (c) 1997 Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- */
-
-#ifdef HAVE_CONFIG_H
-# include "config-x11.h"
-#endif
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <math.h>
-
-#include <X11/Xlib.h>
-#include <X11/Xos.h>
diff --git a/uisimulator/x11/version.h b/uisimulator/x11/version.h
deleted file mode 100644
index 1d40c08781..0000000000
--- a/uisimulator/x11/version.h
+++ /dev/null
@@ -1 +0,0 @@
-#define ROCKBOXUI_VERSION "0.2"
diff --git a/uisimulator/x11/visual.c b/uisimulator/x11/visual.c
deleted file mode 100644
index 57b73151c5..0000000000
--- a/uisimulator/x11/visual.c
+++ /dev/null
@@ -1,544 +0,0 @@
-/* xscreensaver, Copyright (c) 1993, 1994, 1995, 1996, 1997, 1998, 1999
- * by Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- */
-
-/* This file contains some code for intelligently picking the best visual
- (where "best" is biased in the direction of either: high color counts;
- or: having writable color cells...)
- */
-
-#include "utils.h"
-#include "resources.h" /* for get_string_resource() */
-#include "visual.h"
-
-#include <X11/Xutil.h>
-
-extern char *progname;
-
-
-#ifndef isupper
-# define isupper(c) ((c) >= 'A' && (c) <= 'Z')
-#endif
-#ifndef _tolower
-# define _tolower(c) ((c) - 'A' + 'a')
-#endif
-
-
-static Visual *pick_best_visual (Screen *, Bool, Bool);
-static Visual *pick_mono_visual (Screen *);
-static Visual *pick_best_visual_of_class (Screen *, int);
-static Visual *pick_best_gl_visual (Screen *);
-static Visual *id_to_visual (Screen *, int);
-static Visual *id_to_visual (Screen *screen, int id);
-
-
-#define DEFAULT_VISUAL -1
-#define BEST_VISUAL -2
-#define MONO_VISUAL -3
-#define GRAY_VISUAL -4
-#define COLOR_VISUAL -5
-#define GL_VISUAL -6
-#define SPECIFIC_VISUAL -7
-
-Visual *
-get_visual (Screen *screen, const char *string, Bool prefer_writable_cells,
- Bool verbose_p)
-{
- char *v = (string ? strdup(string) : 0);
- char c, *tmp;
- int vclass;
- unsigned long id;
- Visual *result = 0;
-
- if (v)
- for (tmp = v; *tmp; tmp++)
- if (isupper (*tmp)) *tmp = _tolower (*tmp);
-
- if (!v || !*v) vclass = BEST_VISUAL;
- else if (!strcmp (v, "default")) vclass = DEFAULT_VISUAL;
- else if (!strcmp (v, "best")) vclass = BEST_VISUAL;
- else if (!strcmp (v, "mono")) vclass = MONO_VISUAL;
- else if (!strcmp (v, "monochrome")) vclass = MONO_VISUAL;
- else if (!strcmp (v, "gray")) vclass = GRAY_VISUAL;
- else if (!strcmp (v, "grey")) vclass = GRAY_VISUAL;
- else if (!strcmp (v, "color")) vclass = COLOR_VISUAL;
- else if (!strcmp (v, "gl")) vclass = GL_VISUAL;
- else if (!strcmp (v, "staticgray")) vclass = StaticGray;
- else if (!strcmp (v, "staticcolor")) vclass = StaticColor;
- else if (!strcmp (v, "truecolor")) vclass = TrueColor;
- else if (!strcmp (v, "grayscale")) vclass = GrayScale;
- else if (!strcmp (v, "greyscale")) vclass = GrayScale;
- else if (!strcmp (v, "pseudocolor")) vclass = PseudoColor;
- else if (!strcmp (v, "directcolor")) vclass = DirectColor;
- else if (1 == sscanf (v, " %ld %c", &id, &c)) vclass = SPECIFIC_VISUAL;
- else if (1 == sscanf (v, " 0x%lx %c", &id, &c)) vclass = SPECIFIC_VISUAL;
- else
- {
- fprintf (stderr, "%s: unrecognized visual \"%s\".\n", progname, v);
- vclass = DEFAULT_VISUAL;
- }
-
- if (vclass == DEFAULT_VISUAL)
- result = DefaultVisualOfScreen (screen);
- else if (vclass == BEST_VISUAL)
- result = pick_best_visual (screen, prefer_writable_cells, False);
- else if (vclass == MONO_VISUAL)
- {
- result = pick_mono_visual (screen);
- if (!result && verbose_p)
- fprintf (stderr, "%s: no monochrome visuals.\n", progname);
- }
- else if (vclass == GRAY_VISUAL)
- {
- if (prefer_writable_cells)
- result = pick_best_visual_of_class (screen, GrayScale);
- if (!result)
- result = pick_best_visual_of_class (screen, StaticGray);
- if (!result)
- result = pick_best_visual_of_class (screen, GrayScale);
- if (!result && verbose_p)
- fprintf (stderr, "%s: no GrayScale or StaticGray visuals.\n",
- progname);
- }
- else if (vclass == COLOR_VISUAL)
- {
- int class;
- /* First see if the default visual will do. */
- result = DefaultVisualOfScreen (screen);
- class = visual_class(screen, result);
- if (class != TrueColor &&
- class != PseudoColor &&
- class != DirectColor &&
- class != StaticColor)
- result = 0;
- if (result && visual_depth(screen, result) <= 1)
- result = 0;
-
- /* Else, find the best non-default color visual */
- if (!result)
- result = pick_best_visual (screen, prefer_writable_cells, True);
-
- if (!result && verbose_p)
- fprintf (stderr, "%s: no color visuals.\n", progname);
- }
- else if (vclass == GL_VISUAL)
- {
- Visual *visual = pick_best_gl_visual (screen);
- if (visual)
- result = visual;
- else if (verbose_p)
- fprintf (stderr, "%s: no visual suitable for GL.\n", progname);
- }
- else if (vclass == SPECIFIC_VISUAL)
- {
- result = id_to_visual (screen, id);
- if (!result && verbose_p)
- fprintf (stderr, "%s: no visual with id 0x%x.\n", progname,
- (unsigned int) id);
- }
- else
- {
- Visual *visual = pick_best_visual_of_class (screen, vclass);
- if (visual)
- result = visual;
- else if (verbose_p)
- fprintf (stderr, "%s: no visual of class %s.\n", progname, v);
- }
-
- if (v) free (v);
- return result;
-}
-
-Visual *
-get_visual_resource (Screen *screen, char *name, char *class,
- Bool prefer_writable_cells)
-{
- char *string = get_string_resource (name, class);
- Visual *v = get_visual (screen, string, prefer_writable_cells, True);
- if (string)
- free(string);
- if (v)
- return v;
- else
- return DefaultVisualOfScreen (screen);
-}
-
-
-static Visual *
-pick_best_visual (Screen *screen, Bool prefer_writable_cells, Bool color_only)
-{
- Visual *visual;
-
- if (!prefer_writable_cells)
- {
- /* If we don't prefer writable cells, then the "best" visual is the one
- on which we can allocate the largest range and number of colors.
-
- Therefore, a TrueColor visual which is at least 16 bits deep is best.
- (The assumption here being that a TrueColor of less than 16 bits is
- really just a PseudoColor visual with a pre-allocated color cube.)
-
- The next best thing is a PseudoColor visual of any type. After that
- come the non-colormappable visuals, and non-color visuals.
- */
- if ((visual = pick_best_visual_of_class (screen, TrueColor)) &&
- visual_depth (screen, visual) >= 16)
- return visual;
- }
-
-#define TRY_CLASS(CLASS) \
- if ((visual = pick_best_visual_of_class (screen, CLASS)) && \
- (!color_only || visual_depth(screen, visual) > 1)) \
- return visual
- TRY_CLASS(PseudoColor);
- TRY_CLASS(TrueColor);
- TRY_CLASS(DirectColor);
- TRY_CLASS(StaticColor);
- if (!color_only)
- {
- TRY_CLASS(GrayScale);
- TRY_CLASS(StaticGray);
- }
-#undef TRY_CLASS
-
- visual = DefaultVisualOfScreen (screen);
- if (!color_only || visual_depth(screen, visual) > 1)
- return visual;
- else
- return 0;
-}
-
-static Visual *
-pick_mono_visual (Screen *screen)
-{
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count;
-
- vi_in.depth = 1;
- vi_in.screen = screen_number (screen);
- vi_out = XGetVisualInfo (dpy, (VisualDepthMask | VisualScreenMask),
- &vi_in, &out_count);
- if (vi_out)
- {
- Visual *v = (out_count > 0 ? vi_out [0].visual : 0);
- if (v && vi_out[0].depth != 1)
- v = 0;
- XFree ((char *) vi_out);
- return v;
- }
- else
- return 0;
-}
-
-
-static Visual *
-pick_best_visual_of_class (Screen *screen, int visual_class)
-{
- /* The best visual of a class is the one which on which we can allocate
- the largest range and number of colors, which means the one with the
- greatest depth and number of cells.
-
- (But actually, for XDaliClock, all visuals of the same class are
- probably equivalent - either we have writable cells or we don't.)
- */
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count;
-
- vi_in.class = visual_class;
- vi_in.screen = screen_number (screen);
- vi_out = XGetVisualInfo (dpy, (VisualClassMask | VisualScreenMask),
- &vi_in, &out_count);
- if (vi_out)
- {
- /* choose the 'best' one, if multiple */
- int i, best;
- Visual *visual;
-/* for (i = 0, best = 0; i < out_count; i++) */
- for (i = out_count-1, best = i; i >= 0; i--) /* go backwards */
- /* It's better if it's deeper, or if it's the same depth with
- more cells (does that ever happen? Well, it could...) */
- if ((vi_out [i].depth > vi_out [best].depth) ||
- ((vi_out [i].depth == vi_out [best].depth) &&
- (vi_out [i].colormap_size > vi_out [best].colormap_size)))
- best = i;
- visual = (best < out_count ? vi_out [best].visual : 0);
- XFree ((char *) vi_out);
- return visual;
- }
- else
- return 0;
-}
-
-static Visual *
-pick_best_gl_visual (Screen *screen)
-{
- /* The best visual for GL is a TrueColor visual that is half as deep as
- the screen. If such a thing doesn't exist, then TrueColor is best.
- Failing that, the deepest available color visual is best.
-
- Compare this function to get_gl_visual() in visual-gl.c.
- This function tries to find the best GL visual using Xlib calls,
- whereas that function does the same thing using GLX calls.
- */
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count;
- Visual *result = 0;
-
- int ndepths = 0;
- int *depths = XListDepths (dpy, screen_number (screen), &ndepths);
- int screen_depth = depths[ndepths];
- XFree (depths);
-
- vi_in.class = TrueColor;
- vi_in.screen = screen_number (screen);
- vi_in.depth = screen_depth / 2;
- vi_out = XGetVisualInfo (dpy, (VisualClassMask | VisualScreenMask |
- VisualDepthMask),
- &vi_in, &out_count);
- if (out_count > 0)
- result = vi_out[0].visual;
-
- if (vi_out)
- XFree ((char *) vi_out);
-
- if (!result && screen_depth > 24)
- {
- /* If it's a 32-deep screen and we didn't find a depth-16 visual,
- see if there's a depth-12 visual. */
- vi_in.class = TrueColor;
- vi_in.screen = screen_number (screen);
- vi_in.depth = 12;
- vi_out = XGetVisualInfo (dpy, (VisualClassMask | VisualScreenMask |
- VisualDepthMask),
- &vi_in, &out_count);
- if (out_count > 0)
- result = vi_out[0].visual;
- }
-
- if (!result)
- /* No half-depth TrueColor? Ok, try for any TrueColor (the deepest.) */
- result = pick_best_visual_of_class (screen, TrueColor);
-
- if (!result)
- /* No TrueColor? Ok, try for anything. */
- result = pick_best_visual (screen, False, False);
-
- return result;
-}
-
-
-static Visual *
-id_to_visual (Screen *screen, int id)
-{
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count;
- vi_in.screen = screen_number (screen);
- vi_in.visualid = id;
- vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualIDMask),
- &vi_in, &out_count);
- if (vi_out)
- {
- Visual *v = vi_out[0].visual;
- XFree ((char *) vi_out);
- return v;
- }
- return 0;
-}
-
-int
-visual_depth (Screen *screen, Visual *visual)
-{
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count, d;
- vi_in.screen = screen_number (screen);
- vi_in.visualid = XVisualIDFromVisual (visual);
- vi_out = XGetVisualInfo (dpy, VisualScreenMask|VisualIDMask,
- &vi_in, &out_count);
- if (! vi_out) abort ();
- d = vi_out [0].depth;
- XFree ((char *) vi_out);
- return d;
-}
-
-
-#if 0
-/* You very probably don't want to be using this.
- Pixmap depth doesn't refer to the depths of pixmaps, but rather, to
- the depth of protocol-level on-the-wire pixmap data, that is, XImages.
- To get this info, you should be looking at XImage->bits_per_pixel
- instead. (And allocating the data for your XImage structures by
- multiplying ximage->bytes_per_line by ximage->height.)
- */
-int
-visual_pixmap_depth (Screen *screen, Visual *visual)
-{
- Display *dpy = DisplayOfScreen (screen);
- int vdepth = visual_depth (screen, visual);
- int pdepth = vdepth;
- int i, pfvc = 0;
- XPixmapFormatValues *pfv = XListPixmapFormats (dpy, &pfvc);
-
- /* Return the first matching depth in the pixmap formats. If there are no
- matching pixmap formats (which shouldn't be able to happen at all) then
- return the visual depth instead. */
- for (i = 0; i < pfvc; i++)
- if (pfv[i].depth == vdepth)
- {
- pdepth = pfv[i].bits_per_pixel;
- break;
- }
- if (pfv)
- XFree (pfv);
- return pdepth;
-}
-#endif /* 0 */
-
-
-int
-visual_class (Screen *screen, Visual *visual)
-{
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count, c;
- vi_in.screen = screen_number (screen);
- vi_in.visualid = XVisualIDFromVisual (visual);
- vi_out = XGetVisualInfo (dpy, VisualScreenMask|VisualIDMask,
- &vi_in, &out_count);
- if (! vi_out) abort ();
- c = vi_out [0].class;
- XFree ((char *) vi_out);
- return c;
-}
-
-Bool
-has_writable_cells (Screen *screen, Visual *visual)
-{
- switch (visual_class (screen, visual))
- {
- case GrayScale: /* Mappable grays. */
- case PseudoColor: /* Mappable colors. */
- return True;
- case StaticGray: /* Fixed grays. */
- case TrueColor: /* Fixed colors. */
- case StaticColor: /* (What's the difference again?) */
- case DirectColor: /* DirectColor visuals are like TrueColor, but have
- three colormaps - one for each component of RGB.
- Screw it. */
- return False;
- default:
- abort();
- return False;
- }
-}
-
-void
-describe_visual (FILE *f, Screen *screen, Visual *visual, Bool private_cmap_p)
-{
- char n[10];
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count;
- vi_in.screen = screen_number (screen);
- vi_in.visualid = XVisualIDFromVisual (visual);
- vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualIDMask),
- &vi_in, &out_count);
- if (! vi_out) abort ();
- if (private_cmap_p)
- sprintf(n, "%3d", vi_out->colormap_size);
- else
- strcpy(n, "default");
-
- fprintf (f, "0x%02x (%s depth: %2d, cmap: %s)\n",
- (unsigned int) vi_out->visualid,
- (vi_out->class == StaticGray ? "StaticGray, " :
- vi_out->class == StaticColor ? "StaticColor," :
- vi_out->class == TrueColor ? "TrueColor, " :
- vi_out->class == GrayScale ? "GrayScale, " :
- vi_out->class == PseudoColor ? "PseudoColor," :
- vi_out->class == DirectColor ? "DirectColor," :
- "UNKNOWN: "),
- vi_out->depth, n);
- XFree ((char *) vi_out);
-}
-
-int
-screen_number (Screen *screen)
-{
- Display *dpy = DisplayOfScreen (screen);
- int i;
- for (i = 0; i < ScreenCount (dpy); i++)
- if (ScreenOfDisplay (dpy, i) == screen)
- return i;
- abort ();
- return 0;
-}
-
-int
-visual_cells (Screen *screen, Visual *visual)
-{
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- int out_count, c;
- vi_in.screen = screen_number (screen);
- vi_in.visualid = XVisualIDFromVisual (visual);
- vi_out = XGetVisualInfo (dpy, VisualScreenMask|VisualIDMask,
- &vi_in, &out_count);
- if (! vi_out) abort ();
- c = vi_out [0].colormap_size;
- XFree ((char *) vi_out);
- return c;
-}
-
-Visual *
-find_similar_visual(Screen *screen, Visual *old_visual)
-{
- Display *dpy = DisplayOfScreen (screen);
- XVisualInfo vi_in, *vi_out;
- Visual *result = 0;
- int out_count;
-
- vi_in.screen = screen_number (screen);
- vi_in.class = visual_class (screen, old_visual);
- vi_in.depth = visual_depth (screen, old_visual);
-
- /* Look for a visual of the same class and depth.
- */
- vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualClassMask |
- VisualDepthMask),
- &vi_in, &out_count);
- if (vi_out && out_count > 0)
- result = vi_out[0].visual;
- if (vi_out) XFree (vi_out);
- vi_out = 0;
-
- /* Failing that, look for a visual of the same class.
- */
- if (!result)
- {
- vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualClassMask),
- &vi_in, &out_count);
- if (vi_out && out_count > 0)
- result = vi_out[0].visual;
- if (vi_out) XFree (vi_out);
- vi_out = 0;
- }
-
- /* Failing that, return the default visual. */
- if (!result)
- result = DefaultVisualOfScreen (screen);
-
- return result;
-}
diff --git a/uisimulator/x11/visual.h b/uisimulator/x11/visual.h
deleted file mode 100644
index dd45708ea0..0000000000
--- a/uisimulator/x11/visual.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* xscreensaver, Copyright (c) 1993-1999 by Jamie Zawinski <jwz@jwz.org>
- *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation. No representations are made about the suitability of this
- * software for any purpose. It is provided "as is" without express or
- * implied warranty.
- */
-
-#ifndef __VISUAL_H__
-#define __VISUAL_H__
-
-extern Visual *get_visual (Screen *, const char *name, Bool, Bool);
-extern Visual *get_visual_resource (Screen *, char *, char *, Bool);
-extern int visual_depth (Screen *, Visual *);
-/* extern int visual_pixmap_depth (Screen *, Visual *); */
-extern int visual_class (Screen *, Visual *);
-extern int visual_cells (Screen *, Visual *);
-extern int screen_number (Screen *);
-extern Visual *find_similar_visual (Screen *, Visual *old);
-extern void describe_visual (FILE *f, Screen *, Visual *, Bool private_cmap_p);
-extern Visual *get_overlay_visual (Screen *, unsigned long *pixel_return);
-extern Bool has_writable_cells (Screen *screen, Visual *visual);
-
-Visual *get_gl_visual (Screen *screen);
-
-#endif /* __VISUAL_H__ */
diff --git a/uisimulator/x11/vroot.h b/uisimulator/x11/vroot.h
deleted file mode 100644
index 83c7ba9acc..0000000000
--- a/uisimulator/x11/vroot.h
+++ /dev/null
@@ -1,126 +0,0 @@
-/*****************************************************************************/
-/** Copyright 1991 by Andreas Stolcke **/
-/** Copyright 1990 by Solbourne Computer Inc. **/
-/** Longmont, Colorado **/
-/** **/
-/** All Rights Reserved **/
-/** **/
-/** Permission to use, copy, modify, and distribute this software and **/
-/** its documentation for any purpose and without fee is hereby **/
-/** granted, provided that the above copyright notice appear in all **/
-/** copies and that both that copyright notice and this permis- **/
-/** sion notice appear in supporting documentation, and that the **/
-/** name of Solbourne not be used in advertising **/
-/** in publicity pertaining to distribution of the software without **/
-/** specific, written prior permission. **/
-/** **/
-/** ANDREAS STOLCKE AND SOLBOURNE COMPUTER INC. DISCLAIMS ALL WARRANTIES **/
-/** WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF **/
-/** MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ANDREAS STOLCKE **/
-/** OR SOLBOURNE BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL **/
-/** DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA **/
-/** OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER **/
-/** TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE **/
-/** OR PERFORMANCE OF THIS SOFTWARE. **/
-/*****************************************************************************/
-/*
- * vroot.h -- Virtual Root Window handling header file
- *
- * This header file redefines the X11 macros RootWindow and DefaultRootWindow,
- * making them look for a virtual root window as provided by certain `virtual'
- * window managers like swm and tvtwm. If none is found, the ordinary root
- * window is returned, thus retaining backward compatibility with standard
- * window managers.
- * The function implementing the virtual root lookup remembers the result of
- * its last invocation to avoid overhead in the case of repeated calls
- * on the same display and screen arguments.
- * The lookup code itself is taken from Tom LaStrange's ssetroot program.
- *
- * Most simple root window changing X programs can be converted to using
- * virtual roots by just including
- *
- * #include <X11/vroot.h>
- *
- * after all the X11 header files. It has been tested on such popular
- * X clients as xphoon, xfroot, xloadimage, and xaqua.
- * It also works with the core clients xprop, xwininfo, xwd, and editres
- * (and is necessary to get those clients working under tvtwm).
- * It does NOT work with xsetroot; get the xsetroot replacement included in
- * the tvtwm distribution instead.
- *
- * Andreas Stolcke <stolcke@ICSI.Berkeley.EDU>, 9/7/90
- * - replaced all NULL's with properly cast 0's, 5/6/91
- * - free children list (suggested by Mark Martin <mmm@cetia.fr>), 5/16/91
- * - include X11/Xlib.h and support RootWindowOfScreen, too 9/17/91
- */
-
-#ifndef _VROOT_H_
-#define _VROOT_H_
-
-#if !defined(lint) && !defined(SABER)
-static const char vroot_rcsid[] = "#Id: vroot.h,v 1.4 1991/09/30 19:23:16 stolcke Exp stolcke #";
-#endif
-
-#include <X11/X.h>
-#include <X11/Xatom.h>
-#include <X11/Xlib.h>
-
-static Window
-#ifdef __STDC__ /* ANSIfication added by jwz, to avoid superfluous warnings. */
-VirtualRootWindowOfScreen(Screen *screen)
-#else /* !__STDC__ */
-VirtualRootWindowOfScreen(screen) Screen *screen;
-#endif /* !__STDC__ */
-{
- static Screen *save_screen = (Screen *)0;
- static Window root = (Window)0;
-
- if (screen != save_screen) {
- Display *dpy = DisplayOfScreen(screen);
- Atom __SWM_VROOT = None;
- unsigned int i;
- Window rootReturn, parentReturn, *children;
- unsigned int numChildren;
-
- root = RootWindowOfScreen(screen);
-
- /* go look for a virtual root */
- __SWM_VROOT = XInternAtom(dpy, "__SWM_VROOT", False);
- if (XQueryTree(dpy, root, &rootReturn, &parentReturn,
- &children, &numChildren)) {
- for (i = 0; i < numChildren; i++) {
- Atom actual_type;
- int actual_format;
- unsigned long nitems, bytesafter;
- Window *newRoot = (Window *)0;
-
- if (XGetWindowProperty(dpy, children[i],
- __SWM_VROOT, 0, 1, False, XA_WINDOW,
- &actual_type, &actual_format,
- &nitems, &bytesafter,
- (unsigned char **) &newRoot) == Success
- && newRoot) {
- root = *newRoot;
- break;
- }
- }
- if (children)
- XFree((char *)children);
- }
-
- save_screen = screen;
- }
-
- return root;
-}
-
-#undef RootWindowOfScreen
-#define RootWindowOfScreen(s) VirtualRootWindowOfScreen(s)
-
-#undef RootWindow
-#define RootWindow(dpy,screen) VirtualRootWindowOfScreen(ScreenOfDisplay(dpy,screen))
-
-#undef DefaultRootWindow
-#define DefaultRootWindow(dpy) VirtualRootWindowOfScreen(DefaultScreenOfDisplay(dpy))
-
-#endif /* _VROOT_H_ */
diff --git a/uisimulator/x11/xmu.h b/uisimulator/x11/xmu.h
deleted file mode 100644
index 48084f747e..0000000000
--- a/uisimulator/x11/xmu.h
+++ /dev/null
@@ -1,14 +0,0 @@
-/* This file contains compatibility routines for systems without Xmu.
- * You would be better served by installing Xmu on your machine or
- * yelling at your vendor to ship it.
- */
-
-#ifndef __XMU_H__
-#define __XMU_H__
-
-#include <X11/Xlib.h>
-#include <stdio.h>
-
-int XmuPrintDefaultErrorMessage (Display *dpy, XErrorEvent *event, FILE *fp);
-
-#endif /* __XMU_H__ */