Jump to content
IGNORED

anyone coding an Intellivision Emulator?


Recommended Posts

Hi.

 

While programming Intellivision games, I find it quite annoying to close the emulator and load the file again, to test my work.

 

So if you are programming an Intellivision Emualtor please add a "reload" rom file and reset function, Like the blue MSX have.

 

Please also dont block the file, since the compiler have to be able to write to the file. So what could be cool, would be an icon to reset the emualtor and an icon to reload the file (and reset) the emulator.

 

It could also be cool if the emulator have a "pause and resume" function :)

 

I primary use windows working with games and conversions.

 

 

  • Like 1
Link to comment
Share on other sites

Hi.

 

While programming Intellivision games, I find it quite annoying to close the emulator and load the file again, to test my work.

 

So if you are programming an Intellivision Emualtor please add a "reload" rom file and reset function, Like the blue MSX have.

 

Please also dont block the file, since the compiler have to be able to write to the file. So what could be cool, would be an icon to reset the emualtor and an icon to reload the file (and reset) the emulator.

 

It could also be cool if the emulator have a "pause and resume" function :)

 

I primary use windows working with games and conversions.

 

 

 

Hmmm... Are you using jzIntv? It's a purely programmable emulator, which can controlled by software. It does not currently have a "reload file" function since the file is essentially a memory image that is loaded at startup. However, your comments suggest that you may not be using the emulator in the most efficient way.

 

While programming, I treat jzIntv as a "debugger," meaning that it is part of my development environment. Sure, it is not really "integrated" into my environment in the same way that Visual Studio, X Code, and other IDEs are, but it forms part of my tool chain. I use a Mac, but I have done the same as below in Windows.

 

Typically, I have at least one Terminal window open (that would be a "Command Console" or a "DOS Console" in Windows). This is my main interface to the debugger. I create scripts to build and run my project, similar to what's available in the IntyBASIC SDK. If I'm working on a game (which I know is going to take me several months), I create project-specific scripts so that I don't have to write the command-line every single time, just "build.sh" or "dbug.sh" whenever I need to.

 

Also, during development, I always start jzIntv in debugger mode (with the "-d" command-line option). This allows me to set the stage for what I am going to test: enable watches, set breakpoints, enable CPU history recording, etc. jzIntv also supports the scripting of commands, which can be fed during start up. If I find myself testing the same portion over and over (which happens quite often), I would just create a debugger "script" with appropriate commands, such as "set a breakpoint here, set a watch there, run until this point, then display memory from here."

 

Using jzIntv this way, allows me to treat the Terminal/Command console as my environment, and the jzIntv debugger as merely one more command in it. That way, it never goes away, or has to be "reloaded." I just quit the debugger when I'm done with the session, compile, build, whatever, then re-run it -- all with simple scripts.

 

The development itself I do in a text editor with syntax highlighting. In Windows, I use EditPlus (which I've been carrying since sometime in the 1990s). In the Mac, I use TextMate. Both have "tool integration" APIs that allow me to invoke the scripts directly from the editor itself, using function keys. This makes it even easier (although I still prefer dealing with the console directly).

Perhaps you could share your workflow and environment to see what you do or need to do. That way others may be able to offer ideas on what they do themselves and perhaps we can learn from each other.

 

-dZ.

  • Like 1
Link to comment
Share on other sites

jzintv is an emulator made in the old-way: command line, everytime you change ROM, you need to reload the emulator, also the integrated debugger is fully command line.

 

I remember a time when MSX and Colecovision emulators were also made that way :) (brMsx, fMSX, KISS, Adamem and several others)

 

I think there are some graphical interfaces made for jzintv but I don't know where to find the links.

Link to comment
Share on other sites

jzintv is an emulator made in the old-way: command line, everytime you change ROM, you need to reload the emulator, also the integrated debugger is fully command line.

 

I remember a time when MSX and Colecovision emulators were also made that way :) (brMsx, fMSX, KISS, Adamem and several others)

 

I think there are some graphical interfaces made for jzintv but I don't know where to find the links.

Real programmers don't want GUI emulators ;) :grin:

I do agree that a key that resets and reloads the the rom would be useful if there is a gui.

 

Also, the newest MAME has MESS (with Intellivision support) rolled into it. It has a gui, and supports SAVE STATES, a very useful feature missing from current IntyEmus.

It has come in real handy when trying to track down a few "how the hell did I cause that?" scenarios

Link to comment
Share on other sites

