Open main menu

Bluddy

Joined 24 February 2010
682 bytes removed ,  20:01, 11 October 2010
 
Line 52: Line 52:


== Ideas ==
== Ideas ==
* Create a define for small platforms that will prevent seeking to the end of files just to get the length in MP3 and OGG files. This can be very expensive for small platforms. The changes need to be in the decoder files, as well as in the audiocd and audiostream files,
* Index file for big mp3/ogg files: currently we have to seek through the whole file. This affects Loom and MI1 and any others. The idea is to create an index file (file_mp3.idx) during the first run. Playing a music file will look for an index file if the file is beyond a certain size. Index files can be created to have certain intervals (e.g. every 30 seconds) or perhaps to record all accesses to the files, which will mean they're only useful the 2nd time through a game. The file is just a list of time, position in the file.
* PSP may some day be unable to load ScummVM plugins as they are, because it's shifting towards accepting only PRX files (ie. PIC code). Some solution will be needed to adapt the current plugin code for PIC in the main executable.
* PSP may some day be unable to load ScummVM plugins as they are, because it's shifting towards accepting only PRX files (ie. PIC code). Some solution will be needed to adapt the current plugin code for PIC in the main executable.
** Idea: dump the symbol table of the main executable into another file. When loading plugins, load this into memory. Create a symbol in memory using ld script that will indicate where in memory the main executable was loaded. Finally, relocating the plugins will obviously be more work since we don't have ld to do some of the job for us. We might need 2 MipsPlugins: MipsComplete and MipsIncomplete.
** Idea: dump the symbol table of the main executable into another file. When loading plugins, load this into memory. Create a symbol in memory using ld script that will indicate where in memory the main executable was loaded. Finally, relocating the plugins will obviously be more work since we don't have ld to do some of the job for us. We might need 2 MipsPlugins: MipsComplete and MipsIncomplete.
** Alternatively instead of dumping the table, just copy the executable into the plugin directory and rename it base.plg.
36

edits