4183 Commits

Author SHA1 Message Date
Max Horn
b8995eadfc DS: Remove write buffering in DSFileStream, use wrapBufferedWriteStream instead
svn-id: r54331
2010-11-18 17:30:00 +00:00
Max Horn
24f4d97901 DS: Avoid needlessly allocating temporary Common::String instances
svn-id: r54329
2010-11-18 17:15:35 +00:00
Max Horn
152e52d015 COMMON: Make implementation of Buffered*Stream classes internal
svn-id: r54326
2010-11-18 17:02:51 +00:00
Max Horn
b8f0026739 DS: Port changes from 1.2.0 branch to trunk
svn-id: r54325
2010-11-18 17:01:30 +00:00
Max Horn
bac018a3aa DS: Two more 'FILE' related fixes/workarounds
svn-id: r54321
2010-11-18 15:42:52 +00:00
Max Horn
51a954c1dd DS: Add some FIXME/TODO comments on changes that need to be applied to the DS backend
svn-id: r54318
2010-11-18 13:17:25 +00:00
Max Horn
16d9e0f14a DS: Fix compilation despite use of 'forbidden' symbols
svn-id: r54317
2010-11-18 13:13:48 +00:00
Yotam Barnoy
50e6fe264b PSP: reduced fragmentation by allocating overlay just once
svn-id: r54316
2010-11-18 11:32:53 +00:00
Yotam Barnoy
5c8b4dbee7 PSP: added backtracing function for debugging
Currently not used by anything.

svn-id: r54312
2010-11-18 07:52:04 +00:00
Max Horn
668adaa461 GUI: Rename gui/GuiManager.* to gui/gui-manager.*
svn-id: r54265
2010-11-16 10:19:01 +00:00
Max Horn
427dc1ae93 GUI: Move major widgets to new directory gui/widgets
Also renamed the source/header files, now they are more closely
aligned to how we rename most other source files

svn-id: r54264
2010-11-16 10:11:57 +00:00
Max Horn
abe1959d36 COMMON: Simplify DECLARE_SINGLETON macro
This makes it possible to write
  DECLARE_SINGLETON(foo);
instead of
  DECLARE_SINGLETON(foo)
without causing a warning about an extra semicolon.
The extra semicolon helps some editors at parsing the C++ code.

svn-id: r54258
2010-11-16 08:23:13 +00:00
Yotam Barnoy
2e9b304d76 PSP: changed renderer to render huge images properly
The PSP HW wasn't able to calculate the proper stretching when given the whole image size on a huge image. This is also a better way to do it because we're not overwriting tiles of the texture.

svn-id: r54190
2010-11-10 16:22:00 +00:00
Fabio Battaglia
77a636aaec N64: correct wrong check in romfs stream code
my implementation of romfs_seek is based on lseek, not on fseek,
so it returns the offset on successful completion, not 0, corrected
the check in RomfsStream::seek().

svn-id: r54151
2010-11-09 11:00:56 +00:00
Max Horn
82e473bc3b BACKENDS: Partial merge of gsoc2010-opengl: Audio CD changes only
This commit contains the AudioCDManager changes from the gsoc2010-opengl
branch. The other changes in that branch are restricted to the backends
directory only (plus configure).

The Nintendo DS and Dreamcast ports still need to be ported over to
the new Audio CD system, but that should be fairly easy to do.

svn-id: r54147
2010-11-08 22:53:36 +00:00
Max Horn
daf3fb0df7 WINCE: Remove tons of obsolete workaround code for 'missing' headers and funcs
svn-id: r54089
2010-11-05 10:31:36 +00:00
Max Horn
7ace85e636 PLUGINS: Simplify ELF plugin providers & DLObject subclasses
* Remove DLObject virtual methods allocSegment and freeSegment.
  As long as all DLObject implementations use memalign + free to
  allocate/release segments, there is no point in wrapping those.
  This enables further simplifications.
* Add TemplatedELFPlugin template class. Use this instead of explicit
  ELFPlugin subclasses.
* Rename DLObject::discard_symtab to discardSymtab

