DCEmulation

dreamcast development • homebrew software • hardware hacking • indie games • emulators • and more!
Back to main site
It is currently Tue Sep 01, 2015 3:20 pm

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 24 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Tue Jul 14, 2015 6:52 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Image

I have ported this little game for the Sega Dreamcast called "Falling Time".
It was made by Cong Xu and Nebuleon and it was originally only available for GCW Zero.
It's basically a Falldown clone on crack, and you can also grab eggplants to increase your score.
I first ported it to the TI Nspire and now it is available for Sega Dreamcast.

Image

The game supports saving to a VMU. (First controller)
The game also has a multiplayer mode, up to 2 players.
Use the Dpad to move the penguins.

You can download it here.


Last edited by gameblabla on Sun Aug 02, 2015 3:14 pm, edited 2 times in total.

Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Wed Jul 15, 2015 8:27 pm 
Offline
The Crabby Overlord
The Crabby Overlord
User avatar

Joined: Mon May 27, 2002 9:31 am
Posts: 4553
Well, this is certainly a fine place to post new homebrew games. :wink:

It's nice to see some new stuff coming along, especially from new faces. Welcome. :grin: Hopefully someone will give you some feedback soon (I wish I could, but alas I cannot at the current time).


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Thu Jul 23, 2015 3:50 pm 
Offline
DCEmu Newbie
DCEmu Newbie
User avatar

Joined: Thu Jul 23, 2015 3:40 pm
Posts: 1
Location: Poland
Awesome job!! :wink:
Any chance to port more games? Like Griffon Legend?
https://github.com/dmitrysmagin/griffon_legend
http://www.phatcode.net/downloads.php?id=430

_________________
Heaven for SEGA Fans.. SEGA-SKY Portal http://www.sega.c0.pl


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Thu Jul 23, 2015 4:43 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Rolly wrote:
Awesome job!! :wink:

Thanks, i could be releasing a game that's not even working on real hardware but it's cool.

Quote:
Any chance to port more games? Like Griffon Legend?

NOO ! IT BURNS !
I tried to port that game to 3 different platforms (TI Nspire, PSP and the Dreamcast) but that game is just highly unefficient .
It has a mapdb engine that's eating like 80 MB of RAM alone and the whole game requires 128 MB of RAM, if not more.
Sorry, Griffon Legend is not going to be possible.

For now, i'm working on Tail-Tale and i will port The Last Mission' as well.


Last edited by gameblabla on Fri Jul 24, 2015 10:51 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Fri Jul 24, 2015 6:03 am 
Offline
Insane DCEmu
Insane DCEmu
User avatar

Joined: Wed Apr 09, 2008 7:04 am
Posts: 191
Location: Very Nordic
Hi gameblabla, i remember i played your other dc port Vigoroth the delivery man :wink: , can you compile this game into single binary file?

_________________
Order Fast Striker, GunLord and NEO XYX for Dreamcast at http://www.ngdevdirect.com
Order 2d/3d Shoot 'em up Sturmwind http://www.redspotgames.com/shop
Order Dux 1.0, Redux incl. Dux 1.5 and The Ghost Blade at http://hucast.com/index.php


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Fri Jul 24, 2015 10:49 am 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Basil wrote:
Hi gameblabla, i remember i played your other dc port Vigoroth the delivery man :wink: , can you compile this game into single binary file?

Hello Basil,
i'm suprised you still remember this game ! :D

What do you mean though by "compile this game into single binary file" ?
This is a game for the BennuGD interpreter so i can't just put it into a single binary unlike C/C++ games.
Maybe you mean that i should re-release it ?


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Fri Jul 24, 2015 3:24 pm 
Offline
Newsposter
Newsposter

Joined: Tue May 28, 2002 4:51 am
Posts: 3683
Location: pakistan,karachi
Welcome to the forums!
Thanks for uploading the game here.

_________________
Image
www.dreamcast-scene.com


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Tue Jul 28, 2015 4:27 am 
Offline
DCEmu Junior
DCEmu Junior

Joined: Tue Aug 30, 2011 1:29 am
Posts: 37
Newsed for french DC lovers : http://dreamcast-news.blogspot.com/2015 ... -time.html

