[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/vr/ - Retro Games


View post   

File: 494 KB, 672x590, hbg_super_junkoid.png [View same] [iqdb] [saucenao] [google]
10291901 No.10291901 [Reply] [Original]

Gameplay and development discussion:
What homebrew / hacks are you playing /vr/?

Are you working on anything? Would you like to learn? Projects and questions welcome.

Active Communities:
romhacking.net
smwcentral.net
metroidconstruction.com
gbatemp.net
sonicretro.org
mariopartylegacy.com
pokecommunity.com
baddesthacks.net
pouet.net

Huge Community List:
pastebin.com/edWKBJqn

IPS/BPS Patcher:
romhacking.net/utilities/1040

Huge Archive:
archive.org/download/En-ROMs/En-ROMs/

Other Archives:
archive.org/details/rom-hack-patch-archive
mediafire.com/folder/50m95vbbuyf25/vr's_ROM_>Hack_Recommendations
archive.org/details/hbmame_0244_roms

Quality of Life Improvements:
https://pastebin.com/4gmM7wc6

Desplash Patches:
mega.nz/folder/FZtzjZJa#qtrGXSbVNjiXUrnGUGSVMw

NESDev:
wiki.nesdev.org
forums.nesdev.org

SNESDev:
snes.nesdev.org/wiki/Main_Page
github.com/alekmaul/pvsneslib
wiki.superfamicom.org

N64Dev:
n64dev.org
n64vault.com

GC/WiiDev:
devkitpro.org
github.com/devkitPro/gamecube-examples

SegaDev:
smspower.org

MegaDev:
gendev.spritesmind.net/page-doc.html
github.com/Stephane-D/SGDK

SaturnDev:
antime.kapsi.fi/sega/docs.html
segaxtreme.net
jo-engine.org

DCDev
dreamsdk.org

PSXDev:
psxdev.net
problemkaputt.de/psx-spx.htm

PS2Dev:
github.com/ps2dev

XboxDev:
xboxdevwiki.net/Main_Page

GBDev:
gbdev.gg8.se/wiki

GBADev:
forum.gbadev.org
github.com/pret
forums.serenesforest.net/index.php?/topic/26913-nintenlords-hacking-utilities

DSDev:
ndshb.com
dsgamemaker.jada.io

PC98Dev:
hackipedia.org/browse.cgi/Computer/Platform/PC,%20NEC%20PC-98
target-earth.net/wiki/doku.php?id=blog:pc98_devtools

PokeMiniDev:
pokemon-mini.net

Previous:
desuarchive.org/vr/thread/10252836

Want something here? Post it for the next thread.

>> No.10291907
File: 66 KB, 792x522, half_life_64.jpg [View same] [iqdb] [saucenao] [google]
10291907

What's your dream game /vr/ ?
and why is it Seiken Densetsu 3 for the Virtual Boy?

Also, what are you working on?

>> No.10291924
File: 55 KB, 378x263, Super_Mario_64_box_cover.jpg [View same] [iqdb] [saucenao] [google]
10291924

>>10291907
How feasible would a Mario 64 port for the PS1 be?

>> No.10291940

>>10291924
PS2 and Dreamcast ports were out within the year when the decompilation released. PS1 still hasn't got anyone working on it, and the HackerSM64 devs don't think it'll be happening any time soon either.

>> No.10292030

>>10291907
bug fables came very close to being it for me

>> No.10292156

>>10291940
>>10291924
The PS2 and DC ports show that simply compiling the source for a significantly faster CPU than the N64 had results in a sub-30fps experience. In order to get the code running on a MIPS cpu at a third of the speed you'd need to do some crazy optimisations. While there is plenty of headroom to optimise on the N64 code, the low hanging fruit all requires more lookup tables which means more RAM usage, and the PS1 has half the RAM.
I suspect any PS1 port would be like an old school port where it's just a cut down, low quality version like how a Switch version of a modern game is.

>> No.10292217
File: 126 KB, 489x200, file.png [View same] [iqdb] [saucenao] [google]
10292217

>>10291901
Should've changed the sound effects

>> No.10292238

>>10291924
It’s possible but would need significant changes. It really wouldn’t even be the same game. Mario 64/Zelda really play directly to the systems strengths. In the same way the N64 couldn’t do FF7 or MGS. Systems at the time really had their games designed around what the system could do. Early 3D was very much people figuring things out and how to do them going forward.

>> No.10292396
File: 300 KB, 416x384, nintendo_sixty_fourrrrrr.png [View same] [iqdb] [saucenao] [google]
10292396

>>10291924
a ridiculous fuckton of work for a slower, shittier Mario 64
you'd have to rewrite the game for disc media instead of just grabbing stuff off of the cartridge at will. i doubt you could fit all of the textures in the PS1 memory, so some of those would have to just be solid colors. blah blah blah a million other things that wouldn't work right.
basically, if it hasn't been done yet, there's a damn good reason.

>> No.10292421

>>10292396
I think the textures would be the least of worries really. SM64s textures are quite small. You could rework the textures and use the PSXs compression to have them easily arranged and fit. Then stream in some data as needed. The harder more time consuming part would be subdividing. Everything. The polycount for SM64 is crazy low. There’s methods to add a depth buffer in software but given how complex enemy movement gets in SM64 I could imagine it would be difficult to make it fit. It ends up being an entire re-working rather than an actual port. The source code really is barely helpful in that regard other than helping keep the game faithful. The PSX has all the power necessary for all of these pieces to come together. But there’s no team to do it

>> No.10292472
File: 25 KB, 512x512, Mr. Do arcade.png [View same] [iqdb] [saucenao] [google]
10292472

NES port of Mr. Do

>> No.10292481

>>10292472
alright but the arcade game was Z80 code so it would have to be extensively rewritten for 6502 NES. perhaps a Master System port would be better not in the least because it's much much easier hardware to program.

>> No.10292567

is there a way to add mic to dosbox record function?

>> No.10293046

bump

>> No.10293081
File: 56 KB, 450x280, duke.jpg [View same] [iqdb] [saucenao] [google]
10293081

>>10292567
> dosbox + mic
that's a horrible idea for a million reasons but what in gods name are you trying to do?

>> No.10293315

>>10292472
>>10292481
it was on C64 and Atari, right? those are 6502.

>> No.10293447
File: 70 KB, 639x938, sneventracker_pic.png [View same] [iqdb] [saucenao] [google]
10293447

To the anon from the end of the previous thread asking about SMS/GG music (>>10290681)

In addition to what the the other poster (>>10290713) said, another method that may help is transcribing the .vgm files to a readable format
For example, SnevenTracker has a script that can covert .vgm files to tracker mod files where you can see the notes for all the channels
(you can either log a .vgm yourself in an emu or find them online)

Find a sequence of notes in a song (preferable all with the same length/instrument/volume/etc.) eg. picrel shows Green Hill Zone from Sonic1 SMS: A-4 F-4 A-4 F-4 B-4 G-4 B-4 G-4
then look for a matching sequence of bytes (or sequence of every-other byte) that would align - in this case x, x-4, x, x-4, x+2, x-2, x+2, x-2

A lot of basic 8-bit music drivers will set note data like:
(byte for note pitch) (byte for note length)
for every note, or only set length when needed, eg.
(byte to set note length = x) (byte for pitch) (byte for pitch) ... (byte to change note length = y) (byte for pitch)

Most will have pointers mapped to in-game levels/areas that point to headers that define the song & then point to individual channel data.
Some feature patterns/loops, effects commands (eg. vibrato/detune), etc.
Some use present envelopes/volumes, others can change on the fly

Some are autistically built to do exactly what the game needed and nothing more (eg. SMB1, Metroid) while others will have been built via some fancy in-house tracker/composition software the devs made. Earlier drivers will usually be easier to reverse engineer, but less capable.
The tough part is that every game is different, and there's a lot of ways to program a music driver.
I recently did a Sonic 1 SMS music hack for SHC2023 - driver was pretty featured and sensible other than the noise/percussion being really inefficient and kinda cryptic.

Oh, and dealing with sfx is a bitch on these earlier consoles. Be prepared for them to cut into your music and compose accordingly.

>> No.10293667

>>10293447
Thank you so much, with what you and the other anon said I have a pretty good idea of what to look for now. I already had Sneventracker on hand and I'll be using MEKA for debugging. VGMs for SMS/GG look plentiful so I'll grab the one for the game I'm working on and use it to compare.

>> No.10293705

>>10293447
> Green Hill Zone from Sonic1 SMS: A-4 F-4 A-4 F-4 B-4 G-4 B-4 G-4
That played in my head

>> No.10293716

>>10292472
how much ROM size would that need?

>> No.10293737

>>10292881
i'm surprised KA needed 512k PRG ROM considering it has only 41 levels while SMB3 fits 90 levels into 256k PRG

>> No.10293739

Hope this is an ok place to ask this. I'm trying to get SM64 running on my phone to play on a flight but I'm having endless issues trying to compile the apk. Are there any precompiled apks around? I've spent hours searching but the closest I've found has on-screen controls which I don't need since I'll be playing on a gamepad.

>> No.10293754

>>139765247
Kirby has a lot more unique graphics than SMB3 and probably it took a lot of space for all of the power ups he can use.

>> No.10293771

>>10293754
There's 25 power-ups in KA. SMB3 has five power-ups. So takes a lot more code for that. Also it's not automatic that KA actually uses all of that 512k ROM space, some of the ROM could be empty as well. The game came out in '93 by which point 512k ROMs were cheap enough that you could afford to waste part of one.

>> No.10293786

I wish there were more vanilla-like SM64 hacks, and what I mean by that isn't neccessarily EVERYTHING (textures, custom stuff, etc.) but moreso the structure and feel. I still stand by that Star Road is the closest to a true SM64 sequel to me, despite its jank, just for how everything is laid out. There's a castle (with a fully featured exterior and interior) with many secrets hidden within, and smaller, tightly knit levels similar to the original. It isn't perfect, of course, but it still has that nice nostalgic vibe that I've had with the original game. Most hacks, especially nowadays, do away with this with a general, open-world taking its place, with not much besides going to point A to point B with some exceptions. Sure, there's Star Revenge 6.25's castle, but for some reason that I can't explain, it feels off. Possibly because everything's there plain to see, with nothing much being a secret, not even the in-castle stars. It kinda takes away the childhood wonder of exploring this new area and finding whatever's hidden without so much as a guide. And that's not even getting into the fact that many hacks' levels becoming much more expansive, and sometimes easier to get lost in.
The reason I loved B3313 so much is because of the castle exploration, finding whole new areas and unlike getting lost in huge levels, I actually get immersed when I get lost in that hack, because it makes me think of the times when I first played SM64 as a wee boy and thinking the castle was much bigger than it actually was, and the levels were (for the most part) more compact and allows you to see where you need to be from the get-go.
(1/2)

>> No.10293793
File: 9 KB, 300x168, download (25).jpg [View same] [iqdb] [saucenao] [google]
10293793

(Also forgot picrel)
I actually think that there could be a benefit for a hack similar to SMWCentral's Vanilla Level Design Contest, only instead of the gorgeous world maps, it's a ginormous castle with many different themes depending on level, with secrets all over the place. Or alternatively, a hack like the JUMP duology, which also keeps mostly to vanilla, but have more unique gimmicks per level. The maps feel more like regular SMW, but are still very pretty, and I can imagine a castle similar to that, but with even more cryptic stuff deep within, just like how JUMP can be. Hell, I'd even take a 3D version of /v/orld if it had a castle.
(2/2)

>> No.10293796

>>10293771
I know the NES Archon is 128k and a lot of the ROM isn't used.

>> No.10293809

>>10293796
you would be correct. Archon on C64 and Atari 8-bit was around 30k. the NES port used UNROM mainly so they could do animated tiles during the battles. also a little more space might have been needed for the music. without that the game could have fit in CNROM.

>> No.10293852

>>10293793
thumbnail looks like a pair of blue legs or pants wearing gray socks and yellow shoes.

>> No.10294010

>>10293793
Just imagine just how masochistic a Super Mario /v/orld 64 would be.

>> No.10294384

>>10294010
It would certaijly be a mess, but a fun one

>> No.10294390

>>10294384
*certainly

>> No.10294424
File: 53 KB, 310x170, waiting.jpg [View same] [iqdb] [saucenao] [google]
10294424

X-Fusion one day.

>> No.10294530

>>10294424
never. we rather see 10 more rom hacks before that one comes out. I dont know whats up with this project. he released several other hacks in the meanwhile and co-worked on a few more.

>> No.10294735
File: 177 KB, 1024x1024, 1696195651197715.jpg [View same] [iqdb] [saucenao] [google]
10294735

>>10291907
Vampires TRPG on 5th & 6th console

>> No.10294862

>>10293081
record me playing to post on youtube

>> No.10294863

>>10294862
ok you need a program like OBS to just capture the DOSbox application window and handle all of the audio from there

>> No.10294889

>>10294863
obs doesnt work on winxp as good as dosbox does

>> No.10295090

>>10294889
> win xp
ugh, i don't want to ask why you're running dosbox on xp in 2023, but hell, just use unregistered hypercam 2 i guess lul

>> No.10295660

>>10291907
Fore me:
>Abadox on the PC Engine
>King's field 1, and 2 on the 3DO and Saturn,
>King's Field 3 on Sega Saturn
>Fallout 1 on PS1, N64, and Sega Saturn
>Fallout 2 on N64 and Sega Dreamcast
>System Shock 1 on the N64 and Sega Saturn
>Black & White 1 on Sega Dreamcast and PS2
>SS2 on the Sony PS2
>Unreal Gold on N64
>GTA III on Sega Dreamcat
>Quake 2 on Sega Saturn

>> No.10295668

>>10295090
maybe he's just got an xp box for old games

>> No.10295726
File: 1.36 MB, 826x1028, 1673240380666016.png [View same] [iqdb] [saucenao] [google]
10295726

>>10291901
Weird, I swear I had made this post already...
Anyway, I was looking for Super Metroid randomizers and learned there's at least 3, are they mostly interchangeable or is any one in particular just better?

>> No.10295842

>>10293447
I'm having trouble converting the Gxx command in Famitracker into readable ASM for Castlevania 3's US release. Have any suggestions?

>> No.10295914

>>10295726
I know of VARIA and Map Rando, and they're not interchangeable.
VARIA is focused on item placement. Heavily customizable. Has additional options such as mirroring rooms, randomizing area connections, randomizing which bosses appear in which boss rooms, boss rush mode, among other things. Includes quality of life options like faster door transitions, faster item pickups, respin, etc. Includes cosmetic options like changing the music, or Samus' sprites.
Map Rando is focused on rooms. Rather than randomizing the connections between whole areas like VARIA, Map Rando rearranges individual rooms into an entirely new map, and randomizes items on top of that. It does have an option to use the vanilla map, at which point it just turns into a regular item randomizer like VARIA, but with less options. Includes some quality of life options, but less than VARIA.
I guess there's also Super Metroid Arcade, which is similar to Map Rando but does it's generation entirely within the ROM itself, and doesn't create a map; each door always leads to a random location, based on difficulty selection before the starting the run, and items aren't randomized. More rooms are added to the selection pool based on the equipment you collect, enemies hit harder and move faster the more rooms you clear. The goal is simply to get to the end if you've set a room limit, or go as far as you can if you've set it to endless.

>> No.10296008

>>10295842
I'll be honest I have minimal asm programming experience (only "vanilla" music hacks for me so far) but I have been tracking chiptune for like a decade lol so here's two workaround ideas:

- Add a row to the module and use FXX to split it up
eg. if your song is at F06 and you want to apply G04, just have a row with F04 and another at F02
If you do this often then maybe just have the whole module at a faster tempo like F02. There's a shortcut to stretch highlighted note data if you already have the song sketched.

- Add a custom instrument for the situation ie. pluck_triplet.fti
probably less useful if you have lots of unique delays/tempos/instruments

There's likely a reason why none of the Famitone drivers support GXX lol, probably hard to implement
The bhop driver does support it though, maybe look at how they implemented it: https://github.com/zeta0134/bhop
I also know an asm programmer who implemented GXX for a custom bootleg hack a while back, I could poke him if the above don't work for you

>> No.10296687

>>10292481
I wager it would really be shit because translating Z80 code to 6502 is not nice, especially doing 16-bit numbers is not nice. One of the reasons why Nintendo used the CHR ROM setup on the Famicom was that it was 6502-based and it takes so much more code to do anything compared to a Z80. So putting the graphics in a separate ROM would save a lot of space in the main game ROM. If they'd used a Z80 probably it wouldn't be as necessary as games won't need as much code.

>> No.10296738

like the average NES game will use about 30% of the ROM for code while on the Master System it will be 15-20%

>> No.10296903

>>10294530
Metaquarius is too busy making dumb Sailor Moon Castlevania shit

>> No.10297264

>>10296903
I heard he asked for a patreon to finish this project. At this point I dont believe x-fusion was ever real. I am certain its a side hustle and he is scamming some discord retards for easy money.

>> No.10297287

I feel like I’m taking schizo pills but I’m bullish on AI in the next 5-10 years accelerating homebrew or romhack development on well documented platforms like the genesis. Maybe in 15 years you can just flat out prompt generate games, we’ll see. I don’t think it’s a given, flying cars were supposed to happen, but I wouldn’t be surprised either. I feel like there’s gotta be a middle ground of people who still find it intriguing and helpful, I know it’s great for whipping up Python scripts for me at work but it’s definitely not anything close to a silver bullet rn.

>> No.10297310

>>10297287
>flying cars
flying cars will never happen just because of noise polution. they would be so incredibly loud, you couldnt use them anywhere. I dont think ai will make whole games but they sure as hell will help small or even 1 man teams for stuff like producing textures, simple scripts or even music.

>> No.10297685
File: 23 KB, 264x352, co4oeh.jpg [View same] [iqdb] [saucenao] [google]
10297685

>>10297264
I can assure you that meta is the real deal, he finished up my hack and added a ton of content very quickly

>> No.10298064

>>10297310
It would be most useful to generate sound and graphics data but a human code monkey will still need to write the actual code.

>> No.10298084

>>10297264
He didn't ask for a patreon to finish the project, he asked if he should open a patreon at all, because people had been continuously asking him how they could give him money.
Bit of a difference.

>> No.10298317

>>10298084
How legal is running a patreon or go fund me for a hack? If you can claim total conversion would it be profitable as a ROM hack?

>> No.10298438

>>10297685
super duper metroid was actually your hack? damn son, really enjoyed that one. thanks my man.

>> No.10298537

https://nescartdb.com/profile/view/734/captain-comic-the-adventure

Color Dreams seemed to like these 64k PRG+64k CHR setups but that's a really inefficient system never used by licensed NES games as it made a lot more sense to use UNROM.

>> No.10298551

>>10298537
how's it inefficient?

>> No.10298558

>>10298551
UNROM has 128k PRG. You can only include as much graphics as you need and also compress it to save space, and there will be significantly more ROM for code/sound/level data. It was rare for licensed games to use 64k PRG; without looking it up I only recall US DW1 and Bugs Bunny Crazy Castle and those had <64k of CHR ROM.

>> No.10298865
File: 1 KB, 114x114, NESticle_hand2.png [View same] [iqdb] [saucenao] [google]
10298865

>>10298558
> You can only include as much graphics as you need and also compress it to save space
Uh, no. That's not how CHR-ROM works. You're switching out banks of uncompressed graphics.
The only way you can compress graphics on the NES is with CHR-RAM, and with CHR-ROM bank switching solutions you can only switch uncompressed predefined chunks of the pattern table, usually 4/8 KB chunks with older mappers and 1/2KB chunks with later mappers.

>> No.10298874

>>10298865
UNROM does use CHR RAM, silly.

>> No.10298885
File: 12 KB, 524x396, 866989909.png [View same] [iqdb] [saucenao] [google]
10298885

Fun fact. Colecovision Donkey Kong had two versions. The original was 24k and had been programmed in Pascal by a French (of all things) developer. Later Coleco re-programmed it in assembly language so it would fit in a cheaper 16k cartridge. No the original didn't have the pie factory either; there are several minor differences between the two mostly concerning scoring and whatnot.

>> No.10298890

>>10298885
really? i find it inexcusable that they couldn't fit the pie factory in there considering many of the home computer ports were 16k and had it, and they were running on 6502 machines that needed more code than was needed for a Z80.

>> No.10298891

>>10298317
Kaze Emanuar has a Patreon page. I don't know what country he's from (assuming Germany), but Patreon is an American website. It's safe to assume there are no laws being broken here.

>> No.10298896

>>10298558
https://nescartdb.com/profile/view/7/disneys-chip-n-dale-rescue-rangers

i find it rather odd that these 256k MMC1 games were so common when most of them would have been ok as UNROM. it would be cheaper and bank switch faster. if you didn't need PRG RAM or single screen mirroring then MMC1 seems kind of pointless.

>> No.10298897

>>10298885
So which version is that screenshot from? Whichever it is, it's not the version I had as a youngling.

>> No.10298902

>>10298890
It used bloated Pascal code so even with 24k there likely still wasn't enough space. After they converted it to assembly they could have added the pie factory but didn't because they were too lazy.

>> No.10298903

https://forums.atariage.com/topic/138997-colecovision-donkey-kong-16k-and-24k-versions/

differences explained in here

>> No.10298914

>>10298896
they might have preferred the added flexibility in case the game ended up needing PRG RAM but most likely it was because Nintendo offered good prices on MMC1 boards. the standard 128k UNROM board was also common and cheap but a game like RR would probably need the 256k version which was uncommon (mostly only seen in Japan) and possibly more expensive. in fact only two US games actually used that; Best of the Best: Championship Karate and Paperboy 2.

>> No.10298915

>>10295914
Thanks dude! Didn't expect such a thorough reply

>> No.10298926

>>10298914
Maybe so. The annoying thing about MMC1 is that it's so fucking slow. Any MMC1 game will have noticeable pauses when switching screens while UNROM games (for example Mega Man 1) are almost instantaneous.

>> No.10298930
File: 36 KB, 384x380, ezgif-3-031e45ffe3.jpg [View same] [iqdb] [saucenao] [google]
10298930

>>10291907
To C64 to N64 conversion. Really, any gen 4 platform with multitap would be more fun than taking turns on the c64. I have played it about 6 years ago with my kids and they were fascinated but loading the disk was tedious for them. I bought the modern board game but it really didn't have that flare the OG does.

>> No.10298940

>>10298926
well no not really. the PRG banking on UNROM is very fast but it's also CHR RAM so there will be some delays while loading graphics sets.

https://revned77.github.io/maps/Mega%20Man/Bomb%20Man.png

see here. when you go into the hallway to the boss room that door opens and there's a noticeable pause there. that's because the game is loading the graphics for that section.

>> No.10298946

https://www.castlevaniacrypt.com/wp-content/img/cv/maps/level-1.png

same with Castlevania. go through the doors and it pauses momentarily to copy graphics into the PRG RAM.

>> No.10299512

Hey old farts. Anyone of you develop NES games?

>> No.10299513

>>10298940
I'm leaning towards choosing ANROM for my game, but I'm uncertain about how nauseating the scroll seams will be (since it only maps addresses to a single nametable). Are there any ANROM games which hide this succesfully by turning on the BG clip during scrolling? Or was this mapper mostly used for single screen games?

>> No.10299517

>>10297685
Funny, I was just replaying it earlier this evening. I've gotten my dumb ass stuck at the moment as I need to find some power bombs.

>> No.10299890
File: 128 KB, 1743x794, cobra_triangle_title_nametable2.png [View same] [iqdb] [saucenao] [google]
10299890

>>10299513
AxROM is actually incredibly based. Rare used it. Check out Cobra Triangle; it's amazing for 8dir scrolling.

>> No.10300072

>>10299513
AxROM is single screen mirroring. Rare used it in 90% of their games because it made scrolling routines easier to code. The bad thing about it is that the entire 32k PRG space is banked so you have to put some trampoline code in the system RAM which takes some of your valuable 2k of space while most mappers lock $C000-$FFFF in place. Also a lot of code has to be repeated between banks on AxROM which wastes ROM space.

>> No.10300692
File: 139 KB, 1024x1024, 1696196126715895.jpg [View same] [iqdb] [saucenao] [google]
10300692

>>10291907
Princess Maker 64DD

>> No.10300705

>>10293793
Seeing 4chan make a SMW romhack would be funny as fuck

>> No.10300713

>>10300705
*SM64, fuck

>> No.10301040
File: 7 KB, 512x480, sisyphus-title.png [View same] [iqdb] [saucenao] [google]
10301040

>>10299513
This homebrew just came out and uses ANROM with scrolling.

https://pubbygames.itch.io/little-sisyphus

>> No.10301981

>>10301040
cool

>> No.10302120

can i add a mic to dosbox record function?

>> No.10302213

>>10291901
Paprium on the 32X. Probably squeeze the entire thing, sans some audio samples, onto one of those carts.

>> No.10302867

>>10291907
Horror tale about lost Shantae PC Engine games.

Inspire from: https://www.youtube.com/watch?v=fcKwwSqxEbk&si=vRumksqk2axwnCx8

>> No.10303523

>>10298896
MMC1 lets you soft switch the mirroring direction. Bugs Bunny Crazy Castle switches it between the horizontal and vertical scrolling stages.

>> No.10303589

>>10292472
Is porting games a good way to learn how to code for old video games?

>> No.10303674

>>10303589
Kind of.
Pick a platform and write a simple game for it (pong, snake, sokoban, etc.). Then you'll understand the gist of it.

>> No.10303698
File: 4 KB, 576x400, halloween atari 2600.png [View same] [iqdb] [saucenao] [google]
10303698

>>10303674
>>10303589
Atari 2600 games are a good place to start as most of them are 2-8k so very tiny and easy to understand to port.

>> No.10303710

>>10297287
I doubt we’ll get to a “entire hack by prompt” level anytime soon. The thing is good at making stuff using languages well documented. And it always requires an explicit breakdown of the process when dealing with more complex and unique stuff. Older games have such game specific hurdles that I doubt it will ever be fully understood without it also being able to run tests, debug, and comprehend what’s happening in the game, all by itself. It might be possible if someone trains an AI and created a testing environment specifically for this purpose, but it won’t come from your commercial ChatGPT and suchs.

However, in it’s current state it’s already VERY enabling for romhacking. Being able to instantly create very specific, single-use scripts to deal with tedious work, without me having to code each by myself, has been a game changer. Stuff I put aside just because of the sheer amount of work it would take to code, I have now completed thanks to being able to make GPT4 write scripts for each step for me. (Unpack file, decompress… an edit that’s also multistep… and then, recompress, write new checksum, repack, etc)

Hell, I even write Photoshop scripts with it, to mass split/edit/rearrange spritesheets.

>> No.10303734

>>10303698
that would be a cool NES port

>> No.10303741

>>10303734
maybe but it's a typical 4k Atari 2600 game. the "minimum" size for a NES game is 16k. therefore you'd have to flesh it out to that much to have something resembling a proper NES game. nothing stops you from doing a straight port in 4k but it would be very limited and silly and no commercially released games used a ROM that small.

>> No.10303754

>>10303741
>>10303734
just do a ZX Spectrum port instead, then nobody cares how it looks or how big or small the game is

>> No.10303792

>>10303754
>>10303698
It's annoying to convert 6502 game logic to Z80.

>> No.10303803

>>10303792
not as bad as the reverse

>> No.10303835

>>10303698
most of them were 4 or 8k, there were some 2k ones and 16k and a few late 32k releases. CBS released three games in 12k of ROM.

>> No.10303839

>>10303698
I still think that re-implementing a simple game yourself is a better approach, at least for learning the basics. Trying to translate or adapt the original code may be too much for a beginner.

>> No.10305326

https://www.youtube.com/watch?v=EbGXYIXXsW8

>> No.10305392

>>10305326
>
https://www.youtube.com/watch?v=KeoL06lS3U0&si=aZUudFmzLdSjJQYa

>> No.10305404

>>10305392
>PVSnesLib
>PVSnesLib (Programmer Valuable Snes Library) is an open and free library to develop programs for the Nintendo SNES using the C programming language.
I can't understand why people would try to use anything that is not ASM for those old consoles that were coded in ASM when the game doesn't look like anything that would be released in that console.
There is no reason at all for that game to be done for SNES if he is not even going full ASM.
If the guy released that game for computer, no one would call it a "SNES game released on PC"

>> No.10305714

>>10305404
>There is no reason at all for that game to be done for SNES if he is not even going full ASM.
Portability is one - making a game for a retro console essentially ensures that it's playable on many kinds of devices. Not to mention it lets the game take advantage of emulator features, like cheats or netplay.

>> No.10305867

>>10305714
I'm sure STI found that out when they tried porting their Sonic X-Treme PC engine to the Saturn and found it ran at 5 fps.

>> No.10306021

>>10303710
Not him, but maybe if an AI gets trained with basic graphic elements like character sprite names, etc?
Like, "Give me Castlevania with Mario from SMB3" or "Castlevania with background tiles from Holy Diver" and stuff like that?
Probably would be a lot of effort for whoever programmed those, though.

>> No.10306212

https://www.youtube.com/watch?v=jrHi62vPq6k

>> No.10306372

>>10306212
Damn what SNES game had that music that's just "That's the way I like it"
I swear I've seen what game it's from before but now I've completely forgot.

>> No.10306381

>>10306372
Ah fuck that's right, it was Parodius.

>> No.10306850

>>10298896
Dynamic mirroring. The mirroring direction here is meaningless when it's an ASIC mapper that lets you soft select it. Dragon Quest 1 is a good example. The Japanese original was CNROM and used vertical mirroring so it would produce noticeable scroll glitches when moving up and down. This was switched to MMC1 for the US localization which just switches the mirroring direction as needed to get clean scrolling.

https://tuxnes.sourceforge.net/nesmapper.txt

>> No.10306859

>>10306850
i never entirely grasped how mirroring on NES works

>> No.10306865

>>10306859
the tile map on NES works like this:

>V mirroring
XY
XY

>H mirroring
XX
YY

basically you can store two separate screen maps in either the H or V axis, with the opposite direction wrapping around and repeating the tile map. unless an ASIC mapper is used this is hardwired on the cartridge PCB. the idea was you would select V mirroring if the game was to scroll horizontally and H if you meant to scroll vertically.

>> No.10306872

and sometimes there's single screen mirroring where you just have a single non-mirrored tile map. very rarely four screen mirroring like in Gauntlet. single screen mirroring is actually how all consoles that aren't a NES work.

>> No.10306948

>>10303589
Just code anything whether its for z80 or 6502, after a couple of weeks you just remember the instructions and the syntax instinctively. When I started I had to keep looking at my book everytime I made an instruction to put the brackets in the right place. I eventually just made some little notes to remind me if I forget like if I go from z80 to 6502 it takes me a bit to get used to it.

>>10305404
I think C is harder than assembly anyway.

>>10299512
Only a small hack, I just do sms, gameboy and atari 2600.

>> No.10307072

>>10306212
Cool shit.

>> No.10307623

bump

>> No.10308304

>>10291907
Super Spyro the Green Dragon and Coco Bandicoot FX on the Super Nintendo.

>> No.10308656
File: 24 KB, 294x394, smug healthy uninjured man.jpg [View same] [iqdb] [saucenao] [google]
10308656

>>10297264
>At this point I dont believe x-fusion was ever real.
This along with Mega Man X Corrupted
Literally a sprite animation. Prove me wrong.

>> No.10308669

>>10300692
Mind sharing the prompt

>> No.10308693

>>10291907
A Star Fox 2 hack but it's actually Starglider III (or 0.5?)
You play as a Conerian researcher who's objective is to study the ever living shit of what's actually beyond the Lylat Star System.
Story takes place before James' death, but isn't canon to any Star Fox game.

Can be only played on emulators or everdrives unfortunately.

>> No.10308697

>>10308656
Unlike X-Fusion, Mega Man X Corrupted actually goes something.
https://yewtu.be/watch?v=7pk-DsDpiBo

>> No.10308852

what would you guys say is the best bootleg gameboy cart to buy in bulk if i want to flash a shitload of decent quality (playable without dying after a year) personal bootleg carts? what about for nes carts?

>> No.10309419

>>10308656
It's honestly easier to make a platfomer than churn out a ton of painstakingly timed footage

>> No.10310617

>>10291924
Bad.

>> No.10310956

>>10298558
think of a NES mapper as being like flipping the pages of a book. your core game engine goes in $C000-$FFFF and $8000-$BFFF contains alternately the level, sound, graphics or object code for that specific level. during gameplay normally the object code is switched in and during blank you switch in the sound bank, read the music data, play a note, and switch the object code back in. the level data and graphics banks are normally only activated at the start of a level so the engine can set it up and them switched back out.

>> No.10311657
File: 58 KB, 444x400, gunstream.jpg [View same] [iqdb] [saucenao] [google]
10311657

Anyone heard of this game here? Small shmup by the name of GUN STREAM Don't think it's been dumped either

>> No.10311798

What hack is this: >>10298764?

>> No.10311854

anyone here homebrew a GBA game? all I know is C and apparently you can use C to make a GBA game

>> No.10311880

How the FUCK aren't there complete Metroid Prime hacks that make entirely new games?

>> No.10311901

>>10311854
Theres actual tutorials that do just this, here's a good one

https://www.coranac.com/tonc/text/toc.htm

>> No.10311909

>>10311880
Because Metroid prime fans suffer from the opposite end of dunning Kruger than ootophiles do. Oot fans think they can make so mething great and 99% of the. Are absolute fucking crap, where as prime fans dont want to try and tarnish or compete with the elegance of prime, even though they would do a better job than ootophiles.

>> No.10311947

>>10299512
Yes I posted my metroidvania a couple of threads ago. I do this with my cousin. What do you want to know? We using NES Maker.

>> No.10311950

>>10311901
thanks! that's exactly the kind of thing I was looking for

>> No.10311992

Grand Poo World 3 just announced. Coming November 10th.
https://www.youtube.com/watch?v=d9tqLamaZbc

>> No.10312228

You'd think there would be a lot more halloween themed rom hacks.

>> No.10312258

>>10311992
another kaizo hack that would become famous and overrated like the second one just because it's Barb, I can't wait for it

>> No.10312875
File: 312 KB, 1982x2088, dw1 overworld.png [View same] [iqdb] [saucenao] [google]
10312875

>>10310956
the bridges in DW1 as you probably know mark different areas with different sets of enemies. each time you cross the bridge it banks in the sprites for that group of enemies on the fly.

>> No.10312929

>>10311909
lel
I just think people are scared of touching disc games, because they're incompetent. The Wind Waker editor probably won't be used much even though there's larger potential of decreasing the size of the huge, empty ocean and putting something else in it.

>> No.10313263

>>10311657
What system is it for?

>> No.10313370

>>10313263
GameGear
https://www.gameimpact.info/gunstream/

>> No.10313397

>>10291901
Super Metroid for pedophilez

>> No.10313402

>>10308697
Literally stop shilling your sprite animation, you attention whore.

>> No.10313405

>>10301040
>made with NESfab

Oh goodie another gimp tool that lets you make early 83-86 NES games on NROM.

The only good NES aftermarket homebrews are the japanese ones cause at least they know all about Assembly, and wven those are short arcade style games like Astro Ninja Man DX

>> No.10313413

>>10309419
Counterpoint: Mega Man fans are autistically dedicated.

>> No.10313414

>>10311992
>Grand Poo
Granblue Fantasy is retro?

>> No.10313419

>>10313405
Is Assembly worth to learn?
I wanna make some robust shit or lend a hand for some development teams for nostalgic games

>> No.10313438

>>10292156
sub 30fps on the PS2? What areas did it dip below this?

>> No.10313473

>>10313405
>Oh goodie another gimp tool that lets you make early 83-86 NES games on NROM
I have nothing against that but NESmaker shit is for fags. I also have a distaste for homebrews that are NROM but try to look like 1992 MMC3 games.

>> No.10313491

>>10313413
Anyone dedicated enough to do all that shit in Flash can just slap collision on it and call it a game. It'd save time over tweening everything with the mouse or whatever

>> No.10313539

>>10306948
>I think C is harder than assembly anyway.
Wait, so I'm not insane? I've had a much easier time learning ASM over C/C++ or Python. ASM just seems so cut and dried and straight forward, whereas C/C++ and Python just feel too damn abstract to make sense to me. I thought I had brain problems.

>> No.10313684

>>10313473
Are you me? I always felt i was the only one sharing that point.

>> No.10313694

>>10313684
what point was that?

>> No.10313697

>>10313694
99.5% of NES homebrew is poorman's trash.

>> No.10313721

what's like the most popular system for homebrew games?

>> No.10313772

>>10306372
Jikkyou Oshaberi Parodius
https://youtu.be/IJ4eUvNHOQE?si=k6EqiFsIbOBpp4za

>> No.10313798

>>10313721
Atari 2600, NES, and Mega Drive are the biggest.

>> No.10313802

>>10313798
thanks

>> No.10313878

Bump

>> No.10313893

>>10313721
Genesis is the clear stand-out.
It's one of the easiest systems to program for. You have a flat memory map with no banking, a 2nd CPU that you can use to handle all your sound work so your main CPU and program can all be focused on the rest of the game, and an incredible amount of documentation both official and unofficial for every aspect of programming the console. There's also plenty of source code available for commercially released games like Gargoyles to learn from. It's also not a 3D-oriented console, so you don't need to learn modeling or any 3D maths to deal with that stuff.

>> No.10313905

>>10313893
The Master System is probably the easiest retro console, it's about as difficult as coding a Flash game.,

>> No.10314065

>>10313491
Some fans just wanna go hard

>> No.10314095

>>10313905
banking is annoying bullshit you have to deal with on Gameboy, NES, and Master System and i still don't entirely understand it

>> No.10314109

>>10314095
It's not that hard. Imagine your game ROM is 128k. you have eight 16k segments.

(1) x (2) x (3) x (4) x
(5) x (6) x (7) x (8) x

now imagine segment one contains your core game engine and jump routines; this bank is always fixed and does not get switched out. the other banks contain sound data, level data, graphics data, and object code specific to the current level. when you switch levels, you switch in the graphics bank, copy it to VRAM, switch in the object bank, read the data and set up the level, then switch in the object code and begin running it. the sound bank is switched in during vertical blank, the data read and played, and then swapped back out for the object bank.

>> No.10314140

>>10313539
C has been preferred since the 5th gen for portability and because it's easier to visualize the matrice math needed for 3D calculations.

>> No.10314145

>>10314140
I believe PS1 games were normally always written in C++ and Sony actually discouraged bare metal coding and did not provide much documentation of the hardware registers. Asm was more common on Saturn and N64 due to bottlenecks in their fucky architectures.

>> No.10314157

>When work on Maniac Mansion started, Gilbert began coding the game in 6502 assembly language which was the norm for C64 games. He quickly realized that a game of this scope could not be coded this way and an alternative solution was needed, which became the SCUMM engine.[3]

>> No.10314161

>>10314157
There's no reason he couldn't have done it in asm but it was an adventure game so a scripting engine would let them add and subtract game assets more easily.

>> No.10314167

>>10313746
PC compatible games were commonly written in hlls from the beginning, often Pascal or compiled BASIC.

>> No.10314169

>>10314167
I've seen games like that, they usually run like shit compared to the ones coded in x86 asm.

>> No.10314180
File: 96 KB, 612x602, 1684507765079985.jpg [View same] [iqdb] [saucenao] [google]
10314180

>>10314140
Tell that to David braben, fuckin pansie. Braben wrote an on the fly bezier curve 3d renderer that can render whole fuckin planets 1:1 ratio with no loading times going from ground to space. He wrote it in 250,000 lines of asm all in under 1 megabyte and in 2 1/2 years. Bow down to the king.

>> No.10314195

>>10314145
Mighty Dog broke the rules and coded in assembly language which technically could have failed Sony's Q/C guidelines. The PS2 was designed for a higher degree of bare metal coding as programmers complained that PS1 development was too much like coding in Java or something.

>> No.10314202

>>10314109
it's still easier on the Mega Drive where there's just one continuous memory space

>> No.10314213

>>10314180
the NES port of Elite was rather interesting as it used the longer PAL blank for extra calculations so the game didn't get an NTSC release, it wouldn't work

>> No.10314224

the NES is a royal PITA to code for mostly because of the PPU

>> No.10314230

>>10313721
Not retro (yet), but PSP

>> No.10314234

>>10314213
What a madman. Hey, you remember that game .kkrieger?

>> No.10314367

dont feel like programming so im just kinda fucking around in aseprite while i watch someone play dark souls

>> No.10314461

>>10313721
The Speccy might have the most. The Spectrum Next and ZX Evolution are hardware upgrades.
https://www.youtube.com/@MZX-RG/videos
https://www.youtube.com/watch?v=0lgcE1GcAyM

>> No.10314568

>>10314461
>The graphic taken from SNES
Such wizard along Famicom demake

>> No.10314812

>>10313539
Assembly isn't so nice when you try to do floating point or trig stuff.

>> No.10314818

https://www.atariarchives.org/basicgames/showpage.php?page=48
As case in point.

>2080 c6=(2*c2/5)*(1+1/(2*(abs(y2-y)+1)))
>2090 c6=c6*(1.28+(5*h2/6)/(b(2)+1))
>2100 c6=int(c6*(1+1/o2)+.5)

Try doing these lines in assembly language. Ha ha good luck with that.

>> No.10314820

>>10314812
I think that it really depends on what you're trying to accomplish. If you're just talking 3d asm is going to be harder. on the flip side. Having old c compilers create unoptimized code that clunks up your funk, is also not so nice.

>> No.10314830

>>10314812
Most 2D games rarely need more than simple integer arithmetic.

>> No.10314837

>>10314818
I don't think these particular lines would be that hard to translate into asm, unless maybe 6502 asm because they're mostly just basic add/subtract/multiply/divide. I have no idea how you would do trig functions in asm though.

>> No.10314918

>>10314812
>>10314837
Sure, on a 286 or similar processor that doesn't have built-in CPU functions for trig stuff, it's gonna be a bitch. But on the 287 FPU or better, you just use stuff like FSIN and FCOS to do the trig math for you. Same for floating point math with REAL4, REAL8, and REAL10.

>> No.10315404

bump

>> No.10315442
File: 35 KB, 500x500, 1696580941490572.jpg [View same] [iqdb] [saucenao] [google]
10315442

>>10313402
>show progress to my favorite fangame
>STOP SHILLING UR FLASH ANIMATION
>impling im making this game
lmao
even

>> No.10315443

>>10311798
Bumping this

>> No.10315759

>>10305404
>>10305714
Surely 65816 assembly not easy?

>> No.10315790
File: 619 KB, 1920x1029, Screenshot_2023-10-10_12-36-23.png [View same] [iqdb] [saucenao] [google]
10315790

Does anyone else like poking around games for assets?

>> No.10316181

>>10315790
Once in a blue moon I do. It can be fun, but I usually just wait for other people to do the work for me and I poke around the results. Because I'm lazy like that.

>> No.10316229

as much as I'm interested in Homebrewing a GBA game, I think what I ought to do first is actually just finish the game I'm working on, then see about sort of transforming it so it's viable for a GBA I guess

>> No.10316402

>>10314818
Floats are easy. You just store them as two byte values. It's really an abstraction anyway since the CPU can only operate with whole numbers.

>> No.10316459

>>10316402
> floats are easy
ok explain a mantissa. bonus points for implementation in any ASM you choose.

>> No.10316464

>>10316459
>the part of a floating-point number that represents the significant digits of that number, and that is multiplied by the base raised to the exponent to give the actual value of the number.
not him but seems like just simple multiplication ala MOV RAX,16 MUL RAX or some such.

>> No.10316476

>>10316464
on x86 you need to be a little careful because RAX is the accumulator so that particular code snippet will multiple the number on itself (so 16*16).

>> No.10316497

>>10316464

>>10314818
>c6=c6*(1.28+(5*h2/6)/(b(2)+1))
MOV RAX,1
MOV RCX,28
MUL RCX
ADD RCX,5
MOV RAX,6
DIV H2
MOV RCX,RAX
MOV RAX,5
MUL RCX
MOV RCX,C6
MOV RAX,B(2)
MUL C6
ADD RAX,1

I think this would do it anyway.

>> No.10316505
File: 22 KB, 480x320, guiri_bar.png [View same] [iqdb] [saucenao] [google]
10316505

>>10316229
What are you making and for what platform?

>> No.10316514

>>10316497
modern PC 64-bit asm is practically cheating though. try it in 6502 asm to prove how manly you are.

>> No.10316736

>>10316402
You sure you're not thinking of fixed point numbers? Cause that's the thing to use if your system has no dedicated FPU.
Also if you ever find you need to divide, you should consider if it would be better to use a multiplication instead.

>> No.10316737

bump

>> No.10317184

>>10316514
^this. if you can't do that in 6502 you haven't proven your penis size.

>> No.10317215

>>10316514
How is it cheating

>> No.10317223

>>10316497
>ADD RAX,1
INC RAX does the same and only uses one byte, no?

>> No.10317241

>>10317223
On some x86 generations the ADD instruction is faster and on others INC is faster.

>> No.10317273
File: 720 KB, 320x288, window closing.webm [View same] [iqdb] [saucenao] [google]
10317273

Not much progress on this lately, but at least you can close windows now.

I think it's clear at this point that a desktop environment is certainly possible given the hardware. The Game Boy Color manages just fine, even with the drawing code being pretty unoptimized. The original Game Boy does okay, but it struggles to update the screen fast enough to feel responsive. It's still usable with some patience, but the Game Boy Color gives a much better experience overall.

Anyways, this is about as far as I intend to go with the concept. I might still add a few more features, but I'm considering it "done" since I've already achieved what I wanted (a simple little mock desktop).

>> No.10317281

>>10316497
that does prove anon's point. assembly language is fairly descriptive so it's easier to visualize than abstract symbols like a bunch of parenthesis and asterisks.

>> No.10317286

>>10317273
Bravo, Anon.

>> No.10317465

>>10316505
a 2D action RPG on PC but I discovered Homebrew and I thought it would be cool to try and make it work for GBA or something but it seems like it would be a lot more work and I haven't even finished it for PC yet
I don't even have many textures or anything, mainly just the code
it's my first try at making a game as well, so I probably shouldn't be focusing on homebrew

>> No.10317495
File: 7 KB, 480x320, english_no_bounds.png [View same] [iqdb] [saucenao] [google]
10317495

>>10317465
GBA is way more powerful than SNES or MD, but if you want to make a port from a PC game:
>Forget about fancy languages with dynamic typing and garbage collectors, C/C++ is the bare minimum.
>Screen resolution is *small*, so you're probably going to need to adapt your game to fit the viewport.
>There's only 96KB of VRAM and 512 colors for all backgrounds and sprites, so you're probably going to need to adapt your GFX to use as few colors as possible (better if you use 16 colors GFX to fit more shit in VRAM).
>There's only 256+32KB of WRAM, so your lazy data structures are going to need to be reduced in size to fit in it. Also, forget about using the heap for every entity.
>You're probably going to need to remake your music as a module file (mod, xm, etc) to be able to fit it in ROM (32MB max).
>And of course, forget about engines like godot or unity.

>> No.10317509

>>10317273
post rom?

>> No.10317554

>>10317509
Maybe even source if someone want to add more stuff :33

>> No.10318020

>>10314818
>2240 C5=INT(C5*(1+I/0)*(1.28+F1/(B(1)+)).5)
>2250 E=100/O

The second would be just a simple DIV operation. The first line, ughh.

>> No.10318392

>>10313405
Did you actually play the game? It's not nrom and the programming is good.

>> No.10318747

>>10317495
thanks, you seem to know a lot about this stuff
I've been making my game in C and using SDL2 but I'm guessing I'd have to make it so I can't even use SDL2 which I think would be a lot of work too

>> No.10319176

>>10291907
Metal Gear Solid for Sega Saturn:
https://www.youtube.com/watch?v=epZhxsDw03Y

>> No.10319365

>>10319176
Hope Metal Gear 2 get SNES port:
https://www.youtube.com/watch?v=KYyoDDhZOqs&si=cgZGXKWLKIeHzT_j

>> No.10319403

>>10308669
Sure pal

>> No.10319420

>>10317509
>>10317554
If you want, you can grab the ROM over at https://github.com/Asbestoast/gbOS . The source code is there too, though I can't recommend trying to do anything with it. The way it's written means it can pull off this one small demo, but not much else. It would take a lot of work to make it usable in a more general sense. It's really not meant to be anything more than a proof of concept.

>> No.10319470

Has anyone ever made a ROM hack that will read your save from a commercial game and then let you play through a whole new quest using your saved character data?

>> No.10319523

>>10319403
I thought AIkeks don't hoard like greedy evil artists.

>> No.10319540

>>10315442
>Showing another animation is progress
You're not ever going to play it, just like Edelweiss or X-Fusion.
It's all a lie.

>> No.10319545

>>10319523
look at the filename. he didn't make that image, he saved it from someone else.

>> No.10320070

https://www.youtube.com/watch?v=sAkSHzR-P7M

>> No.10322101

>>10313405
Pac Man Championship Edition FC started as a Japanese homebrew and then became official, and it's really good.

>> No.10322345
File: 81 KB, 817x694, Screenshot_2023-10-14_01-12-17.png [View same] [iqdb] [saucenao] [google]
10322345

Does anyone have experience modding Naomi games?
I'm only looking to rip the intro video of a game, but I've run into a dead end.
The game flashes the ADX "audio" logo so I'm assuming it's Sofdec format.
I've also read Naomi games have no file structure like the Dreamcast otherwise this would be easy.
Pic is what a known Sofdec file looks like in hexedit.

This is the rabbit hole

https://github.com/mamedev/mame
./chdman extractcd -i gdl-0019.chd -o ggxxrl.gdi -ob ggxxrl.bin

https://github.com/einsteinx2/gditools
python gditools.py -i ggxxrl.gdi --extract-all

https://www.arcade-projects.com/threads/windows-tool-to-encrypt-naomi-chihiro-games.2759/
https://web.archive.org/web/20150428201629/http://members.iinet.net.au/~lantra9jp1/gurudumps/naomi/index.html
DEScrypt 3EE92354DC68642F GGX2.BIN

hexedit *.dat

Sofdec
53 6F 66 64 65 63
CRI
43 52 49
???
3F 3F 3F

>> No.10322934

Is it better to make games in assembly language or use a more abstract code like C?

>> No.10322939

>>10322934
Although some will argue about it, assembly is usually a lot simpler and more direct. C can get really abstract and stuff like cases and pointers are often very hard to understand. with an assembly source listing it's pretty easy to figure out what's going on as you have a bunch of literal instructions like ADD, SUB, SHL, ROL, BIT, etc.

>> No.10323014

>>10319470
Monster Hunter Freedom Unite has custom quests in .pat format which TempAR (cheat plugin for the PSP) writes into the memory of running game, replacing original quest. It's rather a game mod than a ROM hack, but still.
https://www.youtube.com/watch?v=YxfAZ_PnzM8

>> No.10323302

if you're making like a SNES or GBA game then i guess there's no way around having a bunch of small text in the HUD or UI or whatever, huh? because if you make the font too small then it's unreadable

>> No.10324563
File: 91 KB, 1280x720, maxresdefault.jpg [View same] [iqdb] [saucenao] [google]
10324563

are the enemy hp digits small enough for you?

>> No.10324568

>>10323302
>>10324563

>> No.10324864

>>10324568
that's 1280x720 though, most retro games are a lot smaller

>> No.10324906
File: 101 KB, 1024x683, Paris_Tuileries_Garden_Facepalm_statue.jpg [View same] [iqdb] [saucenao] [google]
10324906

>>10324864
That's Riviera for the GBA, at 240x160.

>> No.10324916
File: 30 KB, 480x360, tonkachi mario.jpg [View same] [iqdb] [saucenao] [google]
10324916

is there a site that hosts old smb romhacks? i mean pre 2000 old

>> No.10324924

>>10324916
Idk but maybe look here

https://nesninja.com/game/nes/super-mario-bros.hack-collection/roms

>> No.10324926

>>10324906
how do they get the font so small?

>> No.10324928

>>10324926
It's just pixels, guy

>> No.10324949

>>10322101
And it was done on assembly, surprise.

>> No.10325105

I don't understand homebrew, why limit yourself to outdated hardware
it's like showing a caveman how to make metal and he refuses and continues using rocks instead

>> No.10325172

>>10325105
Some people enjoy programming for old hardware, which is very different from programming for modern hardware.
It can also be cool to see your programs actually running on a console you like.

>> No.10325194

>>10325105
Because it's cool. It's also impressive if the caveman can make beautiful rock sculptures that puts metal working faggots to shame.

>> No.10325287

>>10325105
Modern hardware can emulate outdated hardware anyway, no target audience is lost here.
Besides, it's done for fun rather than for profit. I.e.SOVL vs. soulless

>> No.10325309

>>10325105
Just a challenge and make you better at programming as a whole if you understand what happens in a computer

>> No.10326207

Is there a list/pastebin of romhacks/games made by 4chinners?

>> No.10326279

>>10326207
Rentry.org>privatebin>>Wattpad>>>pastebin

>> No.10326391

>>10293852
Thought it was 1 Jar guy.

>> No.10326687

How do you write logic for gameshark cheats? On DuckStation, specifically. I have a cheat that only works under certain conditions and will crash the game in others so I'm trying to get rid of those edge cases.

Looking at this
https://github.com/CookiePLMonster/Console-Cheat-Codes/blob/master/PS1/Gran%20Turismo%202/BGM%20switch/NTSC-U%201.2.cht
It seems like it's possible.

>> No.10326693

>>10326687
It looks like it's branching and jumping but I have no idea how these translate to gameshark codes.

>> No.10326793

>>10326763
NES port of Frogger. That seems like a game it should have but doesn't.

>> No.10326980

DOS, API function call

mov dx,mess1
mov ah,9
int 21h
mov ax,4c00h
int 21h

mess1 'Hello world!',10,13,'$'

C64, API function call

ldx #$0e
prntmess:
lda mess1,x
jsr $ffd2
dex
bne prntmess
rts

mess1 'Hello world!',10,13,'$'

Both 12 bytes of code.

>> No.10326985

Display string, direct screen write. DOS.

push es
mov ax,b800h
mov es,ax
xor bx,bx
xor cx,cx
mov ah,mess1
mov al,7
prntmess:
mov [bx],ax
inc ah
inc bx
inc cx
cmp cx,0eh
jl prntmess
pop es
mov ax,4c00h
int 21h

mess1 db 'Hello world!',10,13

Display string, direct screen write. C64

ldx #$0e
lda mess1
prntmess:
sta $400,x
dex
bne prntmess
rts

mess1 db 'Hello world!',10,13

Here just 11 bytes while DOS took 29 bytes.

>> No.10327058

>>10326985
never mind, this works better.

mess1 db 'Hello, world!',13,10

push es
mov ax,b800h
mov es,ax
xor si,si
mov bx,offset mess1
prntmess:
mov ax,[bx]
mov es:[si],ax
inc bx
inc si
inc si
cmp bx,0eh
jl prntmess
pop es
mov ax,4c00h
int 21h

>> No.10327062

>>10327058
>cmp bx,0eh
no that should be cmp si,0eh. it's late and I'm tired.

>> No.10327548 [DELETED] 

>>10326687
https://raw.githubusercontent.com/stenzek/duckstation/master/data/resources/chtdb.txt
If you want to keep Gameshark compatibility, you can't use 32-bit codes. So what would take 2 line will take 4, like so:

_C0 Always Drop Items
_L D00CD008 0012
_L 800CD008 0000
_L D00CD00A 1060
_L 800CD00A 0000

This CWCheat/TempAR cheat in Gameshark format checks if address 0x800CD008 contains 0x10600012 (beqz v1,dest), and if so, overwrites it with 0x00000000 (nop). This is for Legend of Dragoon which contains the asm above only during battle, and the cheat is applied only then.

32-bit Duckstation-specific (Gameshark-incompatible) version would simply look like this instead:
A00CD008 10600012
90000000 00000000

>> No.10327558 [DELETED] 

Also, I don't know exactly which codes are Gameshark-compatible, but I assume all supported by CWCheat/TempAR:
https://github.com/raing3/tempar/blob/master/src/objects/cheat.c#L765

>> No.10327564

>>10326687
https://raw.githubusercontent.com/stenzek/duckstation/master/data/resources/chtdb.txt
If you want to keep Gameshark compatibility, you can't use 32-bit codes. So what would take 2 line will take 4, like so:

_C0 Always Drop Items
_L D00CD008 0012
_L 800CD008 0000
_L D00CD00A 1060
_L 800CD00A 0000

This CWCheat/TempAR cheat in Gameshark format checks if address 0x800CD008 contains 0x10600012 (beqz v1,dest), and if so, overwrites it with 0x00000000 (nop). This is for Legend of Dragoon which contains the asm above only during battle, and the cheat is applied only then.

32-bit Duckstation-specific (Gameshark-incompatible) version would simply look like this instead:
A00CD008 10600012
900CD008 00000000

Also, I don't know exactly which codes are Gameshark-compatible, but I assume all supported by CWCheat/TempAR:
https://github.com/raing3/tempar/blob/master/src/objects/cheat.c#L765

>> No.10327820

>>10291901
Is there an easy way to do palette swaps for Super Nintendo games ran on emulators?

Or is the only way to do this would be to hack the rom with custom sprite sheets?

Asking since I want to play Street Fighter II Turbo on SNES but with ZX Spectrum sprites. No, I don't want to play the ZX Spectrum port since its too slow etc.

>> No.10328003
File: 1 KB, 114x114, NESticle_hand.png [View same] [iqdb] [saucenao] [google]
10328003

>>10324916
>smb romhacks? pre 2000 old
zophar.net still exists, but pre 2000, you're mostly going to be looking at about a hundred hastily done graphics swaps of mario; level editors like YY-SMB didn't exist yet or were brand new.
i was there...

>> No.10328015

>>10327820
you might want to look into Mesen-HD packs if you want a quick and dirty graphics swap solution without digging too much into the code
https://www.mesen.ca/docs/hdpacks.html

>> No.10328176

>>10328015
Thanks bro. I will check this out.

I ask because I wanted to start doing palette swap hacks to make some cool new ROM hacks. Sounds like a fun way to mess with sprites.

Gonna plan on using an Amiga emulator with Deluxe Paint.

>> No.10328183

>>10328015
Wait but isn't that for NES only?

I am looking to modify Street Fighter II Turbo for SNES.

>> No.10328928

>>10324916
I wonder if any pre-Lunar Magic SMW hacks exist.

>> No.10329098

>>10329091
>>10329091
>>10329091