I use both jzintv and Nostagia. Nostagia allows me to double click on the ROM file and boots up the emulator immediately. And pause button is mapped a F9. Reset is mapped at F11. But after compiling the game, I can just push x to close Nostagia and doubleclick on Nostagia to boot it.

 

I use a front end for jzintv to boot jzintv. I only use it test for accuracy and play games. Setting up file path in jzintv launcher is a pain in the butt since it want you to select box art, overlay and not just path to ROM file and you can't cancel that so I have to force quit it. I think I used the ini file to change the path of the ROM file, I have no patient to find image file for overlays and boxarts. Anyway, I can click x to close jzintv and select the ROM boot up jzintv with a freshly compiled ROM. Just don't get spooked by the Burgertime theme song every time that jzinty launcher start and close.

Edited by Kiwi
Link to comment
Share on other sites

... Nostagia allows me to double click on the ROM file and boots up the emulator immediately...

You can do the same thing with jzintv; no need for a front end. Just right-click and "open with" and find your bat file. Put the exec/grom roms in the rom folder and the game roms can be anywhere. Example bat file: .\bin\jzintv -z3 -v1 %1

Link to comment
Share on other sites

Hi.

 

While programming Intellivision games, I find it quite annoying to close the emulator and load the file again, to test my work.

 

So if you are programming an Intellivision Emualtor please add a "reload" rom file and reset function, Like the blue MSX have.

 

Please also dont block the file, since the compiler have to be able to write to the file. So what could be cool, would be an icon to reset the emualtor and an icon to reload the file (and reset) the emulator.

 

It could also be cool if the emulator have a "pause and resume" function :)

 

I primary use windows working with games and conversions.

 

 

 

This will be a non-issue in a few weeks as LTO Flash! is being assembled for sale currently.

 

You'll be able to plug your USB cable directly to the LTO Flash! and send code directly to the Intellivision with the click of a mouse.

Link to comment
Share on other sites

 

This will be a non-issue in a few weeks as LTO Flash! is being assembled for sale currently.

 

You'll be able to plug your USB cable directly to the LTO Flash! and send code directly to the Intellivision with the click of a mouse.

But that means that I would have to put my monstrous Mac Pro and Cinema display up in the living room, where my Intellivision and game machines are; or my Intellivision and humongous 32" Sony Triniton TV in my office, where my computer system is.

 

I'm sure not everyone has the same set up and workflow, but I am probably not the only one who codes and tests in emulation on my office computer, and play-test and enjoy games in my living room -- I treat these two activities as separate events.

 

dZ.

Edited by DZ-Jay
Link to comment
Share on other sites

But that means that I would have to put my monstrous Mac Pro and Cinema display up in the living room, where my Intellivision and game machines are; or my Intellivision and humongous 32" Sony Triniton TV in my office, where my computer system is.

 

I'm sure not everyone has the same set up and workflow, but I am probably not the only one who codes and tests in emulation on my office computer, and play-test and enjoy games in my living room -- I treat these two activities as separate events.

 

dZ.

 

Perhaps a portable SD TV with an Intellivision II sitting beside your programming computer?

 

Yeah, everybody has a different set up, but compile and instantly send to the Intellivision is pretty convenient.

Link to comment
Share on other sites

If I'm working in the office, I have a super-old xp machine that has a TV input card, so I hook a console up that way and it's all in easy reach.

 

If I'm using a laptop (Mac or Windows) I just carry it to where the console is and work that way.

 

Ultimately, everyone's workflow is a bit different.

 

The real challenge w/ any sort if input to a computer or monitor nowadays is finding something that supports old analog RF signals! Not sure how many of those USB tuner sticks support Mac.

Link to comment
Share on other sites

I would never test my programming on a flash cart until I had gone through lots of dev test cycles in emulation (developing on a computer) and when I thought I was treaty for a real QA cycle then I would put it on a flash cart and run. Otherwise the dev cycle loop is too long going back and forth, and the Inty hardware game setup is hidden in h living room while th computer dev stuff is in the home office. In my house the WAF is not right for any other kind of setup.

Link to comment
Share on other sites

 

Perhaps a portable SD TV with an Intellivision II sitting beside your programming computer?

 

Yeah, everybody has a different set up, but compile and instantly send to the Intellivision is pretty convenient.

 

 

It's a home-office, not a workshop. There's a desk, books, pens, files, and a small lamp. I can't just put more stuff in there, nor do I find it necessary.

 

 

 

