Potential Codeblast 2013 entry (WIP)

Start a work log and update it occasionally with your projects progress
xdaniel
Psy-Q Enthusiast
Psy-Q Enthusiast
Posts: 17
Joined: Dec 15, 2012
Location: Germany
Contact:

Post by xdaniel » January 16th, 2013, 5:17 am

torxe: If it's "just" the conversion to XA, could you post about your method so far? Every time I tried to build an image with XA data, the data doesn't appear to be recognized as such by the code. That might just be my code, tho...

Anyway, another tiny update to the menu, before I'll (probably...) go back to actually improving the game system itself:

Code: Select all

- Added some background behind main menu entries
- Fixed fade brightness glitch in system code; improved mode change logic in main menu, ex. to allow return to title; other minor code/visual changes
Image

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » January 16th, 2013, 2:41 pm

I use a WAV file at 44100 (44.1) kHz in Movie Converter 3.2 (MC32.exe) to convert it to an XA at 37.8 KHz (Stereo).
I will be trying today to change the WAV bitrate, and then converting it in MC32.

There also some tools for checking the WAV. I will need to try them out and see what they do.

Reading a guide called XATUT.DOC, it mentions that the sectors need to be a certain size.

"These files now need to be converted to the correct format based on the playback speed and type.
The following table shows the acceptable values for the .XA format."

Playback speed | Sampling frequency | Stereo/Monaural | Data/gap ratio | Total number of channels

Double speed 37.8KHz Stereo 1 sector / 7 sectors 8
Double speed 37.8KHz Monaural 1 sector / 15 sectors 16
Double speed 18.9KHz Stereo 1 sector / 15 sectors 16
Double speed 18.9KHz Monaural 1 sector / 31 sectors 32
Standard speed 37.8KHz Stereo 1 sector / 3 sectors 4
Standard speed 37.8KHz Monaural 1 sector / 7 sectors 8
Standard speed 18.9KHz Stereo 1 sector / 7 sectors 8
Standard speed 18.9KHz Monaural 1 sector / 15 sectors 16

You do this, buy changing the 'Multi Channel' settings in MC32 as seen below:
mc32_xa.png
It still however, does not work.
Even using the tools 'cleanwav.exe' and 'checkwav.exe' does not solve the problem.

I can not use them in 'jpsxdec.exe' which is a program to play XA files using Java (download here)
(I got sick of burning/wasting CD-R's).

Sony's 'XAPLAYER.exe' will play them fine - but it does not mean they will work.
As an example, I dumped the RAW data from a PSX game (Bust a Groove) which were the songs in XA format.
Sony's XAPLAYER could NOT play these. However, jpsxdec and my code could. So, it is a creation problem as we can see obviously.
You do not have the required permissions to view the files attached to this post.
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.

PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.

xdaniel
Psy-Q Enthusiast
Psy-Q Enthusiast
Posts: 17
Joined: Dec 15, 2012
Location: Germany
Contact:

Post by xdaniel » January 19th, 2013, 4:07 am

Will look into XA again later, not sure when exactly, tho. Seems like I caught a bit of a cold, so I'm probably taking a few days off from coding. Before that, some recent changes:

Code: Select all

- Started in-game overhaul: backgrounds & pause function added so far
- Minor AI changes; game now keeps track of occupied field height
- Added color-cycling to field BG as a height warning indicator; fixed date in GMSS startup debug message
- Updated makefile, emulator now expected in psx\tools; added support for both controllers in GMSS & in-game 2P Versus
Image

The game in Versus mode, with the field of the 2nd player (who's not being played) slowly filling up, resulting in the field's background blinking red.

xdaniel
Psy-Q Enthusiast
Psy-Q Enthusiast
Posts: 17
Joined: Dec 15, 2012
Location: Germany
Contact:

Post by xdaniel » January 23rd, 2013, 9:36 am

Haven't looked into XA again yet, haven't yet looked into fixing some slowdown issues I'm having, but have worked on memory card support:

Code: Select all

- Minor changes
- Preliminary stub code for memcard handling & message boxes
- Having slight slowdown issues (at least in part) due to the tiled scrolling BG; moved game logic processing to vsync, helped somewhat; need to rethink and rewrite the BG
- Improved memcard infrastructure & message box handling, game can detect and format cards, find, load and save its file, and continue without saving; still need to split some memcard code from src/modes/logo.c and turn into reusable functions for system/memcard.c
For some screenshots of the memory card goodness, here's a small album of 8 shots: http://imgur.com/a/HnNe8#0. However, the message text and box design aren't done yet, the game doesn't actually save any data besides the file header with ex. the title as seen in the BIOS' memory card manager, so it's still very much a work-in-progress...

[youtube]http://www.youtube.com/watch?v=bXMObtZ4BeQ[/youtube]

xdaniel
Psy-Q Enthusiast
Psy-Q Enthusiast
Posts: 17
Joined: Dec 15, 2012
Location: Germany
Contact:

Post by xdaniel » February 11th, 2013, 11:03 am

Taking a bit of a break from coding for the PSX; went back to hacking N64 games. Regardless, here's the latest changes from late January and two not-so-expressive screenshots. I'll resume this once Zelda and C# bore me again :P

Code: Select all

- Refactoring & expanding memcard support; created game-specific MC functions and structures, added calls to them to game code; cleaned up logo.c somewhat; still need to replace MC icon with an original one
- Improved error handling for memcard operations; added checksum and data ID to game data structure, game now checks file integrity
- Improved message box code, refined design; updated memory card messages; changed dialog flow in logo.c; fixed ptprint.c measureString to handle strings with linebreaks
- Default game data wasn't being restored when deleting & recreating corrupted file, so a file w/ corrupted ID stayed corrupt
- Slowdown elimination in progress; removing unnecessary rendering calls, moving logic code to vsync callbacks, maybe convert excessive GsSPRITE usage to POLY_FT4
- Speedup and optimization work in game (title.c, mainmenu.c) and GMSS (ptprint.c); other minor changes
- Fixed field BG color-cycling, mainmenu background color
Image
Image

User avatar
Shadow
Verified
Admin / PSXDEV
Admin / PSXDEV
Posts: 2670
Joined: Dec 31, 2012
PlayStation Model: H2000/5502
Discord: Shadow^PSXDEV

Post by Shadow » February 13th, 2013, 9:33 pm

Nevermind... I got XA working (made it up to 40 coasters) :)
I will make a work log on how to master this difficult process... maybe after the competition though ;)

P.S sorry for your hi-jacking your topic.
Development Console: SCPH-5502 with 8MB RAM, MM3 Modchip, PAL 60 Colour Modification (for NTSC), PSIO Switch Board, DB-9 breakout headers for both RGB and Serial output and an Xplorer with CAETLA 0.34.

PlayStation Development PC: Windows 98 SE, Pentium 3 at 400MHz, 128MB SDRAM, DTL-H2000, DTL-H2010, DTL-H201A, DTL-S2020 (with 4GB SCSI-2 HDD), 21" Sony G420, CD-R burner, 3.25" and 5.25" Floppy Diskette Drives, ZIP 100 Diskette Drive and an IBM Model M keyboard.

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests