FEATURED NEWS

Welcome to PHO 5.0

Posted on 3 June 2011, by Horus
Welcome to PHO 5.0! In the twilight years of PHO 4.0, activity was fleeting and the site...
Read more...
Comments (4)
NEW UPDATES
Without means of emulatio...
Hey everybody here's edit...
Hi all, and welcome to my...

Emulation Monthly Ep. 1

ROM Hacking

Without means of emulation, we would not be able to play the hacks that we all know and love. There are several forms of emulation that we can utilize on many platforms, from the PC to the TV, and even the handheld. This news series is used to bring you information on new ways to emulate your games, provide updates on those ways and provide reviews to help you make an informed  decision. There are several ways of accomplishing the ways of playing these games, but all of them, unfortunately, will void warranties since they require unlicensed changes to system or use  unlisenced hardware. So, what are we waiting for? Let's get to work!

Some familiar names come to mind when PC Emulators are mentioned. Visualboy Advance for Gameboy games, Desmume for Nintendo DS games, Virtuanes for Nintedo Entertainment System  games, or Bsnes for Super Nintendo games. They all offer excellent functions, like slowdown options,  rapidfire options, cheat functionality, and multiplayer over the internet. But there are a whole list of  them to use! I'll name off a few useful emulators and name why they are good for their purpose.

-Gameboy Advance- 

Visualboy Advance is a popular emulator that has many ports to systems, like the Wii  (to be featured in a later article) and subsequent handhelds. There are also mods of it to  allow for multiplayer, and has support for almost all GBA games that exist, even homebrew  games! It also has many other features that are useful for developers, like RAM Viewers,  Tile Viewers and even Pallet Viewers. It is a very functional emulator that is just packed with  many featues that you shouldn't miss out on!

You can get the latest copy of VBA here.

Pros/Cons
Pros:

-Very compatible with many GBA, GB and GBC retail games and homebrew
-Has an alternate build that allows you to play multiplayer
-Has good debugging features in an alternate build
-Many powerful options to choose from
-Records Video and Audio, as well as still images
-Lightweight and very efficient on computer
-Has port on Wii

Cons:
-Doesn't have multiplayer built into standard version
-Difficult to use multiplayer on one computer

Overall rating: 9/10

 


-Nintendo DS- 

There are many emulators that have different uses for games that are made. There is NO$GBA  for DS emulation, but it sacrifices sound for visual quality. There is also Desmume that can do what  NO$GBA does and more. It does have it's flaws though- lag on 3D-dependant games, and few  bugfixes for games that need it, but it has many functions that other emulators just don't have.  For one, Desmume has a RAM Viewer, and it even has a sound state viewer. It also recently gained  the ability to go online abord Nintendo Wifi Connection with some slight modifications. It also has  good support for USB Joypads and it has a dev build for game hackers and developers.

You can get the latest version here.

Pros/Cons
Pros:

-Has limited Wi-Fi support
-Can execute roms through the BIOS
-Has debugging features
-Records AVI, WAV and takes screenshots
-Cheat code support
-Can run some roms that flashcards cannot
-Has a very inefficient port on the Wii and PSP

Cons:
-Very taxing on CPU
-Can lag randomly
-Has lag in parts that make heavy use of polygons and 3D rendering
-Only has best performance if you have a powerful computer
-Wi-Fi is picky and you need to configure it each and every time you run the emulator

Overall rating: 7.5/10

 


-Nintendo Entertainment System- 

I've used a fair amount of emulators that run NES games. I've mostly tried Nestopia, but I like  VirtuaNES a lot more. VirtuaNES has amazing support for .nsf (NES Sound Format) files. It's well  known for that, and it has support for patches and has many other fun toys, like on-the-fly pallet  editing.

You can get the latest version here.

Pros/Cons
Pros:

-Wonderful .nsf support
-Many fun features, like Movies (For all you TASers out there)
-Support for every controller under the sun
-Plenty of video filters

Cons:
-No support for plugins

Overall rating: 8.5/10

 



