Jump to content
dalves

JZINTV and Raspberry Pi

Recommended Posts

I didn't see a specific forum for this, so I figured I'd ask here. I have recently build a Raspberry Pi 3 and got a bunch of emulators running on it. I have JZINTV as my intellivision emulatior, and it works fine. However, on games that use a colored boarder, the border on the right side of the screen is cut in half. I never noticed this when using JZINTV on my computer, but since I still use MESS as my main emulator, it may be true there as well. When I asked about this on the Retropie forums,I was told this is a flaw in JZINTV. I'm just wondering if any one has noticed this before, and if it may be a screen setting issue.

 

Cut boarder

 

Thanks...

Edited by dalves

Share this post


Link to post
Share on other sites

Space Armada has an expanded left border, so it should always look bigger than the right border. Try Vectron or Frog Bog for comparision. Those cartridges don't have expanded borders.

 

Programmers expand the left borders for horizontal scrolling and the top border for vertical scrolling. Some cartridges have expanded borders even if it doesn't make use of scrolling; not sure why. Space Armada might be using horizonal scrolling to animate the armada.

Edited by mr_me

Share this post


Link to post
Share on other sites

Yeah mine is like that too but more severe than yours especially on Cloudy Mountain. And like you, on the computer it looks fine but on my retropie running through a CRT some of the games have alignment issues.

Edited by ColecoJoe

Share this post


Link to post
Share on other sites

AD&D (cloudy mountain) has an expanded left and top border. Like Space Armada the left border should be about eight intellivision pixels wider than the right border. If the borders are thin than the left border will look a lot thicker. If the borders are thick the eight pixel difference is less noticeable. Look at a cartridge that does not have expanded borders to check if there's an alignment issue.

  • Like 1

Share this post


Link to post
Share on other sites

A real intellivision shifts the picture to the left. Try a real cartridge that doesn't expand the left border on a real intellivision with crt and you'll see.

  • Like 1

Share this post


Link to post
Share on other sites

I will check various games tonight to check the extended scroll boarder. The thing that makes me wonder if it's that, is the games that show the border offset using JZINTV on my Raspberry Pi, have perfectly aligned borders when I use the same ROM in my MESS emulator. I will check, but my memory is that every game with a colored boarder used on my Raspberry Pi had the border offset.

  • Like 1

Share this post


Link to post
Share on other sites

If it helps (and if I remember to do it), I'll take a photo of test ROM I wrote where the user can toggle whether the left & top borders are extended or not. This way, you'll be able to compare before and after.

 

Going from memory (others may correct me), the Intellivision displays the screen slightly offset to the left normally and a bit more offset to the right when border extensions are turned on... at least as seen on a 1080p HDTV.

  • Like 1

Share this post


Link to post
Share on other sites

That's correct for emulation. There is a row of tiles at the top and a column of tiles on the left that are covered by the expanded border. If the remaining picture were centered than part of the top and left of the screen would be cut off for cartridges that don't expand the border. What's the emulator? Jzintv by default should have a thin border at the bottom.

 

With a real Intellivision, it use to annoy me that the picture was shifted to the left for cartridges that didn't expand the border. It's either one or the other.

 

Edit:

To make it more realistic on a crt television. You can thicken the border in jzintv and add some overscan to raspbian.

Edited by mr_me
  • Like 1

Share this post


Link to post
Share on other sites

That's correct for emulation. There is a row of tiles at the top and a column of tiles on the left that are covered by the expanded border. If the remaining picture were centered than part of the top and left of the screen would be cut off for cartridges that don't expand the border. What's the emulator? Jzintv by default should have a thin border at the bottom.

 

With a real Intellivision, it use to annoy me that the picture was shifted to the left for cartridges that didn't expand the border. It's either one or the other.

 

I'm using jzintv here.

 

Man, I spent so much time trying to fix this in the config files when I was adjusting the retropie for CRT :) Thanks for the info!

 