_________________
http://www.dreamcast.fr / http://dreamcast-news.blogspot.com


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Tue Jul 28, 2015 4:00 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
dreamcast-news wrote:

Thanks dude, i'm french too.

Still don't know if Falling Time is working properly on real hardware,
i ordered a sega dreamcast and i'm still waiting for it so gotta wait i guess.

I know this is offtopic but any other suggestions for SDL ports ?


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Wed Jul 29, 2015 5:34 pm 
Offline
Insane DCEmu
Insane DCEmu
User avatar

Joined: Wed Apr 09, 2008 7:04 am
Posts: 191
Location: Very Nordic
Quote:
I know this is offtopic but any other suggestions for SDL ports ?

Do you have a list we can choose from?

_________________
Order Fast Striker, GunLord and NEO XYX for Dreamcast at http://www.ngdevdirect.com
Order 2d/3d Shoot 'em up Sturmwind http://www.redspotgames.com/shop
Order Dux 1.0, Redux incl. Dux 1.5 and The Ghost Blade at http://hucast.com/index.php


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Thu Jul 30, 2015 6:50 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Basil wrote:
Quote:
I know this is offtopic but any other suggestions for SDL ports ?

Do you have a list we can choose from?

Yes, I have a small list of what i would like to port :
https://gameblabla.olympe.in/files/dreamcast_list.txt


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Fri Jul 31, 2015 3:25 pm 
Offline
Moderator
Moderator
User avatar

Joined: Wed Aug 27, 2003 10:16 pm
Posts: 5852
Location: DCEvolution.net
Welcome to the forums! :)

Genesis Plus GX would be more than awesome ! Huge MD fan here and that was the first thing that caught my eye.

_________________
Insane homebrew collector.


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sat Aug 01, 2015 4:40 am 
Offline
DC Developer
DC Developer
User avatar

Joined: Sun Sep 05, 2010 3:44 am
Posts: 93
Hi gameblabla!! :D

Thanks for posting here at dcemulation.org, and also sorry to answer this topic so late (I was quite busy these days! U_U).

Well, I've just test your port on REAL HARDWARE and hey, looks nice!! I like it, good job! :) Now, let me state some points to work on it ;)

* First of all, you use the serial port to read/write into the SD. That's nice, but unfortunately, this also makes emulators stop from getting your game working :( . Yep, they're still primitive in that aspect, go blame on them ^^.

* To load/save into VMU with KOS is quite easy, and you can even use ZLIB compression to do it!!
Let me put here some code and explain it:

Code:
#include <kos.h>
#include <zlib/zlib.h> //vmu compression!
#include "dreamcast_icon.h"

int DC_LoadVMU(void) {

    unsigned long unzipsize;
    uint8* unzipdata;
    vmu_pkg_t pkg;

    // Name of the file to open
    file_t fd;
    if ((fd = fs_open("/vmu/a1/fallingtime", O_RDONLY)) == -1)
    {
        printf("error opening VMU A1, not found.\n");
        return -1;
    }
   
    // Remove VMU header
    vmu_pkg_parse(fs_mmap(fd), &pkg);

    // Allocate memory for the uncompressed data
    unzipdata = (uint8 *)malloc(524288); //512KB
    unzipsize = 524288;
    uncompress(unzipdata, &unzipsize, (uint8 *)pkg.data, pkg.data_len);

    // Save buffer into a RAM file
    fs_close(fd);

    file_t fd2;
    if ((fd2 = fs_open(/ram/yourfile.dat, O_WRONLY)) == -1)
    {
        printf("Can't create RAM file from VMU.\n");
        return -1;
    }
    fs_write(fd2, unzipdata, unzipsize);
    fs_close(fd2);

    // Free unused memory
    free(unzipdata);

    return 0;
}

