Commit Graph

71 Commits

Author SHA1 Message Date
asvitkine
f12f5173be macroman_to_host_encoding - so it works the other way around too 2007-01-24 02:37:06 +00:00
asvitkine
ab86a395da Since Guest and Host OS may use different text encodings for filenames,
I am adding functionality to support this. For the moment, I've only
added the platform-specific conversion for MacOSX (ie: UTF8 -> MacRoman),
but others can be added later.
2007-01-22 17:14:06 +00:00
gbeauche
61a2e86594 Rewrite MacOS X CD-ROM support.
Other bugs fixed:
- CD-ROM media are polled and now can be changed without rebooting
- Buffer overflow, memory leak and extra wait in CD-ROM ejection code
2006-05-08 12:15:58 +00:00
gbeauche
4f07113555 Patch SynchIdleTime() to implement new "idlewait" prefs item. 2006-04-30 21:16:48 +00:00
cebix
a415ed6117 added missing virtual destructor 2005-11-24 16:43:11 +00:00
gbeauche
b52fd5535b GUI cosmetics 2005-11-20 17:26:16 +00:00
gbeauche
e355c83f59 Add system-specific implementations of idle_{wait,resume} functions. 2005-06-30 10:20:18 +00:00
gbeauche
8532e34485 Update GTK Prefs Editor with support for "jitinline" and "slirp" ethernet. 2005-06-06 20:11:50 +00:00
gbeauche
143b18c752 Make ethernet really work on 64-bit platforms, especially x86-64 2005-03-19 17:43:03 +00:00
gbeauche
30632aed4f Happy New Year! 2005-01-30 21:42:16 +00:00
gbeauche
d075282607 new way to allocate dt_store 2005-01-08 08:57:53 +00:00
gbeauche
655269516d Windows debug functions only in native win32 mode 2004-11-21 08:11:20 +00:00
gbeauche
e85f4397c8 Backport copy-paste of 'TEXT' from SheepShaver 2004-11-15 23:27:43 +00:00
gbeauche
df471bbbe6 Fix build on Windows with recent gcc (winbug) 2004-11-15 00:24:16 +00:00
cebix
9e7932abf0 Happy New Year! :) 2004-01-12 15:29:31 +00:00
gbeauche
0b001e81a5 Additional string defs for JIT-specific options 2002-09-17 16:07:21 +00:00
cebix
8871da753d - added infrastructure for multi-monitor support; only video_x.cpp is
converted for the new scheme; not actually tested with a mult-monitor
  setup yet but at least single-monitor display doesn't seem to be broken
  (UAE banked addressing would definitely require some extensions to handle
  multiple frame buffers)
- struct video_mode has an extra field that is free for use by platform-
  specific code
2002-04-25 11:00:31 +00:00
cebix
9009fc63a0 some cleanups in the sound component 2002-03-10 19:34:11 +00:00
cebix
628533940d - documentation updates
- 2001 -> 2002
- version 0.9 -> 1.0
2002-01-15 14:58:43 +00:00
cebix
b36675d9c2 prepared XPRAM code for PowerMac emulation (8192 bytes NVRAM) 2001-10-07 19:50:21 +00:00
cebix
72c7f0db7a - updated the TECH document
- EtherReset() clears the UDP protocol list
- audio_oss_esd.cpp: AudioExit() calls close_audio()
- ether_unix.cpp: uses map<> for protocol handlers
- updated audio_dummy.cpp and ether_dummy.cpp
2001-07-13 15:39:25 +00:00
cebix
6c35c2a9e8 - Implemented AppleTalk-over-UDP tunnelling, activated by setting "udptunnel"
to "true". This uses the BSD socket API, so it's fairly portable (currently
  only imeplemented under Unix, though). This works by sending raw Ethernet
  packets as UDP packets to a fixed port number ("udpport", default is 6066),
  using IP broadcasts to simulate Ethernet broad- and multicasts. Currently
  only tested with AppleTalk.
2001-07-12 19:48:28 +00:00
cebix
5868a40a37 - ADB has its own interrupt flag, INTFLAG_ADB
- ADBMouseMoved(), ADBMouseDown/Up() and ADBKeyDown/Up() trigger the ADB
  interrupt
- ADB mutex is only used for mouse movement (the only input state where it
  matters)
- adb.cpp: toggling relative mouse mode resets mouse_x/y
- PrimeTime(0) schedules a timer task with 0 delay time; this is still not
  the correct implementation, but it makes MacSyndicate work...
- Unix: pthreads are preferred to POSIX.4 timers for 60Hz ticks because the
  timers drift badly under Linux and the thread can compensate for drifting
  well enough
- Unix: moved GetTicks_usec() and Delay_usec() to timer_unix.cpp
- video_x.cpp: X mouse acceleration is disabled in relative mouse mode because
  MacOS does its own acceleration
- video_x.cpp: palette[].pixel and palette[].flags are always preset
- video_x.cpp: decoupled X event handling from 60Hz video refresh cycle by
  using select() with a timeout on the X fd
2001-07-09 11:22:01 +00:00
cebix
e7a13421df replaced TIME_OFFSET constant by portable TimeToMacTime() function 2001-07-06 17:36:09 +00:00
cebix
7eb6ed2b86 - supported audio formats are now kept in STL vectors
- added run-time audio parameter switching for OSS/ESD audio output
- setting ESPEAKER env variable causes B2 to try ESD before OSS
2001-07-05 20:30:54 +00:00
cebix
abd6539568 some small fixes 2001-07-04 11:12:20 +00:00
cebix
d0a4b3e5fc - improved compatibility of multiple depth/resolution handling with versions
of MacOS before 7.6:
   - Apple mode IDs are now allocated contiguously from 0x80 (the video_*.cpp
     module must call video_init_depth_list() after adding all modes)
   - if the video driver didn't receive a GetVideoParameters call, it patches
     ScrnBase and the main GDevice upon a video mode switch (otherwise MacOS
     will continue to use the old frame buffer base)
   - the rowBytes values in the video parameters slot resources are correct
     for all bit depths
2001-07-03 19:20:47 +00:00
cebix
cf22cb032a - added support for platform-independant mutexes, currently only properly
implemented under Unix
- adb.cpp uses mutexes for thread-safe mouse handling
- video_x.cpp: pressing Ctrl-F5 in windowed mode switches to a "grabbed"
  relative mouse mode, useful for some games
- video_x.cpp: fixed some bugs relating to the hotkeys (key releases are no
  longer treated as hotkeys)
2001-07-03 15:59:49 +00:00
cebix
5bd08dac88 - video_set_palette() gets passed the number of used palette entries
- video_x.cpp supports 2- and 4-bit modes on truecolor screens
2001-07-01 21:09:30 +00:00
cebix
73912e732e fixed compilation problems on BeOS/ppc 2001-07-01 12:42:04 +00:00
cebix
a4b36fd674 - added some documentation
- VidLocal.sp -> VidLocal.slot_param
- X11 color map is loaded with ramp upon startup to avoid the annoying black
  screen during initialization
2001-07-01 00:46:38 +00:00
cebix
b0b21f7fe6 - experimental gamma table support
- restructured video_x.cpp: uses classes for display types
2001-06-30 17:21:56 +00:00
cebix
738fa25344 slot ROM checksum is recalculated after patching during resolution switch 2001-06-29 12:51:21 +00:00
cebix
0cf3f32b7d video_x.cpp supports resolution switching in windowed mode: the available
resolutions are 512x384, 640x480, 800x600, 1024x768 and 1280x1024 (the prefs
editor has to be updated to reflect this). The resolution selected in the
prefs editor is used as the default, but it can be changed in the Monitors
control panel. So far only tested with direct addressing.
2001-06-28 21:20:02 +00:00
cebix
0fe2584d92 depth/resolution switching infrastructure should be complete now; slot ROM
contains all supported depths, default mode is stored in XPRAM upon startup,
and added video_switch_to_mode() call (currently unimplemented in all drivers)
2001-06-27 20:05:31 +00:00
cebix
1be8a821a8 added infrastructure for resolution/depth switching (currently, all video
drivers only support one mode, the one selected by the user)
2001-06-27 19:03:38 +00:00
cebix
e0307117d2 - added help for command line options
- PrefsInit() removes all processed options
2001-04-01 12:11:45 +00:00
cebix
5ffe6505dc - fixed bugs in the BeOS extfs file types handling 2001-03-31 14:32:01 +00:00
cebix
c23567ab14 - bumped version number to 0.9
- updated copyright dates
2001-02-02 20:53:00 +00:00
cebix
049092ac3d added numeric values to video driver control/status codes 2001-01-25 21:37:41 +00:00
cebix
6b92e785c7 - removed the INT16 prefs item type; use INT32 instead
- AmigaOS/Unix: it's now possible to specify preferences items on the
  command line
- Unix: command line options now take "--"-prefix, e.g. "--rominfo"
2001-01-04 19:50:23 +00:00
cebix
d4a1463279 - some cleanups in the AmigaOS code 2000-09-04 16:30:48 +00:00
cebix
2bebaceabc - fixed compilation problem under Linux
- TriggerNMI() declaration moved to cpu_emulation.h
2000-08-22 12:44:30 +00:00
jlachmann
46612d3008 added MacsBug Support -jl- 2000-08-20 14:08:44 +00:00
cebix
f20fff9ea9 - added EMUL_OP opcodes for sound input driver, created stubs for driver
routines
2000-07-25 17:02:24 +00:00
cebix
5a606f4724 - fixed compilation problems 2000-07-25 16:25:04 +00:00
cebix
38e68144b2 - more cleanups
- splitted prefs.cpp into prefs.cpp and prefs_items.cpp to make prefs.cpp
  reusable for other projects
2000-07-25 15:19:43 +00:00
cebix
675c5f1d7b - new FOURCC() macro in macos_util.h 2000-07-22 16:07:23 +00:00
cebix
6fa6776184 - small fixes for NetBSD and AmigaOS 2000-07-22 16:00:36 +00:00
cebix
006472eb44 - extfs: replaced get/set_finder_*() functions by get/set_finfo(), helper
files now store complete FInfo/FXInfo
2000-07-21 18:01:07 +00:00