libretro / picodrive

Fast MegaDrive/MegaCD/32X emulator
Other
43 stars 64 forks source link

picodrive revisions from irixxxx: major drc work, bugfixing and enhancements for megadrive vdp, and some more #124

Closed irixxxx closed 4 years ago

irixxxx commented 4 years ago

@twinaphex asked me to create this for testbed purposes. I hope it will merge without major problems. If not, please come back to me for fixing.

negativeExponent commented 4 years ago

https://hastebin.com/yevojizexo.pl

irixxxx commented 4 years ago

The picodrive libretro makefile only worked for arm architectures. I have committed a fix for this. Please pull and try again.

On Thu, Jul 2, 2020 at 10:15 AM negativeExponent notifications@github.com wrote:

https://hastebin.com/yevojizexo.pl

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/libretro/picodrive/pull/124#issuecomment-652859641, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHR2L4TAR4PSQ4DCKLAKD2LRZQ635ANCNFSM4OOCOM4A .

inactive123 commented 4 years ago

Still seems to be plenty of conflicts. Can you attempt to rebase this?

irixxxx commented 4 years ago

I'm no real git[hub] buff, so before I deal damage somewhere and/or do superfluous work, would you please provide me with an outline of what needs to be done here? Everything I can think of would involve forking libretro/picodrive and rebasing irixxxx/picodrive into that fork, and that has implications regarding my workflow and my PR to notaz (and AFAICS would require a new PR), hence I am not sure this is what you have in mind. I'm quite sure I'm overlooking something here?

irixxxx commented 4 years ago

To further this somehow: I now have 2 version of libretro/picodrive checked out. In the 1st I did a "git pull" from my repo and solved the merge conflicts. I could send the output of "git diff" after the successful merge, but before commiting the merge result, if anyone needs this. The 2nd is the result of a "git pull --rebase" from my repo. I solved the conflicts in the same way, hence the resulting source code is the same in both cases. However, I cannot push this somewhere since this clone has no upstream. I checked that both the standalone binary of picodrive as well as the libretro shard object are basically working. Is any of this helpful for you?

inactive123 commented 4 years ago

Now I'm extra confused, can't you just send us a URL to a repo / branch that works? We can go from there.

hizzlekizzle commented 4 years ago

@irixxxx if you have the conflicts resolved in your local branch, you can force-push up to your own fork (the one that's being referenced here in this PR) and then those changes should get picked up here in this same PR

irixxxx commented 4 years ago

Hmm, after some testing I have the impression that just force pushing this would sever my PR to notaz, which isn't what I really want. However, have a look at the irixxxx/picodrive-libretro repo. It contains irixxxx/picodrive rebased onto libretro/picodrive. If this suits you, I would suggest closing this PR and reopening a new one on that repo.

hizzlekizzle commented 4 years ago

I have the impression that just force pushing this would sever my PR to notaz

ooh, yeah, that's possible. Ok, check out #125 and see if that gets everything. I used my own fork/account as an intermediary.

irixxxx commented 4 years ago

Seems to be OK. I'm just a bit confused why you duplicated the picodrive-libretro repo. What's the procedure for fixing bugs? To which repository should I do further PRs?

hizzlekizzle commented 4 years ago

I duplicated it because you can't (easily?) do PRs in github without a repo being a child-fork of the target repo. That is, if you try to open a PR from your picodrive-libretro repo, it won't give this one as an option because it doesn't know they're related.

So, I made a child-fork of this repo under my personal account, rebased against your parentless repo to get the commits, pushed the rebase up to the new child-fork and then was able to make the PR to this parent repo through github.

I could have just pushed it directly into this repo, since I have permissions to it, but I prefer to get more eyes than mine on things, especially on important repos like this one.

Moving forward, you can make PRs to this one or, if there are conflicts again, you can push them to your picodrive-libretro repo and I can do this same hokey-pokey if necessary.

irixxxx commented 4 years ago

Ah ok, that makes sense. I did this because I couldn't fork - GitHub doesn't allow forking if there's already a repo with the same name, and I thought if I set the remote url accordingly GitHub will adapt. Of course it doesn't - remote url aren't pushed :-/

So, I'm going to close #124.

On Sun, 5 Jul 2020, 23:47 hizzlekizzle, notifications@github.com wrote:

I duplicated it because you can't (easily?) do PRs in github without a repo being a child-fork of the target repo. That is, if you try to open a PR from your picodrive-libretro repo, it won't give this one as an option because it doesn't know they're related.

So, I made a child-fork of this repo under my personal account, rebased against your parentless repo to get the commits, pushed the rebase up to the new child-fork and then was able to make the PR to this parent repo through github.

I could have just pushed it directly into this repo, since I have permissions to it, but I prefer to get more eyes than mine on things, especially on important repos like this one.

Moving forward, you can make PRs to this one or, if there are conflicts again, you can push them to your picodrive-libretro repo and I can do this same hokey-pokey if necessary.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/libretro/picodrive/pull/124#issuecomment-653943130, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHR2L4XSTROV3IDAMDZ35S3R2DYFRANCNFSM4OOCOM4A .

hizzlekizzle commented 4 years ago

Yeah, it's a recurring hassle for us and I'm sure many others. I think it's also a bummer that you can't have multiple forks of the same parent repo under the same account.

I know you're supposed to use branches for that, but situations like this one, where you have two divergent forks that you want to PR to both, throw a wrench into that.

Ntemis commented 4 years ago

On batocera we merged both repos and we created this one https://github.com/rtissera/picodrive Works beautifully

irixxxx commented 4 years ago

On batocera we merged both repos and we created this one https://github.com/rtissera/picodrive Works beautifully

No problem in merging notaz's repo. It's just if I take over libretro changes into my repo I can't PR that anymore to notaz.

Ntemis commented 4 years ago

What? thats why branches exist. Keep a branch clean with only your changes and that should do the trick

irixxxx commented 4 years ago

@Ntemis I'm really curious about this. I've racked my brain, but I can't really think of a viable solution with branches. Maybe I'm just too shortsighted, how would you set up your branches in a way that you can PR the same commits to 2 divergent upstreams? I reckon I can either have my commits in a way that I can PR to notaz, or PR to libretro, but I can't see a way to safely PR to both. I'm quite eager to learn this, though.

Ntemis commented 4 years ago

can you come to discord #lakkatv channel on Retroarch? My Nick is Demetris. ping me up