Author Topic: PC-FX homebrew development.  (Read 17544 times)

elmer

  • Hero Member
  • *****
  • Posts: 2153
Re: PC-FX homebrew development.
« Reply #150 on: March 13, 2016, 01:35:17 PM »
I can do replacement graphics for AGE's help file once it's translated, if that helps.

That would be nice!

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #151 on: March 13, 2016, 02:29:48 PM »
Well, here's the MpConv2 GUI pics in English at least...








nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #152 on: March 13, 2016, 03:07:36 PM »
For what it's worth, I am almost done translating the AGE application. The menus are done, but the thing has a large string table, primarily for the status bar, which I am handling now.

« Last Edit: March 13, 2016, 03:11:02 PM by The Old Rover »

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #153 on: March 13, 2016, 03:40:43 PM »
I accidentally broke one of the dialogs while editing... might take some time to fix, even though it's just the New Image one that I doubt anyone will use... still, can't leave it broken.

NightWolve

  • Hero Member
  • *****
  • Posts: 5277
Re: PC-FX homebrew development.
« Reply #154 on: March 13, 2016, 05:23:24 PM »
What is your resource editor of preference here BTW ? Too bad nobody found a stash of old tools like this for PC Engine... Kinda neat for anybody that would get serious with the PC-FX. I honestly don't care much for this platform, but have at it if you do!

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #155 on: March 13, 2016, 05:57:35 PM »
I am using Borland Resource Workshop 4.5 to do the resource editing... it's the only one I could find that actually works with 16 bit programs... pretty much everything else is for win32.

I've completed all of the strings I can actually see... it is not completely translated, and there is some text in the EXE itself that will also need translation at some point (xvi32 can handle this), but it's done enough to be useful. Of course, me being me, I decided to demo it with fine art... aka painted boobs. :P



Configured as a 256 color 7up tilemap. One thing that's rather cool about this program is that you can clone a window and then zoom the clone and apply a grid to it... any work you do on either the original or the clone (or many clones, for that matter) is applied to every window of that image. That's actually really friggin cool. Too bad this thing is seriously suckage for actual editing though.

So I put together the edited binary and uploaded it with a simple readme file. I's nearly 1AM and I'm tired but wanted to get this out tonight. Have at it. :)

http://www.frozenutopia.com/pcfx/age_e.7z

elmer

  • Hero Member
  • *****
  • Posts: 2153
Re: PC-FX homebrew development.
« Reply #156 on: March 14, 2016, 04:55:30 AM »
Too bad nobody found a stash of old tools like this for PC Engine.

I take it that you're overlooking that the PC-FX contains 2 of the PC Engine's VDC chips, and so has an identical sprite and tile format for the sprites and those background layers.

So, the AGE editor applies directly to the PC Engine, it just also handles the PC-FX's extra formats, too.


So I put together the edited binary and uploaded it with a simple readme file. I's nearly 1AM and I'm tired but wanted to get this out tonight. Have at it. :)

Thanks! It's really nice having someone else interested in trying to open-up the PC-FX for development!

Gredler

  • Guest
Re: PC-FX homebrew development.
« Reply #157 on: March 14, 2016, 06:10:53 AM »
Too bad nobody found a stash of old tools like this for PC Engine.

I take it that you're overlooking that the PC-FX contains 2 of the PC Engine's VDC chips, and so has an identical sprite and tile format for the sprites and those background layers.

So, the AGE editor applies directly to the PC Engine, it just also handles the PC-FX's extra formats, too.


So I put together the edited binary and uploaded it with a simple readme file. I's nearly 1AM and I'm tired but wanted to get this out tonight. Have at it. :)

Thanks! It's really nice having someone else interested in trying to open-up the PC-FX for development!


Thanks for explaining this - I was completely unaware! If you guys want a artist guinea pig I'd be down to look into getting a machine setup to try this out.  :)

elmer

  • Hero Member
  • *****
  • Posts: 2153
Re: PC-FX homebrew development.
« Reply #158 on: March 16, 2016, 08:23:12 AM »
Thanks for explaining this - I was completely unaware! If you guys want a artist guinea pig I'd be down to look into getting a machine setup to try this out.  :)

Excellent, thanks!

Really, you can do everything in Mednafen for the most part, there's little need to buy a real PC-FX until you're actually "hooked".  :wink:

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #159 on: March 16, 2016, 09:08:42 AM »
Holy crap, I really was tired that night... I totally missed the "I's"... soooooooooo uncharacteristic of me to miss a typo so glaring.

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #160 on: March 16, 2016, 11:43:10 AM »
OK... from what I can tell... vsync should be "easy"... it looks like this is something on the 6261. Port 300h is the status port, and bit 15 indicates whether or not the screen is drawing. So, from this, I guess a "wait for vblank" routine would simply be a polling loop that buggers 300h until bit 15 is 0.

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #161 on: March 16, 2016, 04:57:52 PM »
So it appears liberis already does this, with the function eris_tetsu_is_displaying(). However, it seems rather useless. I check its value... if it's 1, I wait until it's 0, and if it's 0, I wait until it becomes 1 and then wait for it to become 0 again. Naturally, this doesn't work for shit, even though this is how this should actually work.

elmer

  • Hero Member
  • *****
  • Posts: 2153
Re: PC-FX homebrew development.
« Reply #162 on: March 16, 2016, 05:15:39 PM »
So it appears liberis already does this, with the function eris_tetsu_is_displaying(). However, it seems rather useless. I check its value... if it's 1, I wait until it's 0, and if it's 0, I wait until it becomes 1 and then wait for it to become 0 again. Naturally, this doesn't work for shit, even though this is how this should actually work.

It's working perfectly ... just as long as you understand that "disp" also goes to "0" during hblank as well as during vblank!  :wink:

If you want to do a wait loop like that, then you should probably be looking at the "raster count" instead.

The "proper" way to do it would be to look at a frame counter that gets incremented by the vblank-interrupt ... but I have no idea if liberis even hooks the interrupts.

****************

I've found out why newlib isn't working ... it's actually something to do with the code that's generated by the compiler's optimize-for-space settings.

For some reason it's generating an extra bogus stack-fixup instruction that's throwing off the stack alignment, and causing the code to get the wrong return address.

This isn't going to be a lot of fun to track down!  #-o


NightWolve

  • Hero Member
  • *****
  • Posts: 5277
Re: PC-FX homebrew development.
« Reply #163 on: March 17, 2016, 12:02:17 PM »
Too bad nobody found a stash of old tools like this for PC Engine.
I take it that you're overlooking that the PC-FX contains 2 of the PC Engine's VDC chips, and so has an identical sprite and tile format for the sprites and those background layers.

So, the AGE editor applies directly to the PC Engine, it just also handles the PC-FX's extra formats, too.

Cool, that's great to know, it should be noted in the ReadMe as it could be useful for PCE hacking.

nodtveidt

  • Guest
Re: PC-FX homebrew development.
« Reply #164 on: March 17, 2016, 12:11:40 PM »
OK so what I have done then is created two functions... one pauses the program until the raster line is below 1, and another that pauses the program until the raster line is above 0. Is there enough time in between these two points to do drawing and such, or am I better off just checking for 0 and skipping the second one?