-Homebrew News-

NDS Music Player
The NDS Music Player was originally a single .sseq player written by fincs that played a single song: the bicycle theme from Pokemon Black and White. KazoWAR took the source code  and modified it so it can load .sdat data from NDS images, essentially making it a portable  version of VGMTrans (with less features, unfortunately). It only has support for the .sseq sound  engine, but it has access to the internal sound chip to play 8-bit sounds that VGMTrans cannot  (GB Sounds anyone?). It also has a port for Moonshell so you can play it under Moonshell.

Source
Download

DScraft 


Minecraft is one of the most popular indie games to date. It has spurred spinoff versions on the  PSP, and most recently, the Nintendo DS. GBAtemp user smealum created a NDS version of the  creative mode in Minecraft that works quite nicely on the NDS engine. It's still rough around the  edges, but it's quite fleshed out with features. Unfortunately, it cannot create new worlds on it's  own, you must use a PC app to do that. But, it has skins. You can also take screenshots of your  creations and it will save the images to the SD card in your flashcard. If you like Minecraft and  you want it to-go, give DScraft a spin. You won't be disappointed.

Source
Downloads

Textris DS 

Textris DS is a Nintendo DS Tetris clone by Snailface, but is far more basic than it's licensed counterpart. It contains 2 game modes (Marathon and 40-Line Challenge) and 3 excellently-written songs by Dubmood. It also has many flashy colors to suit your taste if you get bored after a while.  Take a look at the project post and download the latest  version!
Source
Download Version 1.1

Next episode:
-Handheld Emulators
-Console Emulators
-Scene news
-A review
-And more!      

 

 

 

 


Comments (0)

Metal Monthly #2

ROM Hacking

Hey everybody here's edition に.
This week, in the Metal Monthly, I'm going to show you how to insert a sprite. It sounds so simple, and there are way too many tutorials out there, but few of them really explain what's actually going on. For this method, I recommend a tool Nameless Sprite Editor 2.X as it not only provides a built-in editor, it also contains support for bitmaps and pngs, bookmarks, and more. The other cool thing is that it automatically searches for freespace for you in the event that your new sprite requires more room than the original.

For the most part, sprites and images are loaded from a pointer table and are compressed. ( This is true for Pokemon sprites, trainer sprites, and other various things. ). This means that somewhere in the ROM, a pointer points to a spot in the ROM ( like pointers do ) which contains the image data. Image data can be either compressed, or uncompressed ( AKA - RAW ). Compressed is just that: RAW data that's been compressed. The format for this data ( how it's interpreted by the screen ) is what I like to call a 'codec' of sorts.

A typical codec is 4bpp. That is to say, 4 bits per pixel. Now, if you've read my bits and bytes document, you know that a byte is 8 bits. Well, the great thing about 4bpp, is that you can put data for two whole pixels in one byte! But, how, you may ask. Simple-- the GBA has support for different video modes. Particularly useful, is the indexed modes. I won't cover OAM's or background management here ( maybe in a future release? ), but here is what you need to know in order to use 4bpp:


4 bits allows a maximum value of 15. ( use my formula: maxVal = baseNum-raised-to-the-power-of-the-number-of-digits - 1 )

y = 2 ^ 4 - 1
y = 2 * 2 * 2 * 2 - 1
y = 16 - 1
y = 15