svn-id: r54082
2010-11-05 01:20:34 +00:00
Max Horn
102e7ee88c PLUGINS: Add EM_SH to elf32.h (e_machine type used by DC backend)
svn-id: r54081
2010-11-05 01:19:45 +00:00
John Willis
b7f1e3b239 GPH: Update README-GPH to suggest even more WiKi reading.
svn-id: r54064
2010-11-04 14:12:30 +00:00
Yotam Barnoy
f5bfae598c PSP: cleaning up some stuff from plugin merge
svn-id: r54060
2010-11-04 06:28:34 +00:00
Yotam Barnoy
50d2f7a6be DS: moved build-ds.sh to DS directory. It's currently unused but has a good way of reducing dynamic size
svn-id: r54059
2010-11-04 06:22:24 +00:00
Yotam Barnoy
3fedacdb43 DC: remove multi-build of dc-provider that slipped in with plugin merge.
svn-id: r54058
2010-11-04 05:51:58 +00:00
Max Horn
99cf0e3936 COMMON: Undo changes to common/ptr.h, remove Common::ScopedPtrC
The deletePointer() method approach cannot work, as it is called
by the destructor of the base class.
A possible correct solution would be to enhance ScopedPtr with a
"deleter" object like SharedPtr. But this seems overkill as long as we
need it in only one place.

svn-id: r54057
2010-11-04 00:49:12 +00:00
Yotam Barnoy
13b904d282 Merge from gsoc2010-plugins
This merge was extremely difficult to carry out. It wasn't entirely SVN's fault -- there were several merges to the branch that were done by hand. Please check for any issues and regressions. Also note that the DS makefile was not copied over since the "one at a time" plugin mode currently has too much fragmentation ie. it doesn't work.

svn-id: r54051
2010-11-03 22:01:01 +00:00
Yotam Barnoy
e56a3747d2 Dummy file creation through SVN to allow merging gsoc plugins via mercurial
svn-id: r54046
2010-11-03 06:23:16 +00:00
John Willis
7f354ac7e0 OPENPANDORA: Add FORBIDDEN_SYMBOL_ALLOW_ALL define to enable use of forbidden symbols.
svn-id: r54041
2010-11-02 11:20:43 +00:00
Max Horn
06876671e5 SYMBIAN: Trigger a compiler error on systems where __GCC32__ is set, instead of producing incorrect code
svn-id: r54005
2010-11-01 16:02:47 +00:00
Max Horn
e27b05ef35 COMMON: Rename String::printf() to String::format()
This is a first step towards getting rid of all uses of regular printf,
fprintf, vprintf, vfprintf, puts, fputs, etc. in our codebase.

The name format() reflects the purpose of the function, and parallels
String.format() in Java, boost::format, and others.

svn-id: r54004
2010-11-01 16:02:28 +00:00
Max Horn
c94278fb20 GP2X: Fix warnings about unused decls
svn-id: r53982
2010-10-31 17:24:27 +00:00
Max Horn
6dc5fccfe3 WINCE: Fix assert() implementation
svn-id: r53980
2010-10-31 17:23:31 +00:00
Max Horn
a4bdd3cdec WINCE: Code formatting
svn-id: r53979
2010-10-31 17:11:43 +00:00
Max Horn
086fe78af1 WINCE: Enable use of forbidden symbols, cleanup
I tried to untangle the header interdependencies a bit, but this
is still quite a mess.
This commit also fixes some warnings.