I would never test my programming on a flash cart until I had gone through lots of dev test cycles in emulation (developing on a computer) and when I thought I was treaty for a real QA cycle then I would put it on a flash cart and run. Otherwise the dev cycle loop is too long going back and forth, and the Inty hardware game setup is hidden in h living room while th computer dev stuff is in the home office. In my house the WAF is not right for any other kind of setup.

 

I have the same. It's a hobby, after all, so it can't intrude my life too much. To each his own I guess.

 

 

 

The real challenge w/ any sort if input to a computer or monitor nowadays is finding something that supports old analog RF signals! Not sure how many of those USB tuner sticks support Mac.

 

Well, I guess that's one challenge. There's also finding a place where you can comfortably incorporate it into your home and lifestyle, considering that programming a game is a multi-month endeavor, and you only participate in it part-time.

 

Like I said, to each his own. :)

 

In any case, I'm glad for the dedicated effort put onto jzIntv, which allows me to work at my leisure. :)

Edited by DZ-Jay
Link to comment
Share on other sites

Good, but currently i dont have an Intellivision, and like when I code for the ColecoVision, maybe 90% of the work is done at a laptop,

when I am not home :) or from the Sofa :)

 

This will be a non-issue in a few weeks as LTO Flash! is being assembled for sale currently.

 

You'll be able to plug your USB cable directly to the LTO Flash! and send code directly to the Intellivision with the click of a mouse.

Link to comment
Share on other sites

I can't possibly be the only one nerdy enough to have a full console setup right next to my main computer desk... :D

 

Back when this was a home office, I had my work equipment on the one wall. Very handy to be able to swivel in the same chair between work and personal stuff. Job changed, and now "work" became a full Inty setup. I use a way overkill 24" LCD monitor on my Intellivision right now, because it's old enough to have composite inputs. It's actually bigger than my main PC screen.

 

Regardless of all that, I couldn't imagine actually developing an entire game this way. Right now my focus (and hands) barely move in between code-compile-run cycles. Having to switch to an entirely different screen every time I adjust a few pixels here and there... no thanks. Of course being able to test certain input schemes, color patterns etc immediately is why the LTO Flash! is basically going to kick serious ass.

  • Like 2
Link to comment
Share on other sites

If you're using the SDK, I seem to recall there are at least two different scripts for building, running or both. If you then separate the compile step (build) from the emulator step (run), you could alter the script for launching jzintv so it makes a temporary copy of your ROM file and runs that one. It would solve the file locking problem, as the build script still would generate the "master" ROM but the emulator once you restart it, will make its own work copy of the same ROM.

 

It doesn't solve the request to have a button to reload the ROM though without restarting the emulator.

 

That, or possibly jzintv itself can be extended with requested functionality.

Link to comment
Share on other sites

  • 1 year later...

Just a necro-bump: I added a reload function in jzIntv in October 2017. I guess I missed this thread, since I only really follow the programming forum and not the main Intellivision forum. I have limited time, so I limit myself to the low volume places, and rely on folks to point out threads of interest elsewhere. :-)

 

By default, Cmd-Z on Mac or Win-Z on Windows will reload the executable and restart the emulator. I added it after CrazyBoss finally pinged me on FB about the idea. You can bind it to some other key by binding the RELOAD action using a kbdhackfile as well.

 

Anyway... if anyone wants to ping me about possible jzIntv features, post in the Intellivision Programming forum, or find someone to tug my ear and drag me to the thread. :-) Now that $DAYJOB is a little more sane—not the same as saying it's completely sane—I'm open to evolving jzIntv more, as the last several months have demonstrated. In fact, if I want it to keep working on Macs at all, I need to finally move to SDL2, for example.

  • Like 3
Link to comment
Share on other sites

ana wu, weeds launcher is a bit obsolate and has one big fault, it puts custom flags at the beginning of the string, which means they will be overrided by the gui set flags.

 

arnauld chevalliers gui (jzIntv GUI) is much handier under windows and still compatible to the latest releases.

no annoying "set boxes" "set overlays", just start it.

custom flags will be at end of the string. though you can override and not vice versa.