int DC_SaveVMU(void) {
    vmu_pkg_t pkg;
    uint8 *pkg_out;
    int pkg_size;
    file_t ft;

    // Temporal for reading the file
    file_t file;
    int data_size;
    unsigned long zipsize = 0;
    uint8 *datasave;
    uint8 *zipdata;
   
    // Open file and copy to buffer
    file = fs_open(/ram/yourfile.dat, O_RDONLY);
    data_size = fs_total(file);
    datasave = (uint8 *)malloc(data_size+1);
    fs_read(file, datasave, data_size);
    fs_close(file);
   
    // Allocate some memory for compression
    zipsize = data_size * 2;
    zipdata = (uint8*)malloc(zipsize);

    // The compressed save
    compress(zipdata, &zipsize, datasave, data_size);

    // Make the package to the VMU.
    strcpy(pkg.desc_short, "fallingtime");
    strcpy(pkg.desc_long, "Falling Time");
    strcpy(pkg.app_id, "fallingtime");
    pkg.icon_cnt = 1;
    memcpy((void *)&pkg.icon_pal[0],(void *)&vmu_savestate_pal,32);
    pkg.icon_data = (const uint8*)&vmu_savestate_data;
    pkg.icon_anim_speed = 0;
    pkg.eyecatch_type = VMUPKG_EC_NONE;
    pkg.data_len = zipsize;
    pkg.data = zipdata;
    vmu_pkg_build(&pkg, &pkg_out, &pkg_size);

    // Write at A1 port
    fs_unlink("/vmu/a1/fallingtime");
    ft = fs_open("/vmu/a1/fallingtime", O_WRONLY);
    if (!ft) {
        return -1;
    }
    fs_write(ft, pkg_out, pkg_size);
    fs_close(ft);

    // Free unused memory
    free(pkg_out);
    free(datasave);
    free(zipdata);
   
    return 0;
}


- DC_LoadVMU(void) will try to read from the VMU (port A1), the file "fallingtime". If success, then it will uncompress into Dreamcast RAM (/ram/yourfile.dat) using zlib.

- DC_SaveVMU(void) does the other way: read from "/ram/yourfile.dat", compress with zlib, and generates the VMU file to store (/vmu/a1/fallingtime).

- Don't worry, this works perfectly with all the emus!! Remember, a full VMU has 200 blocks, or 128kb of storage. Oh, and you have to link with -lz

- vmu_savestate_pal and vmu_savestate_data are variables where they contain the info for the VMU icon in the Dreamcast menu. If you want to follow the quick way, I have a conversor from PNG to C. Limitations are that image must be of 32x32, PNG and 16 colors.
http://vmu.sega-dc.de/vmu/vmuimage.php
The image will add 1 extra block space into your save.

* Next, I saw that there is a WAV file that is not recognized as a RIFF file by KOS, so it sounds very badly on Dreamcast!!! Please, could you detect it and replace it?

* My max score is about 80.... is that a bit lame? :-P

Anyway, excellent work! When you change the SD option for VMU, and fix the WAV issue, then I'll publish on Dreamcast.es :)

I've done lots of homebrew ports into Dreamcast for a long time (ie. SQRXZ ones for Dreamcast), so I'll be glad to help you in any aspect you want! Contact me via MP for more assistance :)

PD: I have a Sopwith port ready but.... I want to add network features into it! That one can be erased from your TODO list xD


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sat Aug 01, 2015 4:13 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Thank you guys !
I'll try to get a working version of Genesis Plus GX after i'm done with Falling Time,
it'll be based on the SDL version though...
It's predecessor, Genesis Plus, was also ported to the Sega Dreamcast and fully optimised for it
so i'm not sure if i should port Genesis Plus GX or not...

