Jump to content
IGNORED

Testing controller keys on a laptop


Recommended Posts

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 by Mik's Arcade
Link to comment
Share on other sites

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

 

Link to comment
Share on other sites

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 by Mik's Arcade
Link to comment
Share on other sites

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 by DZ-Jay
Link to comment
Share on other sites

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 by DZ-Jay
Link to comment
Share on other sites

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 by Mik's Arcade
Link to comment
Share on other sites

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.

  • Thanks 1
Link to comment
Share on other sites

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. 

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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.  

  • Like 1
Link to comment
Share on other sites

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 by DZ-Jay
Link to comment
Share on other sites

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....

  • Like 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...