Now, the relation between a maximum of 15 in 4 bits, and GBA video modes? Certain Video Modes use an indexed palette. That is -- a section in the GBA's memory is dedicated to storing colors. In fact, there are 512 colors capable of being stored -- 256 for the background, and 256 for sprites. Within those, there are 16 palettes, of 16 colors. Every 8pixels x 8pixels tile can access colors from only one palette. If you're using a sprite ( a graphic without a tilemap, which has a maximum of 64x64 pixels ), the whole thing has to use the same palette. Because the palettes are 0-indexed ( the first color has an "ID" of '0' )-- a value of 0xF ( 15, for those illiterate in hex ) translates into the sixteenth color. Something clever to do -- if you're a programmer dealing with 4bpp images: There are two pixels in one byte. Each one has 4 bits, and the second pixel is stored in the BOS side, and the first pixel's 4 bits are in the lower half. So, if you want pixel 1 ( pixel on the left of the two relative pixels ), take your byte, AND it by 0xF0, then BITSHIFT it to the right, 8 times. pixel[0] = (PIXBYTE&0xF0) >> 8; and the other pixel:
pixel[1] = PIXBYTE&0x0F;
simple, no? ( even if you're not a programmer, you should still read that last little bit )
So a byte: 0xF0 would look like this:
| color 1 | color 16 |
And if you're palette looked like this:





Then the resulting two pixels would be:

And that's it! The RAW data itself has no width or height info. Infact, it doesn't even have any info on which codec to use. This is handled by the GBA hardware, and the ROM.

Another common codec is 8BPP. This one is simply 8 bits per pixel. This leaves us a maximum value of 0xFF ( 255 ), and 256 ( 0x100 ) colors possible. 8BPP also uses an indexed video mode, but rather than using palette info for the tilemap, 8BPP allows access to all 16 palettes in either the BG palette, or Sprite palette area. Which means an 8x8 block can have more than 16 different colors in it. ( if there was enough room -- it could have up to 256 )

One less common codec is 16BPP -- that is one pixel in two bytes. The pixel is just a 15bit color( 5 bits - R, 5 bits - G, 5 bits - B, 1 dummy bit. )


When an image is compressed, a crucial bit of information is stored-- the size of the uncompressed data. If you know the ratio of the images width to height, you can use this info, and quadratic equations to find the width/height, of the image. However, to ROM Hacker's, this tells us that if we want to replace the image, we can decide if we need to repoint the image, or if our new image is small enough to fit in the same size. if an image is compressed, and you worry about wasting space in your ROM, then you can over write the old data with FF bytes, the appropriate amount of bytes. So compression offers lots of advantages besides smaller data sizes in the ROM.

For the most part, image data is stored in the 'char_base' ( 0x0600000000, if I remember right ). You can view this data in VBA, and if your game does NOT use a mirror memory, then you can edit the pixel data directly with memory viewer. Go ahead, try it! ( also -- image data is always de-compressed RUN time, because the GBA hardware doesn't know how to display compressed data. ( There are however, SWI's that decompress data for you. )

Now. Back to what goes on when you use NSE 2.X. You load a sprite. Edit. Then save. If you have a compressed sprite, it checks the size. If the size is bigger than the original, it repoints, and writes. Otherwise the RAW data is just overwritten. Pretty simple, eh?


Comments (1)

Soul's September News Article

ROM Hacking

Hi all, and welcome to my first newsletter for the month of September. For this month my article will be on the topic of ROM hacking. But before that, I would like to mention that myself, Full Metal, and .ɧαƇĸϒ0§ђ have been chosen as PHO's current News Writers of the community. So if you want to, congratulate them when you have the time and chance to. I know we will all try our best to inform PHO's visitors and members!

Anyways, on to the current topic. While I was looking through PHO's Progressing Hacks forum, I found a fair amount of impressive hacks, but certain ones have caught my eye. The first one that I found interesting was the hack Pokemon Silver Legend by TheZeno96. The plot is apparently about how a certain Pokemon (Lugia) ended up in the wrong hands. Although not too informative, it still looks very promising. Graphic-wise, the hack looks rather beautiful with the selection of tiles used and inserted. Here's a glimpse:

Pretty, right? Sadly there isn't a beta released--yet! So stay tuned. There are also some videos of it which I believe are on ROM Hack Tube (link to one of his videos here). ROM Hack Tube is a safe place for you to upload your videos regarding ROM hacking, so go there instead of Youtube, as your videos there may be deleted due to copyright.

I encourage visitors that may be reading this to submit your hacks on the forums too! Because the season for summer is ending soon, which means that the [PotS] Pick of the Season for summer will be chosen soon, and three hacks with potential are to be chosen by Spherical Ice and Rin Okumura. Awards for your hacks will be involved, so check out more on that right here. It can also help promote discussion to those hacking forums, which will help benefit us too. And speaking of the ROM hacking forums, there are tons of useful stickied threads that can help all you hackers out there! For example, The Map Rating Thread is where people may submit their maps for rating/reviewing to help improve hackers' mapping skills. Another rather useful thread is The Simple Questions Thread where hackers may ask and answer questions regarding anything to do with ROM hacking, so check that place out if you need help with your hack.

Now on to graphics. There are some tutorials out there on tile inserting, so once you got the hang of it you should be confident with inserting tiles--and sprites too! This certain member of PHO's forums named Tsuka has some very nice pixel art (tiles, sprites) that can be useful for your hacks. Right here you can view the resources they have provided for you. Regarding sprites and the like, Chaos Rush has a sprite project, where he has provided some current DS-styled Pokemon sprites already perfectly resized 64x64 and ready to be inserted in your ROM. So you should check that out too when you have the chance, it'll be worth you trip, trust me!

Well, that's it for now! I hope you all enjoyed my first monthly article for September, and stay tuned for October's article written by me. You can see me around PHO's forums, so you can hit me up a VM/PM if you have any ideas or concerns regarding my News Writing. —Soul


Comments (1)

Metal Monthly #1

ROM Hacking


If you haven't already, I would strongly encourage you to check out Pokemon Rose Version ( click on the image for a link ). This hack not only has a well developed storyline, but it also has lots of custom music composed by `SuperiorLarxene` on Youtube. This hack is about a character by the name of Aster ( or whatever name you conjour ) who starts his journey by heroically rushing to the aid of Professor Larch. The plot revolves largely around the organization named "Thrasher," who is after a secret and ancient knowledge provided by The Emerald Tablet, an artifact spoken of in the Centiq region's history

 




A wonderful and inspiring hack,Pokemon: Aqua Saphire, is on the rise, from our very own Team Fail! What makes this hack so inspiring is simply it's existence, and professional quality. What Team Fail has done is incredible. Not only has he discovered a functional method of inserting music, but he has also taken the time to master it. He has also taken it upon himself to script, and has taken on a task that few have been brave enough to take on before. We wish you luck with your project, Team Fail!

 

 

Developing homebrew for your favorite console is becoming easier than ever these days. Not only are there lots of assembly tutorials available, but the best part is that there are free compiler chains available to use. One of the more popular ones is devkitpro. They have targets for building on the GBA, NDS, Wii, and more! They also have complimentary libraries for basic functions. Team Fail has reported that he is involved in very basic Wii homebrew, and hopes to learn how to do it better.

 



If you're looking for some new tiles to add a fresh look to your hack, I encourage you to look at PHO's Creative Discussion forum. There are some talented artists, like Lunatica who have donated lots of very nicely done tiles and rips. Kudos to you, Tsuka. If you're interested, here is a link to Tsuka's thread, and here is the site's main resource page. If you have a resource you would like to donate, be it Tiles, Sprites, ROM Bases, Music, Tutorials, or anything really, feel free to visit this thread.

With Youtube cracking down more and more on copyright infringements and more, our videos are being flagged and dropping like flies. If you want a safe haven to store videos of your hack being used, then RHT is a great place to go. They have a very user friendly interface, and it works almost exactly like Youtube. Not only that, but the PHO forum has direct support for embedding RHT videos with the [RHT][/RHT] tags.

 




** If you have something you would like me to write about, then please feel free to tell me about it via either VM or PM. - Full Metal.


Comments (0)

Pokemon Dark Cry

ROM Hacking

Pokémon Dark Cry: The Legend of Giratina!

Hello visitors/members of PHO,
I'm proud to tell you all that mitchel1 has finally released an alpha of this game the game has been progressing for quite some time already and had great updates.
So I hereby show you screens of his hack:

You can download the first alpha: here




Comments (0)