As for Falling Time :
I have released a premilinear version with support for VMU down below.
(couldn't get it to work because apparently lxdream does not properly detect VMUs...)


Last edited by gameblabla on Sun Aug 02, 2015 2:19 pm, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sat Aug 01, 2015 7:32 pm 
Offline
Insane DCEmu
Insane DCEmu
User avatar

Joined: Wed Apr 09, 2008 7:04 am
Posts: 191
Location: Very Nordic
gameblabla wrote:
Basil wrote:
Quote:
I know this is offtopic but any other suggestions for SDL ports ?

Do you have a list we can choose from?

Yes, I have a small list of what i would like to port :
https://gameblabla.olympe.in/files/dreamcast_list.txt


I vote for OpenTitus, it looks nice. Maybe Indiket will help you. :wink:

_________________
Order Fast Striker, GunLord and NEO XYX for Dreamcast at http://www.ngdevdirect.com
Order 2d/3d Shoot 'em up Sturmwind http://www.redspotgames.com/shop
Order Dux 1.0, Redux incl. Dux 1.5 and The Ghost Blade at http://hucast.com/index.php


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sun Aug 02, 2015 12:00 am 
Offline
DC Developer
DC Developer
User avatar

Joined: Sun Sep 05, 2010 3:44 am
Posts: 93
You're welcome gameblaba!!

Allright, to make lxdream work with VMU, first define a path where the emu will store the VMU file (in Preferences, VMU Path). Then, you have to enter into Dreamcast BIOS screen and format the VMU. After that, it will work.

Good news, your game now boots into emus perfectly, and it even writes the highscore into VMU (nice icon!). But still some important bugs / questions:

* The really annoying and nasty sound of a bad WAV file (I think is the one that you are rolling the ball).
* When you load the game with only one PAD connected, the second player is always rolling the ball into right (and creating a two-player game). I have to plug a second controller to make the second player freeze xD
* Maybe hiscores are wrong, the values are really too high?? (ie. 1126753279 (2005-09-02)). Seems a casting or not init value?
* Player 1 and Player 2 are equal? Is it possible to make player 2 of a different colour?

Keep up the good work! :)


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sun Aug 02, 2015 2:18 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Thanks for your feedback, Indiket !
I have fixed most of the bugs reported by indiket, you download the new version right below.
https://gameblabla.olympe.in/files/fallingtime_dreamcast.zip

Quote:
When you load the game with only one PAD connected, the second player is always rolling the ball into right (and creating a two-player game). I have to plug a second controller to make the second player freeze xD

I think i may have fixed this as well but i'm not sure...
Needs more testing.

Quote:
* The really annoying and nasty sound of a bad WAV file (I think is the one that you are rolling the ball).

lxdream's sound support is really bad so i don't know if i fixed this...
On real hardware, can you hear the ogg music ?

Unless more bugs are reported, this should be the final version.
Enjoy


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sun Aug 02, 2015 2:38 pm 
Offline
DC Developer
DC Developer
User avatar

Joined: Sun Sep 05, 2010 3:44 am
Posts: 93
You're welcome!! Thanks to you for your port, gameblabla!!

I did a quick test on emus, reporting:
* WAV file sound is fixed, thanks!
* Hiscores are fixed, cool! (remember to delete old savegames guys!)
* Thanks for putting a different colour for P2 :D

* Seems that second player still moves at right, I'll check it again with real hard, but well, at least can be fixed with a second controller hehehe. How do you read the controller, using SDL functions or directly by Maple?

OGG plays fine in real hardware, as far I remember. I'll try again to check everything is allright, but this version gets an OK for me :)

Greetings!


Top
 Profile  
Reply with quote  
 Post subject: Re: [WIP] Falling Time
PostPosted: Sun Aug 02, 2015 3:13 pm 
Offline
DCEmu Fast Newbie
DCEmu Fast Newbie

Joined: Tue Jul 14, 2015 6:32 pm
Posts: 21
Thanks again for your feedback.
Indiket wrote:
* Seems that second player still moves at right, I'll check it again with real hard, but well, at least can be fixed with a second controller hehehe. How do you read the controller, using SDL functions or directly by Maple?

I have fixed this issue and reuploaded the game again. Same link as before, please redownload it again.

I think we can consider it as the final release so i'll drop the WIP mark.


Top
 Profile  
Reply with quote  
PostPosted: Mon Aug 03, 2015 12:04 am 
Offline
DC Developer
DC Developer
User avatar

Joined: Sun Sep 05, 2010 3:44 am
Posts: 93
Perfect! Controls are fixed now!!
Congratulations with your first Dreamcast port :D :D

Btw, I saw that Falling Time is GPLv2, so will you publish your changes into the repo / your website? Thanks!

Edit: Newsed on Dreamcast.es ^^


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 24 posts ]  Go to page 1, 2  Next

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: Bing [Bot] and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group