Tales of Phantasia...
Moderator: General Mods
Tales of Phantasia...
Hello, I recently took a look in the bsnes C++ source, and wanted to try and get some stuff out of it, to implement it in another emulator. But I'm not really sure how it's all done, could any body help me please?
My general dev blog:
http://mog123x.blogspot.com
http://mog123x.blogspot.com
-
- ZSNES Developer
- Posts: 6747
- Joined: Tue Dec 28, 2004 6:47 am
I think Deathlike2 means that the GNU GPL license won't allow mog123 to use your source code as reference and then use the source code in his software because it isn't available under a GPL or compatible license, assuming it isn't. Am I wrong?
[edit] I fixed some wording to make my post more clear and readable.
[edit] I fixed some wording to make my post more clear and readable.
Since bsnes isn't licensed under the GPL, I think it's a non-issue.
v019 license.txt:
v019 license.txt:
bsnes License:
--------------
You are free to redistribute this software, and its source code; provided
there is no charge for the software, nor any charge for the medium used to
distribute the software. You are also free to use and modify the source code
as you desire for personal use only. No publically-released derivative works
of this program nor its source code are permitted without my permission,
though I will likely grant you permission if you ask me. You must also abide
by the terms of any additional source code licenses contained within this
program.
Simple DirectMedia Layer License:
---------------------------------
The Simple DirectMedia Layer (SDL for short) is a cross-platform library
designed to make it easy to write multi-media software, such as games and
emulators.
The Simple DirectMedia Layer library source code is available from:
http://www.libsdl.org/
This library is distributed under the terms of the GNU LGPL:
http://www.gnu.org/copyleft/lesser.html
JMA License:
------------
JMA is licensed under the GNU GPL. I have received special exemption from
Nach to use this library in bsnes.
Licensing Exemptions:
---------------------
libco, the cooperative multithreading library used by bsnes, is public domain.
You may obtain the latest version at: http://byuu.org/
Richard Bannister has asked for and received my permission to distribute
a binary-only port of bsnes on the Mac OS X platform.
[url=http://zsnes-docs.sf.net]Official ZSNES Docs[/url] | [url=http://zsnes-docs.sf.net/nsrt]NSRT Guide[/url] | [url=http://endoftransmission.net/phpBB3/viewtopic.php?t=394]Using a Wiimote w/ emulators[/url]
The emulator I'm talking about is SNESAdvance( snesadvance.org ), it's free.
I need to know what parts of C++ are responsible for making tales of phantasia playable, and then they need to be translated into arm assembly.
So byuu, will you help me out on this(the C++ oufourse) ? And will you give me the permission that is in the v19license.txt that Jipsy posted?
I need to know what parts of C++ are responsible for making tales of phantasia playable, and then they need to be translated into arm assembly.
So byuu, will you help me out on this(the C++ oufourse) ? And will you give me the permission that is in the v19license.txt that Jipsy posted?
My general dev blog:
http://mog123x.blogspot.com
http://mog123x.blogspot.com
The "parts of C++ that are responsible for making tales of phantasia playable"...That makes little sense. I guess it's the "part" where bsnes have accurate emulation...mog123 wrote:The emulator I'm talking about is SNESAdvance( snesadvance.org ), it's free.
I need to know what parts of C++ are responsible for making tales of phantasia playable
Now if you meant "what changes/hacks to SNESAdvance should I make in order to make TOP works...I doubt byuu could help you, as he would need to look into SNESAdvance to tell you that (as well as knowing TOP pretty well I guess)
edit Also imo, even with full hacks on, emulating the Snes on the gba is a little too ambitious. The DS would be a much more realistic platform for it.
Can you please, stop making suggestions?Snark wrote:edit Also imo, even with full hacks on, emulating the Snes on the gba is a little too ambitious. The DS would be a much more realistic platform for it.
I'm talking about the GBA, and the GBA only, if it can be done on the GBA, it can be done on the DS, and I'm sure someone will take the effort. Because they use almost identical arm cpu's so it would be very little work.
By making it playable I meant:
ToP usues something similar to bankswitching. And there's realy slim to none info on it (at least i can't find it)
My general dev blog:
http://mog123x.blogspot.com
http://mog123x.blogspot.com
I didn't make a suggestion but stated what I thought.mog123 wrote:Can you please, stop making suggestions?Snark wrote:edit Also imo, even with full hacks on, emulating the Snes on the gba is a little too ambitious. The DS would be a much more realistic platform for it.
Your question was, I believe , allready answered by several people including the author of bsnes.
Please someone lock this retarded thread (yes, that is a suggestion)
-
- Veteran
- Posts: 970
- Joined: Fri Jan 21, 2005 11:15 am
- Location: Montana, United States
I'm sorry, I have to be an ass and add my .02 in here. What you want to do (pull out pieces of code that are responsible for making TOP work in bsnes) sounds next to impossible. Its the emulator as a whole that has the compatibility. As stated by Snark already.
You cant just pull out a few functions and routines from something complex like zsnes, or bsnes, and plug them into another program and expect them to work instantly or even at all.
And the last half of my two cents. Tales of Phantasia is already our for the GBA. Superior in a few ways, inferior in a few. This really seems like a wasted effort. But thats just opinion speaking.
You cant just pull out a few functions and routines from something complex like zsnes, or bsnes, and plug them into another program and expect them to work instantly or even at all.
And the last half of my two cents. Tales of Phantasia is already our for the GBA. Superior in a few ways, inferior in a few. This really seems like a wasted effort. But thats just opinion speaking.
To be fair, he did said he was refering to ToP bankswtiching function or whatever it is that allows it to be so big for a Snes game (though he made no mention of this in his original post so there was no way of knowing what he was talking about).I'm sorry, I have to be an ass and add my .02 in here. What you want to do (pull out pieces of code that are responsible for making TOP work in bsnes) sounds next to impossible. Its the emulator as a whole that has the compatibility. As stated by Snark already.
Depending how that work, that may be unrelated to the emulation of the console itself. Though someone like byuu or Nach could better explain it.
Yes, Tales has no special memory mapping hardware.
I'm not going to give blanket permission to copy whatever you want from bsnes. If you have a specific piece of code you want, let me know. It doesn't sound like you know what you want, though.
And I'm really puzzled by why you think anything in bsnes would be appropriate for use on a ~17MHz ARM processor. You'll have to rewrite any of it in ARM assembler anyway, and if you're rewriting the code, then you don't need my permission in the first place. My license is only to prevent direct copying/project forking, not reference/learning.
Good luck getting the game running, though.
I'm not going to give blanket permission to copy whatever you want from bsnes. If you have a specific piece of code you want, let me know. It doesn't sound like you know what you want, though.
And I'm really puzzled by why you think anything in bsnes would be appropriate for use on a ~17MHz ARM processor. You'll have to rewrite any of it in ARM assembler anyway, and if you're rewriting the code, then you don't need my permission in the first place. My license is only to prevent direct copying/project forking, not reference/learning.
Good luck getting the game running, though.
ok, as I wrote earlier, I didn't really know much about what is responsible for ToP (close to nothing).
Well, byuu about that 48Mbit mapper stuff, SNESAdvance can run UMK3 which is also 48 Mbit, and it doesn't run ToP.
And about implementing stuff/ rewriting it to ARM - my friend managed to rewrite a little of your C4 code into arm, and his WIP build shows sprites in MMX2/3 but shows really nothing more besides that.
Byuu could you lend me a hand on this? Or anybody else here?
It would be swell if anybody would like to spend some time trying to give some pointers over a PM or sth like that.
PS: The GBA ver. of ToP is a huge disaster, if I may say so myself.
Second PS: SNES Emulators for the DS are:
-SnezziDS
-SNESDS
-SNEmulDS
Well, byuu about that 48Mbit mapper stuff, SNESAdvance can run UMK3 which is also 48 Mbit, and it doesn't run ToP.
And about implementing stuff/ rewriting it to ARM - my friend managed to rewrite a little of your C4 code into arm, and his WIP build shows sprites in MMX2/3 but shows really nothing more besides that.
Byuu could you lend me a hand on this? Or anybody else here?
It would be swell if anybody would like to spend some time trying to give some pointers over a PM or sth like that.
PS: The GBA ver. of ToP is a huge disaster, if I may say so myself.
Second PS: SNES Emulators for the DS are:
-SnezziDS
-SNESDS
-SNEmulDS
My general dev blog:
http://mog123x.blogspot.com
http://mog123x.blogspot.com
-
- ZSNES Developer
- Posts: 6747
- Joined: Tue Dec 28, 2004 6:47 am
NSRT v3.3 - Nach's SNES ROM ToolsWell, byuu about that 48Mbit mapper stuff, SNESAdvance can run UMK3 which is also 48 Mbit, and it doesn't run ToP.
---------------------Internal ROM Info----------------------
File: Ultimate Mortal Kombat 3 (U).smc
Name: ULTIMATE KOMBAT 3 Company: Tradewest
Header: FIG Bank: HiROM
Interleaved: No SRAM: 0 Kb
Type: Normal ROM: 32 Mb
Country: USA Video: NTSC
ROM Speed: 120ns (FastROM) Revision: 1.0
Checksum: Good 0x64E9 CRC32: F5BFE41E
MD5: 0644DA71F79D405A22934DAA1474CEFC
--------------------------Database--------------------------
Name: Ultimate Mortal Kombat 3
Country: USA Revision: 1.0
Port 1: Gamepad Port 2: Gamepad
Genre 1: Fighting Genre 2: Hand To Hand
If I recall anything useful from SNEmul, it was incomplete and never got to support transparencies.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
-
- ZSNES Developer
- Posts: 6747
- Joined: Tue Dec 28, 2004 6:47 am
There are docs on the memory mappings somewhere.. probably could be found at http://romhacking.net
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
I guess the gba release of ToP wasn't slow enough for this guy, he wants to emulate the snes version haha.
ToP is the only 48mbit snes game, next biggest is dai kujo montasomething coming at 40mbit. my computer is doing some massive calculations right now and being slow as fuck, otherwise I'd look it up for ya (snesmem.txt?) but it sounds like this snes emu isn't emulating the parts of the mem map for 'extended rom' or 'reserved rom' like 1F:8000 or some shit. if it's got some debug mode you could see where it reads or executes from higher than 32mbit and pry gets nothing. then just add the code to let the emu see this part of the memory (the authur pry left it out thinking "nobody's gonna play a game other than CT and super metroid, fuck anyhting bigger than 32mbit!") this is only a guess.
ToP is the only 48mbit snes game, next biggest is dai kujo montasomething coming at 40mbit. my computer is doing some massive calculations right now and being slow as fuck, otherwise I'd look it up for ya (snesmem.txt?) but it sounds like this snes emu isn't emulating the parts of the mem map for 'extended rom' or 'reserved rom' like 1F:8000 or some shit. if it's got some debug mode you could see where it reads or executes from higher than 32mbit and pry gets nothing. then just add the code to let the emu see this part of the memory (the authur pry left it out thinking "nobody's gonna play a game other than CT and super metroid, fuck anyhting bigger than 32mbit!") this is only a guess.
[url=http://www.alexchiu.com/affiliates/clickthru.cgi?id=phonymike]ultimate immortality[/url]
[url=http://www.sloganizer.net/en/][img]http://www.sloganizer.net/en/image,zsnes,white,purple.png[/img][/url]
[url=http://www.sloganizer.net/en/][img]http://www.sloganizer.net/en/image,zsnes,white,purple.png[/img][/url]
I'm sorry, but I don't have the time to be a teacher for the more introductory issues of SNES emulation.
You have my permission to use the memory mapping code in bsnes/src/memory/bmemory in SNESAdvance as you see fit, though you would have to rewrite a lot of it to use my mapping setup. No credit/licensing is needed for anything you use, though you may wish to credit Nach and grinvader for the idea and initial mirror() function I ported. You'll probably want to ignore the PCB mappers, as I doubt you're anywhere near needing to worry about that right now.
To give you a hint though, you want to support ExHiROM to get ToP running. It's in the code, you'll need to be able to read c++ to figure out how it's mapping ROM and to where.
You have my permission to use the memory mapping code in bsnes/src/memory/bmemory in SNESAdvance as you see fit, though you would have to rewrite a lot of it to use my mapping setup. No credit/licensing is needed for anything you use, though you may wish to credit Nach and grinvader for the idea and initial mirror() function I ported. You'll probably want to ignore the PCB mappers, as I doubt you're anywhere near needing to worry about that right now.
To give you a hint though, you want to support ExHiROM to get ToP running. It's in the code, you'll need to be able to read c++ to figure out how it's mapping ROM and to where.
-
- Veteran
- Posts: 970
- Joined: Fri Jan 21, 2005 11:15 am
- Location: Montana, United States