(in praxis, the gui offers still only the three resolutions but you can specify any you like for the latest releases, weeds gui offers also only the three res. but you can't override it)

i was about to use weeds launcher again, because of displaying boxes and overlays, but this disadvantage makes it really obsolate.

 

weeds launcher doesn't includes subdirectories in the set rom folder, arnaulds gui does.

 

it was a good work weeds made (i like him anyway) until arnaulds gui was published.

 

do i still find it?

 

easiest it was to find here:

http://www.intellivision.us/intvgames/jzintv/jzintv.php

 

give a shit about the release used with it, it works fine with all releases.

 

in other terms, the installer will install an older jzintv release as you run (i assume), so don't override your recent version and install jzintv gui temporary anywhere, it doesn't writes to the registry, use only the gui, it needs a couple of libs but it will tell you which is missing when you simply moved the gui.exe to your existing jzintv installation.

 

even when i run from batch usually, sometimes it's practicable to run a rom from the gui, eg to see if it worthes to be played at all.

also you can fiddle around with the flags if that is needed to evaluate which you will use in a batch/shortcut.

 

---

 

for mac users i really suggest GUIintv, it has disadvantages but it's the only osx gui. unfortunately even limited to the old resulution switch, even more unfortunately no way to set custom flags.

if that could be fixed it would make a good alternative to the messing with batchfiles.

 

osx offers the automator, with help of it you can make very quick an app which will launch a rom by dropping it on the apps icon, that's very comfortable already.

simply put a string like mr_me showed in it.

open automator

select build "program"

select services "execute shell script" (or similar i'm working on a german osx)

select "input as arguments"

enter string to the textfield, eg

cd applications/jzintv
./bin/jzintv "$1"

as a absolute minimum

 

"$1" is the only argument since you drop the rom on the app and nothing else is needed as the full path

any optional flag has to be placed in front of this argument.

 

try jzintv -help in the command prompt to list the optional flags (can be output to text using i.e. >usage.txt)

 

(alternatively if you don't like to do it from the command line you can add "-help" to the automator string (in front of "$1") and drop a rom on it, instead of executing the rom it will output the help).

 

or visit this

http://atariage.com/forums/topic/272002-jzintv-osx/

here i listed the flags in the spoiler of my first post.

 

but learn how to use the command line, it's not a big thing (i mean in general and no specific person), in the end you control the software and not vice versa.

 

it's horrible and i do hate it to open the shell but

you control the software and the appearance on your machine.

it's tinkering and not everybodys hobby i know.

 

it's good to have a gui for a commandline program, but the full flexibility you have usually only from the commandline.

or this gui will have a thousend switches ;)

 

or it will end up in a monster which is only harder and not easier to handle.

 

---

 

however, arnaulds jzintvGUI is very good and keeps the flexibility.

 

tip: osx users can relaunch the last command very easy from the shell, the commands are listed in the buffer, only if you ran it from GUIIntv or from the app the output to the shell will be "swallowed" by the apps.

 

if you like to change the flags used in your automator script you won't need to open it with the automator, you can "open" (show content) the packed app and look for

document.wflow in it is your string which is editable with text edit.

Edited by Gernot
Link to comment
Share on other sites

Mac users (or anybody, really) looking for a GUI for jzIntv need look no further than the LTO Flash user software. It's free, has instructions, and lets you fully customize the command line if you want. You don't even need an LTO flash to use it.

 

http://www.intvfunhouse.com/intvfunhouse/ltoflash/

 

I still use GUIntv occasionally, but more and more I just stick with the LTO Flash program.

  • Like 1
Link to comment
Share on other sites

Mac users (or anybody, really) looking for a GUI for jzIntv need look no further than the LTO Flash user software. It's free, has instructions, and lets you fully customize the command line if you want. You don't even need an LTO flash to use it.

 

http://www.intvfunhouse.com/intvfunhouse/ltoflash/

 

I still use GUIntv occasionally, but more and more I just stick with the LTO Flash program.

 

Word of warning to Mac users running High Sierra (10.13)...

 

Apple broke something in one of their APIs which causes the UI to crash when it shows a progress bar.

 

[Gory details]

https://forums.developer.apple.com/thread/88468

https://forums.xamarin.com/discussion/104415/change-in-behavior-in-maxos-high-sierra-w-r-t-wantslayer

 

If you run into this, contact me. I have a build that works around that problem, it's just not quite ready for wider release yet.

 

Walks off muttering about code that works in all versions of macOS 10.7-10.12 suddenly being broken...

Link to comment
Share on other sites

  • 4 weeks later...

yeah, but i fear it would leave no space to sleep in my chamber.

 

 

@intvsteve

true!

 

that means, almost.

 

a personalized "GUI" (in a further sense)

post-41280-0-57026900-1521000787.gif

 

a similar looking i "builded" on my mothers macbook, but without the background images, this won't work, maybe this will even to be difficult to have for recent win releaees, well transparency shit, plastic looking borders but no folder background images (unfortunately no LUI on a osx 10.6, but never mind i prefere to run them standalone)

it's a lot of work until all games get shown off in this way but i guess it's worth the effort.

Edited by Gernot
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...