Mik's Arcade Posted April 7, 2021 Share Posted April 7, 2021 (edited) Hi all - This should be an easy one to answer. I've searched the forum and also looked in all the jzintv documents and example folders and cant find this answer. I'm programming on a standard windows laptop with a standard keyboard and number pad. I don't have controllers plugged in or anything. How can I figure out how jzintv is interpreting anything I hit on my keyboard. I've looked for test programs, a configuration file or a mapping document and can't find anything. Obviously, my arrow keys clearly trigger the controller UP, DOWN, LEFT and RIGHT of the disc, and I think CRTL and SHIFT trigger the side buttons. I don't seem to have anything on my keyboard to trigger the intellivision buttons 0-9, which I was hoping to use my numeric pad for. It's hard to test my code when I cannot simulator the button press...lol Can somehow educate me as to how this witchcraft works? This is a pain on my Raspberry Pi build, too. I have to map a button which calls up a virtual controller and then go from there. thanks in advance, and sorry I was too dumb to find this topic which I am sure has been brought up before. Oscar's next book should be : Troubleshooting Intybasic for Dummies Edited April 7, 2021 by Mik's Arcade Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted April 7, 2021 Share Posted April 7, 2021 The documentation of jzIntv describes the various key maps available. If you are using the IntyBASIC SDK, you can find this in the folder "Documents/Tech/jzintv.txt". According to that file, the default mapping is: Once in the game, jzIntv uses the following key bindings on most platforms: Function/Special keys, all maps: F1 Quit F4 Break into debugger F5 Switch to keymap 0 (default keymap) F6 Switch to keymap 1 (left controller only for 1 player games) F7 Switch to keymap 2 (ECS keyboard keymap) F8 Shift to keymap 3 while held (command keys) F9 Toggle fullscreen/windowed F10 Toggle movie recording F11 Take screen shot F12 Reset emulator Pause Pause the emulator PgUp Increase volume PgDn Decrease volume Numeric Keypad, maps 0 and 1 1-9 Left controller 1 - 9 0 Left controller Clear . Left controller 0 Enter Left controller Enter Main Keyboard, map 0. (Map 1 just moves right controller mappings to left.) 0-9 Right controller 0 - 9 - Right controller Clear = Right controller Enter Left Shift Right controller top action buttons Left Alt Right controller lower left action button Left Control Right controller lower right action button Right Shift Left controller top action buttons Right Alt Left controller lower left action button Right Control Left controller lower right action button Up Arrow Left controller disc up Down Arrow Left controller disc down Left Arrow Left controller disc left Right Arrow Left controller disc right Fine-grain directional pad inputs: U I O \ | / \|/ J --+-- K Left controller disc /|\ / | \ N M , W E R \ | / \|/ S --+-- D Right controller disc /|\ / | \ Z X C Quote Link to comment Share on other sites More sharing options...
Mik's Arcade Posted April 7, 2021 Author Share Posted April 7, 2021 (edited) 44 minutes ago, DZ-Jay said: The documentation of jzIntv describes the various key maps available. If you are using the IntyBASIC SDK, you can find this in the folder "Documents/Tech/jzintv.txt". According to that file, the default mapping is: Once in the game, jzIntv uses the following key bindings on most platforms: Function/Special keys, all maps: F1 Quit F4 Break into debugger F5 Switch to keymap 0 (default keymap) F6 Switch to keymap 1 (left controller only for 1 player games) F7 Switch to keymap 2 (ECS keyboard keymap) F8 Shift to keymap 3 while held (command keys) F9 Toggle fullscreen/windowed F10 Toggle movie recording F11 Take screen shot F12 Reset emulator Pause Pause the emulator PgUp Increase volume PgDn Decrease volume Numeric Keypad, maps 0 and 1 1-9 Left controller 1 - 9 0 Left controller Clear . Left controller 0 Enter Left controller Enter Main Keyboard, map 0. (Map 1 just moves right controller mappings to left.) 0-9 Right controller 0 - 9 - Right controller Clear = Right controller Enter Left Shift Right controller top action buttons Left Alt Right controller lower left action button Left Control Right controller lower right action button Right Shift Left controller top action buttons Right Alt Left controller lower left action button Right Control Left controller lower right action button Up Arrow Left controller disc up Down Arrow Left controller disc down Left Arrow Left controller disc left Right Arrow Left controller disc right Fine-grain directional pad inputs: U I O \ | / \|/ J --+-- K Left controller disc /|\ / | \ N M , W E R \ | / \|/ S --+-- D Right controller disc /|\ / | \ Z X C as always, you are a lifesaver! I don't know how I missed this as I was rooting around this folder, too. I needed to switch to keymap 1 mode to get my numeric keypad to register 0-9 for a left controller my path was actually DOC/TECH. It's weird, some of the sample ASM files that came with jzintv have bad paths because the install didn't put the files in the right folders so I would get compile errors. I had to shuffle around the folders a bit to get them to work. thanks! I'm learning a something new every day now. Soon, I might actually know what I am doing. Right now, I'm THAT guy - the one who knows just enough to be dangerous....lol Edited April 7, 2021 by Mik's Arcade Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted April 7, 2021 Share Posted April 7, 2021 (edited) 45 minutes ago, Mik's Arcade said: as always, you are a lifesaver! I don't know how I missed this as I was rooting around this folder, too. I needed to switch to keymap 1 mode to get my numeric keypad to register 0-9 for a left controller my path was actually DOC/TECH. It's weird, some of the sample ASM files that came with jzintv have bad paths because the install didn't put the files in the right folders so I would get compile errors. I had to shuffle around the folders a bit to get them to work. thanks! I'm learning a something new every day now. Soon, I might actually know what I am doing. Right now, I'm THAT guy - the one who knows just enough to be dangerous....lol Are you using the IntyBASIC SDK? If so, for Windows or for Mac? In the SDK, documents folder should be "Documents," and all the sources should have the proper paths. I built all the sample files before building the distribution packages. Or is it that you are tall king about the SDK-1600, which is the distribution package of jzIntv and the assembler? Edited April 7, 2021 by DZ-Jay Quote Link to comment Share on other sites More sharing options...
Mik's Arcade Posted April 8, 2021 Author Share Posted April 8, 2021 umm....this is what I downloaded: jzintv-20200712-win32-sdl2.zip The documents folder is called Doc I followed the directions from Oscar's first book. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted April 8, 2021 Share Posted April 8, 2021 (edited) 45 minutes ago, Mik's Arcade said: umm....this is what I downloaded: jzintv-20200712-win32-sdl2.zip The documents folder is called Doc I followed the directions from Oscar's first book. Ah. I was talking about this. With that, you don't need to follow any of those instructions. It comes with an installer that sets up everything for you, including the emulator and assembler. No need to learn long command-lines incantations either. dZ. Edited April 8, 2021 by DZ-Jay Quote Link to comment Share on other sites More sharing options...
Mik's Arcade Posted April 8, 2021 Author Share Posted April 8, 2021 (edited) I reckon I should go ahead and install it!! thanks EDIT: OMG...the SDK is so much more organized (obviously). Once I get my stuff up and running, I'm going to clean up the other install I did..... thanks again Edited April 8, 2021 by Mik's Arcade Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted April 8, 2021 Share Posted April 8, 2021 7 hours ago, Mik's Arcade said: I reckon I should go ahead and install it!! thanks EDIT: OMG...the SDK is so much more organized (obviously). Once I get my stuff up and running, I'm going to clean up the other install I did..... thanks again Check it out and see if it works for you, it may not be for everyone. It does try to keep things simple and organized for you, but some people prefer to do things in their own way. It should help anybody who is getting started by taking care of most of the complicated things so you can focus on the fun part of writing games. Let me know if you have any questions or problems. dZ. 1 Quote Link to comment Share on other sites More sharing options...
Mik's Arcade Posted April 8, 2021 Author Share Posted April 8, 2021 6 hours ago, DZ-Jay said: Check it out and see if it works for you, it may not be for everyone. It does try to keep things simple and organized for you, but some people prefer to do things in their own way. It should help anybody who is getting started by taking care of most of the complicated things so you can focus on the fun part of writing games. Let me know if you have any questions or problems. dZ. I'm too disorganized doing things my own way, so the SDK is perfect. Plus, who wouldn't want to type in less at the command line? LOL. The documentation is great and very easy to follow. I've already cleaned up my old setup and have a new 'project' for my game. I love how it keeps everything in their respective folders and I don't have to run intybasic and as1600 separately. Plus, this also helps me understand the process more too. Win Win. I made a fancy title screen for my game but am totally fine using the default retro screen for future projects. I made the fancy screen just to figure out how to use IntyColor. Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted April 8, 2021 Share Posted April 8, 2021 1 minute ago, Mik's Arcade said: I'm too disorganized doing things my own way, so the SDK is perfect. Plus, who wouldn't want to type in less at the command line? LOL. The documentation is great and very easy to follow. I've already cleaned up my old setup and have a new 'project' for my game. I love how it keeps everything in their respective folders and I don't have to run intybasic and as1600 separately. Plus, this also helps me understand the process more too. Win Win. I made a fancy title screen for my game but am totally fine using the default retro screen for future projects. I made the fancy screen just to figure out how to use IntyColor. Hi, @Mik's Arcade, That is great to hear. If you have any problems, or suggestions for improvements, make sure to post them in the SDK thread. By the way, the default title screen was to have a sort of base program to start with in a new project. The idea was that creating a new project generates a perfectly correct small program that you can run and use, to serve as the skeleton of your own project: it includes a default title screen which waits for any key press, and an infinite loop so that the program doesn't run through. That last part is no longer necessary because IntyBASIC takes care of that now, but in the past, if you didn't stop it somehow, your program would just run through all its statements and then halt the CPU when it ran out of them. You are encouraged to change the default title screen or to replace it entirely. You can suppress the inclusion of the default title screen with the option "-n" (no-title) when invoking INTYNEW. Check out the documentation on the tools for more details. -dZ. Quote Link to comment Share on other sites More sharing options...
Mik's Arcade Posted April 8, 2021 Author Share Posted April 8, 2021 2 minutes ago, DZ-Jay said: Hi, @Mik's Arcade, That is great to hear. If you have any problems, or suggestions for improvements, make sure to post them in the SDK thread. By the way, the default title screen was to have a sort of base program to start with in a new project. The idea was that creating a new project generates a perfectly correct small program that you can run and use, to serve as the skeleton of your own project: it includes a default title screen which waits for any key press, and an infinite loop so that the program doesn't run through. That last part is no longer necessary because IntyBASIC takes care of that now, but in the past, if you didn't stop it somehow, your program would just run through all its statements and then halt the CPU when it ran out of them. You are encouraged to change the default title screen or to replace it entirely. You can suppress the inclusion of the default title screen with the option "-n" (no-title) when invoking INTYNEW. Check out the documentation on the tools for more details. -dZ. oh, I know that...but I created my own crude template that serves a similar purpose. The SDK version is way better. When I created the project for my new game I used the option for no title since I already have it and just let it build out the folder structure. I believe in the "no need to reinvent the wheel" mantra. I leave that stuff to the pros. You guys are the best - creating tools for us who need things easier just because you can and want to help. I will take any and all tips, tricks, comments and criticism and humbly learn from it. I'm so gracious to be able to tinker around with Intellivision programming. Its not easy, but I'm having so much fun. I've gone totally retro when it comes to gaming. I mean, I still play some PS4, but I'm at a point now where I'd much rather hop on the bartop arcade machine that I built and play all the classics from the golden age of the arcades. There are so many classic games I want to make IntyBasic versions of. I also can't wait for the Amico. I preordered it as soon as I heard about it, and that lead me to this forum. And once I saw the section on programming, I ordered Oscar's book right away. 1 Quote Link to comment Share on other sites More sharing options...
+DZ-Jay Posted April 8, 2021 Share Posted April 8, 2021 (edited) To be honest, @Mik's Arcade, I started the same way as you: I just wanted to tinker with making an Intellivision game and was really impressed with all the help I received from the experts. Like you, I had no idea what I was doing, nor where to begin. Back then there was no IntyBASIC, so things were a bit different, but there were still many tools, utility libraries, and design patterns that the veterans graciously offered. If I've attained enough knowledge and experience to be able to help others now, it is only because of the generous assistance I received from all those veterans, who held my hand and guided me throughout. I am just paying it forward in whichever humble way I can. -dZ. Edited April 8, 2021 by DZ-Jay Quote Link to comment Share on other sites More sharing options...
Mik's Arcade Posted April 8, 2021 Author Share Posted April 8, 2021 3 minutes ago, DZ-Jay said: To be honest, @Mik's Arcade, I started the same way as you: I just wanted to tinker with making an Intellivision game and was really impressed with all the help I received from the experts. Like you, I had no idea what I was doing, nor where to begin. Back then there was no IntyBASIC, so things were a bit different, but there were still many tools, utility libraries, and design patterns that the veterans graciously offered. If I've attained enough knowledge and experience to be able to help others now, it is only because of the generous assistance I received from all those veterans, who held my hand and guided me throughout. I am just paying it forward in whichever humble way I can. -dZ. that's awesome...and the reason why this community thrives. Perhaps someday I'll know enough to be helpful to the new users. Every day I'm learning something new. Like the color stack mode. I didn't quite "get it" until I tinkered with it. Now I kind of know how it works. Eventually, I'll come up with cool ways to use and abuse it. I actually wanted to be a computer programmer. The only award I won in high school was for BASIC programming. (I fell a couple of points shy on the Pascal award my senior year). Unfortunately, my math and physics were not strong enough and I went a different route in college - a decision I regret today. Now I am just a data analyst and pretty much just use SQL these days, but hey it still pays the bills. Now that my kids are older and have their own lives, I have more free time. A few years ago I got a converted Joust arcade cabinet that had 16 games on the board, All the Williams classics including my all time favorite - Defender. Unfortunately the wiring was done poorly and the cabinet wood was falling apart so I ditched it. Then I learned about the raspberry Pi and emulation. I'm so amazed at all these brilliant programmers who wanted to preserve all these forgotten about arcade machines and built emulation software. I don't consider it pirating software when all these companies abandoned these licenses. I got in on this at the perfect time because now the companies have caught on and are rereleasing everything, making it hard to find this stuff on the internet. I had such a successful time building up a catalog that I had to upgrade from a 32 gig to 64 gig. Really, I'm ready for another upgrade now...haha. I've got 20 systems on this thing now, but my coin-ops are the pride and joy. Then, having all these great games wasn't good enough...I still wanted that coin-op arcade experience. So, I ordered a build it yourself bartop machine from gameroomsolutions.com. Man, that was a chore but I did it! I wanted to have the classic Street Fighter 2 set up for 2 players with the 6 button controls. It took me 2 months, but I got it all up and running...did all the wiring myself...so hard. Replaying Intellivision games was just so awesome.....and now I am trying to make one. So funny, we might have noticed this before, but we are both in NC. Once COVID is over (I got my first shot this AM), I will be a frequent patron of the NODA brewery and bar scene.... take it easy, and thanks again for your help. I'm sure I will post a new topic soon when I get stumped making a scrolling screen and adding random events to it, or can't quite figure out how to properly calculate time.... 1 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.