I made a lot of changes to the config files so that's probably why it's not showing the bottom border. I suppose the fact that it's a 8" screen doesn't help :)

Edited by ColecoJoe

Share this post


Link to post
Share on other sites

As promised here are 2 photos of my test ROM running on a 1080p HD TV, which looks a little different than on a CRT from back in the day. Yes, the colors are garish; that is deliberate.

 

Side note: I had just thrown this ROM together a few days ago after reading Oscar's book "Programming Games for Intellivision" (purchase here)

 

 

No border extension

post-37124-0-11781100-1539749276_thumb.jpg

 

 

Both left and top borders extended

post-37124-0-26373700-1539749277_thumb.jpg

  • Like 3

Share this post


Link to post
Share on other sites

I have this same issue on my LCD screen as well. What makes emulation different that the original picture becomes shifted like this? Anything that can be tweaked or changed?

Share this post


Link to post
Share on other sites

I have this same issue on my LCD screen as well. What makes emulation different that the original picture becomes shifted like this? Anything that can be tweaked or changed?

Emulation centres the picture. A real intellivision shifts the picture left. In jzintv you can thicken the border on all sides with the -b switch; then you won't notice the difference in border size so much. In Raspbian you can adjust the overscan settings but that effects everything not just jzintv.

Share this post


Link to post
Share on other sites

If you look at my screenshot, that's as good as I could get it manipulating the overscan settings since like Mr_me said, it affects all games the same way. Other games with no borders look fine of course.

Share this post


Link to post
Share on other sites

You can tell jzIntv to add a thicker border all around to make the effect less noticeable with the -b flag. (I see mr_me mentioned that a few minutes ago as well.) Something in the range -b10 to -b20 works pretty well.

 

 

Emulation centres the picture. A real intellivision shifts the picture left. In jzintv you can thicken the border on all sides with the -b switch; then you won't notice the difference in border size so much. In Raspbian you can adjust the overscan settings but that effects everything not just jzintv.

 

 

I don't think it's correct to say that the TV shifts the image to the left. Rather, it's just less noticeable on a TV due to the larger border displayed there. If I toggle the left border on/off the rest of the image stays put

Share this post


Link to post
Share on other sites

Speaking of the Pi - Is there a way to re-map the buttons so that two buttons pressed equals a keypad button?

 

For example, if I'm using a SNES controller and I want to map:

 

L+A = 1

L+B = 2

L+X = 3

L+Y = 4

 

Etc. etc.... Last I checked I thought that couldn't be done but it's been quite some time since I've looked into this.

  • Like 1

Share this post


Link to post
Share on other sites

With jzintv you can designate one button to act as a "shift" and assign secondary actions to all other buttons.

 

If you have an xbox or playstation type controller you can map all buttons without shifting.

  • Like 1

Share this post


Link to post
Share on other sites

With jzintv you can designate one button to act as a "shift" and assign secondary actions to all other buttons.

 

If you have an xbox or playstation type controller you can map all buttons without shifting.

 

How exactly is that done? For example here is my current hackfile:

 

How do I assign a button to be the "shift" key?

 

JS0_BTN_16 QUIT
JS0_BTN_13 PD0L_A_T
JS0_BTN_15 PD0L_A_L
JS0_BTN_14 PD0L_A_R
JS0_BTN_00 PD0L_KP1
JS0_BTN_12 PD0L_KP2
JS0_BTN_10 PD0L_KP3
JS0_BTN_11 PD0L_KP4
JS0_BTN_08 PD0L_KP5
JS0_BTN_09 PD0L_KP6
JS0_BTN_20 PD0L_KP7
JS0_BTN_20 PD0L_KP8
JS0_BTN_01 PD0L_KP9
JS0_BTN_20 PD0L_KPC
JS0_BTN_02 PD0L_KP0
JS0_BTN_03 PD0L_KPE

Share this post


Link to post
Share on other sites

Assuming that's all under MAP 0. Add this line in there.

 

JS0_BTN_x PSH3

 

