TODO
author Ryan C. Gordon <icculus@icculus.org>
Fri, 29 Mar 2002 08:19:39 +0000
changeset 142 e3eb45e37874
parent 136 e70c4231a8b7
child 179 4c958de93bf7
permissions -rw-r--r--
Updated.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
98
2f7fe055f772 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 92
diff changeset
     1
Stuff that needs to be done and wishlist:
92
eae010ddea96 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 85
diff changeset
     2
136
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
     3
These are in no particular order. A 1.0 release is reliant on doing most of
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
     4
 this stuff. Some might be dupes, some might be done already.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
     5
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
     6
- autoconf support?
92
eae010ddea96 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 85
diff changeset
     7
- update the Makefile so that Cygwin can generate a DLL. The entire codebase
eae010ddea96 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 85
diff changeset
     8
  compiles under Cygwin otherwise.
85
fd53eb9f9ec9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 77
diff changeset
     9
- Hmm...we can determine the actual CD-ROM drives under Win32, but how do you
fd53eb9f9ec9 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 77
diff changeset
    10
  decide that there's no disc in the drive?
98
2f7fe055f772 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 92
diff changeset
    11
- Platform-specific functions/macros to handle byte ordering.
2f7fe055f772 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 92
diff changeset
    12
- A PHYSFS_readUint32(), _readSint32(), etc API.
136
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    13
- Patch the zlib used on win32 to 1.1.4.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    14
- Switch the CHANGELOG to list newest changes first.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    15
- Write manpages, preferrably generated from some javadoc-style solution
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    16
  so we can make HTML versions etc from the same data.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    17
- Byte order API; just something simple like:
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    18
    __EXPORT__ PHYSFS_uint16 PHYSFS_swapBE16(PHYSFS_uint16 val);
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    19
    __EXPORT__ PHYSFS_uint16 PHYSFS_swapLE16(PHYSFS_uint16 val);
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    20
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    21
   (these can be macros. The hard part is determining the architecture at
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    22
    compile time, and whether a given platform offers accelerated
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    23
    conversion macros already. We can probably jack this from SDL, too.)
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    24
- Make win32.c respect the more strict filesystem layout enforced by
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    25
  Win2000 and later.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    26
- Improve ZIP_seek() (archivers/zip.c)
142
e3eb45e37874 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 136
diff changeset
    27
- Make the zipfile parse symlinks with relative paths. See the function
e3eb45e37874 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 136
diff changeset
    28
  expand_symlink_path() in archivers/zip.c ...
e3eb45e37874 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 136
diff changeset
    29
- Make archivers/unzip.c use the new byte order API for a little more
e3eb45e37874 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 136
diff changeset
    30
  efficiency (it gets 32-bit ints as four 1-byte reads; yuck.)
136
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    31
- Actually, the zipfile driver could use a lot of tweaking. Please look
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    32
  through it.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    33
- Other archivers: perhaps tar(.gz|.bz2), RPM, etc. These are less
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    34
  important, since streaming archives aren't of much value to games (which
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    35
  is why zipfiles are king: random access), but it could have uses for, say,
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    36
  an installer/updater. I thought it might be neat to have MBOX and Maildir
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    37
  support so that both "archives" look identical to an application; might be
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    38
  nice for an email program. That's blue sky, unless someone wants to tackle
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    39
  it.
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    40
- Look for FIXMEs (many marked with "!!!" in comments).
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    41
- Port to BeOS (might work already? Will work for sure with autoconf support)
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    42
- Port to MacOS Classic (needs a platform driver, byte order fixes mentioned)
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    43
- Port to MacOS X (specifically, make Project Builder files; unix.c should
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    44
  work with it as-is. Might compile as-is with the current Makefile, byte
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    45
  ordering fixes mentioned).
e70c4231a8b7 Updated.
Ryan C. Gordon <icculus@icculus.org>
parents: 109
diff changeset
    46
- Probably other stuff. Requests and recommendations are welcome.
77
13a58793ca58 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    47
13a58793ca58 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    48
// end of TODO ...
13a58793ca58 Initial add.
Ryan C. Gordon <icculus@icculus.org>
parents:
diff changeset
    49