svn-id: r53978
2010-10-31 17:10:45 +00:00
Max Horn
ae829727da PS2: Enable another use of forbidden symbols
svn-id: r53977
2010-10-31 17:01:47 +00:00
Yotam Barnoy
94c8d0a14d Updated with latest from trunk
svn-id: r53976
2010-10-31 11:08:43 +00:00
Max Horn
917c4b00cb WINDOWS: Enable use of forbidden symbols
svn-id: r53972
2010-10-31 00:14:59 +00:00
Max Horn
2e4cedd98a IPHONE: Enable use of forbidden symbols
svn-id: r53971
2010-10-31 00:04:24 +00:00
Max Horn
ac748c2ebd PSP: Enable use of forbidden symbols
svn-id: r53970
2010-10-31 00:01:00 +00:00
Max Horn
184c732bf6 PS2: Enable use of forbidden symbols
svn-id: r53969
2010-10-30 23:53:59 +00:00
Max Horn
6ea76cd913 SDL: Fix SDL plugin provider code (used e.g. by Dingux port)
svn-id: r53968
2010-10-30 23:53:30 +00:00
Max Horn
1425013c4b GPH: Enable use of forbidden symbols
svn-id: r53964
2010-10-30 22:43:25 +00:00
Max Horn
19c3196c1c LINUXMOTO: Enable use of forbidden symbols
svn-id: r53963
2010-10-30 21:49:46 +00:00
Max Horn
768038be11 GP2x: Enable use of forbidden symbols
svn-id: r53962
2010-10-30 21:49:20 +00:00
Max Horn
44393b2dc8 ALL: Add code to help stop people from accidentally using "bad" APIs
A new header file common/forbidden.h is included by scummsys.h and it
re-#defines numerous symbols like fopen(), fread(), system(), etc. with
garbage, in order to provoke compile errors in any code using them.

If a .cpp file really *must* use any of these (e.g. because it is a
backend file), then these redefinitions can be disabled by #defining
FORBIDDEN_SYMBOL_ALLOW_ALL as the first thing in the .cpp file. Whenever
this is done, an explanatory comment should be added.

Note that this system cannot catch all "bad" usages (notably the Lua
code in the sword25 engine), as it can only work if scummsys.h is
included.

svn-id: r53961
2010-10-30 21:27:42 +00:00
Yotam Barnoy
547e028b93 PSP: Improved image viewer movement
Before the limit was arbitrary. Now we check the proper location on screen and move in increments relative to the size on screen.

svn-id: r53918
2010-10-29 07:55:18 +00:00
Yotam Barnoy
082d9a4465 PSP: corrected png loader to use bit depth rather than palette size
Sometimes we can have an 8bit file for example that has a palette of 16 colors or less, so we need to go by the bit depth rather than inferring the bit depth from the palette size.

svn-id: r53917
2010-10-29 07:08:24 +00:00
Yotam Barnoy
13b6e0d69a PSP: Fixed ImageViewer code to deallocate TimedMessageDialog
Not deallocating it before loading the next image causes fragmentation in memory which eventually prevents big things from being loaded into memory.

svn-id: r53873
2010-10-27 11:09:03 +00:00
Angus Lees
a0a9de42e1 ANDROID: Add --disable-timidity to the recommended flags
svn-id: r53809
2010-10-25 08:51:10 +00:00
Angus Lees
3bd60b09c1 ANDROID: Don't trust eglChooseConfig and refilter/sort results manually
It seems some Android versions and devices (eg Droid) don't implement
eglChooseConfig according to spec and the first result isn't the best
choice.  Implement our own filtering / scoring to workaround this.

svn-id: r53808
2010-10-25 08:50:16 +00:00
Angus Lees
7d0598d810 ANDROID: Provide an alternate partial texture update for stride != width
The new one copies into a temp buffer and only does one
glTexSubImage2D.  I'm led to believe that this is faster on some
devices (but slower on others).  Disabled for now, but someone might
want to try both versions on their slow device.

Also manually set glColor before calling DrawTexiOES, following
mention of a bug in a discussion I stumbled across.  DrawTexiOES-use
is disabled for now, so this is a noop.

svn-id: r53803
2010-10-25 07:35:40 +00:00
Angus Lees
2bf64b1050 ANDROID: Force extra screen update when updating overlay.
This appears to work around a blank screen bug Nexus1.  I never
tracked it down, but as far as I can tell it is triggered by multiple
overlapping updates before flushing the texture to screen.  This
condition only happens in the overlay atm so an extra redraw isn't the
end of the world.

(Also remove an unused _full_screen_dirty property)

svn-id: r53801
2010-10-25 07:27:05 +00:00