Where x is the button number to act as shift. Then create a MAP 3 section and add all your shifted mappings there.

  • Like 1

Share this post


Link to post
Share on other sites

Assuming that's all under MAP 0. Add this line in there.

 

JS0_BTN_x PSH3

 

Where x is the button number to act as shift. Then create a MAP 3 section and add all your shifted mappings there.

 

Looks like I only have a MAP 0.

 

; -----------------------------------------------------------------------------------------
map 0 ; activate with F5
; -----------------------------------------------------------------------------------------
; map the Keyboard arrow keys
UP KEYB_UP
DOWN KEYB_DOWN
RIGHT KEYB_RIGHT
LEFT KEYB_LEFT
; joystick #0 - left controller
JS0_BTN_16 QUIT
JS0_BTN_13 PD0L_A_T
JS0_BTN_15 PD0L_A_L
JS0_BTN_14 PD0L_A_R
JS0_BTN_00 PD0L_KP1
JS0_BTN_12 PD0L_KP2
JS0_BTN_10 PD0L_KP3
JS0_BTN_11 PD0L_KP4
JS0_BTN_08 PD0L_KP5
JS0_BTN_09 PD0L_KP6
JS0_BTN_20 PD0L_KP7
JS0_BTN_20 PD0L_KP8
JS0_BTN_01 PD0L_KP9
JS0_BTN_20 PD0L_KPC
JS0_BTN_02 PD0L_KP0
JS0_BTN_03 PD0L_KPE
JS0_BTN_04 PD0L_J_N
JS0_BTN_05 PD0L_J_E
JS0_BTN_06 PD0L_J_S
JS0_BTN_07 PD0L_J_W
JS0_N PD0L_J_N
JS0_NNE PD0L_J_NNE
JS0_NE PD0L_J_NE
JS0_ENE PD0L_J_ENE
JS0_E PD0L_J_E
JS0_ESE PD0L_J_ESE
JS0_SE PD0L_J_SE
JS0_SSE PD0L_J_SSE
JS0_S PD0L_J_S
JS0_SSW PD0L_J_SSW
JS0_SW PD0L_J_SW
JS0_WSW PD0L_J_WSW
JS0_W PD0L_J_W
JS0_WNW PD0L_J_WNW
JS0_NW PD0L_J_NW
JS0_NNW PD0L_J_NNW

 

 

What would the MAP 3 look like?

Share this post


Link to post
Share on other sites

You can add the following to the end of your file.

 

MAP 3

JS0_BTN_00 RESET

 

Now when you hold the designated shift button and press the first controller button the game will reset.

Edited by mr_me

Share this post


Link to post
Share on other sites

You can tell jzIntv to add a thicker border all around to make the effect less noticeable with the -b flag. (I see mr_me mentioned that a few minutes ago as well.) Something in the range -b10 to -b20 works pretty well.

 

 

 

Can you post an example on how to set the flag ... I'm nothing more than a hack over here :)

Share this post


Link to post
Share on other sites

So I did a test....

 

; -----------------------------------------------------------------------------------------
map 0 ; activate with F5
; -----------------------------------------------------------------------------------------
; joystick #0 - left controller
JS0_BTN_13 PD0L_A_T
JS0_BTN_15 PD0L_A_L
JS0_BTN_14 PD0L_A_R
JS0_BTN_00 PD0L_KP1
JS0_BTN_03 PD0L_KPE
JS0_BTN_10 PSH3
; -----------------------------------------------------------------------------------------
map 3 ;
;
JS0_BTN_12 PD0L_KP4
JS0_BTN_13 PD0L_KP2
JS0_BTN_14 PD0L_KP3
JS0_BTN_15 PD0L_KP5
And it worked where if I hit BTN_10 + BTN_13 I got KP2 using the Zcontroller_test.
But then I would have to hit F5 on my keyboard to make BTN_13 be PD0L_A_T again.

Is there a way to only temporarily have that button mapped while I hold down BTN_10 and then it reverts back to map 0 when I release the button?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...