TPR Posted October 18, 2018 Share Posted October 18, 2018 So I think I might have got it working.... ; ----------------------------------------------------------------------------------------- map 0 ; ; ----------------------------------------------------------------------------------------- ; 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_03 PD0L_KPE JS0_BTN_00 PD0L_KP1 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 JS0_BTN_10 PSH0 In this config, as soon as I release BTN_10 it goes back to map 0 1 Quote Link to comment Share on other sites More sharing options...
mr_me Posted October 18, 2018 Share Posted October 18, 2018 (edited) Yes, you needed another push action in MAP 3. Although the documentation would have you put the exact same line in MAP 3. JS0_BTN_10 PSH3 I guess it doesn't matter since it's popping back to the previous map either way. Edited October 18, 2018 by mr_me Quote Link to comment Share on other sites More sharing options...
TPR Posted October 18, 2018 Share Posted October 18, 2018 Yep! That all worked out! Thank you for that! For the first time on my Pi I have all 10 keypad buttons mapped to a control pad! 1 Quote Link to comment Share on other sites More sharing options...
intvnut Posted October 18, 2018 Share Posted October 18, 2018 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? OK, this is counterintuitive: You need to map JS0_BTN_10 in both MAP 0 and MAP 3. The button-release event will get processed when you're in map 3, and will use whatever binding you have on JS0_BTN_10 in map 3. . ; ----------------------------------------------------------------------------------------- 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 JS0_BTN_10 PSH3 ; <--- add this . Can you post an example on how to set the flag ... I'm nothing more than a hack over here I don't know the process for adding flags with respect to any of the various front-ends, since I don't use them. However, if you can find where the flags for jzIntv are specified, you can add the flag -b10 or -b20 to the list of flags. 10 means "add a 10% border around the window", while 20 means "add a 20% border". You can try other sizes as well. Now, if the output display has to be a particular resolution to display properly on your TV, then we have to bust out some math, and provide a second flag to force jzIntv's resolution. 1 Quote Link to comment Share on other sites More sharing options...
mr_me Posted October 18, 2018 Share Posted October 18, 2018 (edited) With retropie I think you'll find the command to launch jzintv at the location below. Just put the switch anywhere after the jzintv command. Separate all switches with spaces. /opt/retropie/configs/intellivision/emulators.cfg Edited October 18, 2018 by mr_me 1 Quote Link to comment Share on other sites More sharing options...
dalves Posted October 24, 2018 Author Share Posted October 24, 2018 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. 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 I am interested to try this, but wondering if there is a specific place I need to enter the -b flag in the retropie config I'm using. Below is what I currently have. I didn't know if I would add it between the -z1 and -p? jzintv = "/opt/retropie/emulators/jzintv/bin/jzintv -z1 -p /home/pi/RetroPie/BIOS -q %ROM%" default = "jzintv" 1 Quote Link to comment Share on other sites More sharing options...
mr_me Posted October 24, 2018 Share Posted October 24, 2018 The order of the switches don't matter. You could even put it after the rom filename. 1 Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted October 24, 2018 Share Posted October 24, 2018 The order of the switches don't matter. You could even put it after the rom filename. That is true, but just to be extra thorough, I'll just mention that some of those switches take a parameter, like a path, etc.; and those need to be followed specifically by their parameters. The order of all the options themselves (whether parametized or not) is not important. Quote Link to comment Share on other sites More sharing options...
ColecoJoe Posted October 26, 2018 Share Posted October 26, 2018 When I add the -b10 or 20 flag non of my roms will open. This is what I have. jzintv="/opt/retropie/emulators/jzintv/bin/jzintv -v1 --kbdhackfile=/opt/retropie/emulators/jzintv/hackfile.cfg -f1 -q -z800x600 %ROM%" Quote Link to comment Share on other sites More sharing options...
mthompson Posted October 26, 2018 Share Posted October 26, 2018 When I add the -b10 or 20 flag non of my roms will open. This is what I have. jzintv="/opt/retropie/emulators/jzintv/bin/jzintv -v1 --kbdhackfile=/opt/retropie/emulators/jzintv/hackfile.cfg -f1 -q -z800x600 %ROM%" Make sure you are using a recent build of jzIntv that supports the -b flag. It was added in the last year, I think. 1 Quote Link to comment Share on other sites More sharing options...
ColecoJoe Posted October 26, 2018 Share Posted October 26, 2018 Make sure you are using a recent build of jzIntv that supports the -b flag. It was added in the last year, I think. Ahh, that makes sense. I'm using a Byte Knight flashback. Quote Link to comment Share on other sites More sharing options...
pimpmaul69 Posted October 26, 2018 Share Posted October 26, 2018 Ahh, that makes sense. I'm using a Byte Knight flashback. retropie does not i stall the latest version either. Download the new one from jzintvs website. To install on the pi you need to have root user permissions as the /opt/retropie/emulators/jzintv/ folder and its contents belong to user root and not user pi. Then you need to use a program like winscp to put it on the pi. Quote Link to comment Share on other sites More sharing options...
dalves Posted November 4, 2018 Author Share Posted November 4, 2018 (edited) So I upgraded the old version of jzintv that was on my Raspberry Pi with the newest Linux version from the website. The -b setting looks great and it now looks like what I am used to seeing with Intellivision games. That said, all the games load and play great with the exception of the Intellivoice games and Space Patrol. With the updated jzintv files, they won't run. If I use the older jzintv files, the intellivoice games and Space Patrol work perfectly. I'm trying to figure out what I may be missing with the upgrade. Edited November 4, 2018 by dalves Quote Link to comment Share on other sites More sharing options...
mr_me Posted November 4, 2018 Share Posted November 4, 2018 (edited) I can't imagine anything missing. Even if intellivoice was disabled intellivoice games would still run. Space Patrol and jzintv were written by the same guy. One thing to check with linux systems is that any rom cfg file extensions are lowercase. Test with the old jzintv executable, then test with the new executable without the /b switch. Did you make any other changes to the command other than the /b switch. Maybe post the contents of your intellivision/emulators.cfg file. Ideally we'd want to see the jzintv error message. Edited November 4, 2018 by mr_me Quote Link to comment Share on other sites More sharing options...
Byte Knight Posted November 4, 2018 Share Posted November 4, 2018 So I upgraded the old version of jzintv that was on my Raspberry Pi with the newest Linux version from the website. The -b setting looks great and it now looks like what I am used to seeing with Intellivision games. That said, all the games load and play great with the exception of the Intellivoice games and Space Patrol. With the updated jzintv files, they won't run. If I use the older jzintv files, the intellivoice games and Space Patrol work perfectly. I'm trying to figure out what I may be missing with the upgrade. I noticed that the Intellivoice games launch in ECS mode for some reason with the newer version. My guess is that you don't have the ECS.BIN file and so it won't run. Try adding "-s0" to your command line to turn off ECS. 1 Quote Link to comment Share on other sites More sharing options...
mr_me Posted November 4, 2018 Share Posted November 4, 2018 (edited) Byte Night is correct. It looks like the intellivoice ecs games bug started in 2018 but the Space Patrol ecs bug started in late 2017. The bug is likely with an internal games database in jzintv rather than the program. Edited November 4, 2018 by mr_me Quote Link to comment Share on other sites More sharing options...
dalves Posted November 5, 2018 Author Share Posted November 5, 2018 I feel I've almost got it... When I added "-s0" to the command line, then none of my Intellivision ROMS would launch. I found the ecs.bin file on my computer and added it to my Raspberry Pi. Now my Intellivision ROMS work. I removed the "-s0" line and the Intellivoice games launch in ESC mode. If I add the "-s0" back to the command line, the games now load directly. Space Patrol works fine, and the Intellivoice games launch. However none of the Intellivoice games have the Intellivoice voices. There is still sound in those games, but it's missing the voices. I do have the "exec.bin, grom.bin, ivoice.bin, and ecs.bin in the Retropie BIOS folder. Just as a heads up, below is the config lines I currently have. jzintv = "/opt/retropie/emulators/jzintv/bin/jzintv -z1 -b10 -p /home/pi/RetroPie/BIOS -q %ROM%"default = "jzintv" Quote Link to comment Share on other sites More sharing options...
mr_me Posted November 5, 2018 Share Posted November 5, 2018 (edited) Add the -v1 switch; that turns on the intellivoice. Looks like jzintv is not correctly identifying these rom files as intellivoice rom files. The switch would be needed for any new intellivoice games that comes out anyway. The ivoice.bin file isn't used by jzintv. Edited November 5, 2018 by mr_me Quote Link to comment Share on other sites More sharing options...
+intvsteve Posted November 5, 2018 Share Posted November 5, 2018 Newer versions of the tools are doing a lot more work with ROM metadata picked up from the .cfg files. I haven't looked at how jzintv is interpreting it and taking action based on it. From what I gather, just doing the "ECS presence detect" in IntyBASIC programs may result in adding 'ecs = 1' to the [vars] section of the .cfg file produced by as1600. That means 'ECS is required'. When bin2rom runs, that metadata is preserved in the .rom file. The recent updates to metadata features (starting in January) expand the notion of some of the settings: ecs = 1 => ecs is REQUIRED ecs = 0 => ecs is DO NOT CARE (TOLERATES) The newer, preferred settings would be (I think...): ecs_compat = 0 => INCOMPATIBLE ecs_compat = 1 -> DO NOT CARE (TOLERATES) ecs_compat = 2 => ENHANCES (e.g. Space Patrol gets 6-CH sound, similar for Deep Zone) ecs_compat = 3 => REQUIRED (program will not function without ECS) There is a similar mapping for Intellivoice, though voice = 1 should map to 'ENHANCES' -- I don't think there's a "REQUIRED" mapping. Not as familiar w/ the Ultimate Flashback setup - mine's still a WIP at the moment, though it's using a pretty new build of jzintv as well. So - you may be able to alter the .cfg files for the games that are causing trouble, too. If you have .rom files, then you'd have to do a rom2bin -> edit .cfg -> bin2rom round trip with the newer versions of those tools. Quote Link to comment Share on other sites More sharing options...
Walter Ives Posted December 3, 2022 Share Posted December 3, 2022 On 10/15/2018 at 11:36 AM, mr_me said: Some cartridges have expanded borders even if it doesn't make use of scrolling; not sure why. Use your debugger to turn off border extension in the universal data block and see. On 10/15/2018 at 11:36 AM, mr_me said: Space Armada might be using horizonal scrolling to animate the armada. You just might be right about that. But if that's the case, how did Brooks keep the bunkers and the score from scrolling with the aliens? Magic! On 10/15/2018 at 1:12 PM, mr_me said: 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. Connect your Real Intellivision to a Real Man's Television Set made with vacuum tubes. That set will have horizontal and vertical position controls—use them to center your border-extended picture. Having established that, get Joe to fix his emulator to either (a) include player-operable picture positioning controls or, better yet, (b) center the picture automatically when borders are extended. Find comfort and justification in the certain knowledge that's what Harrower and Maine expected users of the day would do. 1 Quote Link to comment Share on other sites More sharing options...
mr_me Posted December 6, 2022 Share Posted December 6, 2022 On 12/3/2022 at 8:11 AM, Walter Ives said: You just might be right about that. But if that's the case, how did Brooks keep the bunkers and the score from scrolling with the aliens? Magic! Not magic. There's no score displayed while the Aliens are moving. The three bunkers look like three sprites stretched 2x horizontally, they could move in the opposite direction of the background to appear stationary. That's if it was done that way. On 12/3/2022 at 8:11 AM, Walter Ives said: Connect your Real Intellivision to a Real Man's Television Set made with vacuum tubes. That set will have horizontal and vertical position controls—use them to center your border-extended picture. Having established that, get Joe to fix his emulator to either (a) include player-operable picture positioning controls or, better yet, (b) center the picture automatically when borders are extended. Find comfort and justification in the certain knowledge that's what Harrower and Maine expected users of the day would do. Is this a serious comment, that the engineers at GI expected users to adjust the horisontal hold on their TV to compensate for cartridges that use or don't use expanded borders. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted December 6, 2022 Share Posted December 6, 2022 (edited) 1 hour ago, mr_me said: Not magic. There's no score displayed while the Aliens are moving. The three bunkers look like three sprites stretched 2x horizontally, they could move in the opposite direction of the background to appear stationary. That's if it was done that way. I think Mr. Ives was being cheeky in response to your speculation about the implementation. I think we can easily determine how it was done by mere observation and deduction, as you (and others) have already done. If I were to take a stab at guessing why the left border is extended on some games that do not scroll, I would submit that it's probably to: cover sprite on-screen ingress and egress transitions, when the logical object is larger than a single MOB horizontally; cover Color Stack advance transitions at the start of a line. reduce the effective screen width by exactly one column so that the remaining space could be filled with whatever graphical elements fit in GRAM, while hiding the fact that there is not enough to fill the entire screen. Christmas Carol uses horizontal delay and the left border on some game phases for precisely those three reasons. For what it's worth, on that third reason, Christmas Carol also shifts the horizontal delay when extending the border on the left side, in order to center the screen and make it look like the artwork fits the entire display area. It's the little details that count. *shrug* 1 hour ago, mr_me said: Is this a serious comment, that the engineers at GI expected users to adjust the horisontal hold on their TV to compensate for cartridges that use or don't use expanded borders. Why not? I recall doing that back then on numerous occasions, not only for the Intellivision. As I recall, tweaking the horizontal and vertical positions, and the color balance, were all de rigueur on color television sets, so it does not surprise me at all that it was part of the design and engineering assumptions. *shrug* dZ. Edited December 6, 2022 by DZ-Jay 2 Quote Link to comment Share on other sites More sharing options...
mr_me Posted December 6, 2022 Share Posted December 6, 2022 (edited) Yes, I think when the sprite is stretched 2x horizontally it will interfere with smooth entries and exits on the left side. Could make a difference in a game like Shark Shark. Edit: Regarding centering the playfield. The playfield shifting off-center in between extended and non-extended borders is more pronounced in Jzintv because the default borders are so thin. Once thicker borders are added as it is with real hardware, the off-centering is less noticeable. The GI engineers made sure the playfield fit either way on old TVs. I was imagining someone adjusting the horizontal hold every time they changed cartridges, which of course isn't necessary. Edited December 6, 2022 by mr_me 1 Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted December 6, 2022 Share Posted December 6, 2022 3 hours ago, mr_me said: Yes, I think when the sprite is stretched 2x horizontally it will interfere with smooth entries and exits on the left side. Could make a difference in a game like Shark Shark. Edit: Regarding centering the playfield. The playfield shifting off-center in between extended and non-extended borders is more pronounced in Jzintv because the default borders are so thin. Once thicker borders are added as it is with real hardware, the off-centering is less noticeable. The GI engineers made sure the playfield fit either way on old TVs. I was imagining someone adjusting the horizontal hold every time they changed cartridges, which of course isn't necessary. I think the positioning controls are different from the vertical and horizontal hold controls. The former aligns the field on the surface of the display, while the latter is to synchronize the oscillator that controls the activation of the beam. At least, I think that’s how it is … dZ. Quote Link to comment Share on other sites More sharing options...
mr_me Posted December 6, 2022 Share Posted December 6, 2022 Actually, the old TV didn't have a horizontal anything knob, only one vertical hold knob. I remember taking the back cover off trying to find more knobs with no success. The Intellivision playfield was stuck where it was. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.