Jump to content
IGNORED

LTO Flash! - Intellivision Flash Cartridge Information


Recommended Posts

Wow. This is the kind of thing that would be really handy to have documented for homebrewers. One thing I don't really test thoroughly is to make sure each sound effect sounds "just right" on every one of the possible hardware units. I assume jzintv only emulates one of the PSGs? Given that I've already detected differences between emulator and hardware on certain sound effect tricks, I'm (minorly) scared about what happens when someone tries my code on their Tutorvision!

 

Right now, jzIntv only reproduces the AY-3-8914 faithfully, I believe, and even then, I'm not sure if it's 100% faithful. Once we characterize the full range of PSGs, it'll go in my bucket list to upgrade jzIntv to let you select among them.

 

I also need to modify jzIntv to implement the GRAM-alias-masking the ECS performs that I confirmed only in the last week. Trivial to add, and it confirms some inconsistent results I'd gotten with the alias in years past. I never connected it to the ECS, I just thought I had faulty memory. (I do have faulty memory, but that's not the only factor at work here. ;) )

 

EDIT: And once I get some quality time with an actual TutorVision, I'd like to support it too in jzIntv.

Edited by intvnut
Link to comment
Share on other sites

It feels like the combination of the LTO Flash! (for widespread hardware testing) and IntyBASIC (just so knuckleheads like me can program) will likely result in the most accurate Intellivision emulation - for all time. There certainly are a lot of edge cases to take into account.

 

Which means that a GUI for jzintv, in Windows at least, should be next on Steve's todo list :P Many people struggle with the command prompt and are using really outdated emulators as a result. And which also means that it's time to get the commercial entities realizing how sub-par their emulators are (insert political discussion that I'll just hand-wave away for now :D )

  • Like 2
Link to comment
Share on other sites

Which means that a GUI for jzintv, in Windows at least, should be next on Steve's todo list :P Many people struggle with the command prompt and are using really outdated emulators as a result. And which also means that it's time to get the commercial entities realizing how sub-par their emulators are (insert political discussion that I'll just hand-wave away for now :D )

 

I agree. Love the LTO Flash and having a GUIlr JZINTV would also be a great idea.

  • Like 2
Link to comment
Share on other sites

If we're making a wish-list, I think more interesting than a launcher would be an integrated debugging environment, sort of like the old TurboASM (though of course, not as sophisticated), where you could trade the source as it executes, with panes giving visibility to breakpoints, memory watches, and register changes over time.

 

Oh, and as long as we're wishing, everyone should get a pony! :lol:

 

-dZ.

Link to comment
Share on other sites

 

The code's GPL, including the LTO Flash GUI. If you actually have something to contribute, contributions welcome.

 

Wait, are you being snarky? I really hope you are not, because I was offering a suggestion just like Freewheel and JDog, and I didn't see you responding with dry dismissal to them.

 

I know that you love the command line, but I think others would appreciate an integrated debugger for jzIntv, don't you agree? I think so.

 

Unfortunately, that sort of GUI is beyond what I could implement right now, so I posed it as another wish for the list. The last line of my post was meant as a throwaway note that this was just my wish, and perhaps not realistic to expect. It's from Calvin & Hobbes.

2bd.png

Link to comment
Share on other sites

 

Wait, are you being snarky? I really hope you are not, because I was offering a suggestion just like Freewheel and JDog, and I didn't see you responding with dry dismissal to them.

 

I dryly pointed out their items are already on the TO-DO list, since they fit within the scope of the LTO Flash GUI and jzIntv. *shrug* After being up all night working with a rather cantankerous and slow machine here at work, I'm pretty dry.

 

An IDE would be nice for folks into such things. One of my bucket list items is to rework jzIntv to be a C++ class library with friendly interfaces for hooking its internals. Basically, apply a bit of inversion-of-control / dependency injection techniques to the design, so it's easier, for example, to substitute a traced-STIC model for a STIC model. That'd allow for all sorts of fun things. As of right now, though, it's at the far end of the queue, and I may never tackle it. The C version is super-portable and any rewrite in C++ will limit the places jzIntv can go.

 

Building a GUI is not in my skill set. But, exposing interfaces a GUI can inspect and drive? Sure, I can do that. Integrating it into a GUI? Someone who actually has both the interest and the skills would need to take up that mantle.

 

I'm not going to promise something and not deliver it.

Edited by intvnut
Link to comment
Share on other sites

I dryly pointed out their items are already on the wishlist. *shrug* After being up all night working with a rather cantankerous and slow machine here at work, I'm pretty dry.

 

Understood, although I still think your respond to my comment was unwarranted. I took it as "put up or shut up," when I was merely pointing out that an integrated debugger may be more interesting than a launcher as a longer term project. Your mileage may vary, of course.

 

An IDE would be nice for folks into such things. One of my bucket list items is to rework jzIntv to be a C++ class library with friendly interfaces for hooking its internals. Basically, apply a bit of inversion-of-control / dependency injection techniques to the design, so it's easier, for example, to substitute a traced-STIC model for a STIC model. That'd allow for all sorts of fun things. As of right now, though, it's at the far end of the queue, and I may never tackle it. The C version is super-portable and any rewrite in C++ will limit the places jzIntv can go.

 

Building a GUI is not in my skill set. But, exposing interfaces a GUI can inspect and drive? Sure, I can do that. Integrating it into a GUI? Someone who actually has both the interest and the skills would need to take up that mantle.

 

Such interfaces would make it a lot easier to integrate jzIntv into a GUI debugger. However, if I'm not mistaken, I believe it is still possible with the current version, since you had already added some mechanisms for jzIntv to receive input through STDIN. I always had the idea that running a "windowless" shell process and communicating with it using just STDIN/STDOUT interfaces would at least allow a generalized extensible "programming editor" (like Sublime or Eclipse) to commandeer the debugger.

 

I've never gotten around to try this of course, but I always hoped to get to it. :)

 

However, implementing a full-fledged IDE with syntax highlighting and integrated debugger is way out of my league.

 

I'm not going to promise something and not deliver it.

 

Of course not. I understand that this wouldn't be a high priority for you or anybody (neither for me), which is why I think it's a pipe-dream at the moment (and hence the Susie Derkins reference).

 

That said, I still believe it would be a very good thing to add to our tool kit, and would reduce the barriers to entry even more. I still wish someone would pick this up. :)

 

-dZ.

Link to comment
Share on other sites

 

Well, $0FFF, since the period is only 12 bits, but yes, I believe that would fix it.

 

Right now, in the cramped LTO Western Manufacturing Facility & Coffee Emporium, I only have an INTV System III and one Intellivision II to test with (not sure what PSG is in it off-hand). (EDIT: And an ECS. Can't forget that.) At some point I'd like to write a PSG Test Battery, so we can catalog all the variations we're aware of. So far as I know, there's four PSG variants used in the Intellivision and peripherals:

  • AY-3-8914
  • AY-3-8914A
  • AY-3-8916
  • AY-3-8917

Among the four variations, I know of the following differences / potential differences:

  • 6-bit vs. 5-bit volume register (2-bit envelope volume shift vs. 1-bit envelope select)
  • Down count and reload at 0 vs. up count and reload based on comparison
  • Bidirectional I/O ports vs. read-only input ports
  • Zeroes in unused bits vs. I/O port data bleeding through in unused bits. (May vary depending based on Direct Mode vs. Indirect Mode access, too.)
  • Different starting address ($1F0 for AY-3-8914/8914A/8916, $0F0 for AY-3-8917).

And then there's the TutorVision, which uses an AY8930...

 

Some of these variations can be tested for in software, I think. But others will require a human to listen.

 

Until now, I didn't know that there even was a 8910A.

Link to comment
Share on other sites

If you've a LTO-Flash cartridge, then you're reading this thread, and if you're reading this thread you have a $1 discount when getting Princess Quest ROM for Intellivision from my digital store (check the thread at this same level):

 

Coupon code: CNDZSPEVEQ

 

:grin:

please provide the link to use the code

Link to comment
Share on other sites

Not to put words in intvsteve's mouth, but I believe using the LTO Flash GUI as a jzintv launcher is somewhere in his bucket list.

 

Arnauld made a GUI launcher for jzIntv some years ago, but I don't think it's been maintained.

 

Indeed. Arnauld's is still a nice quick way to fire up games in Windows.

 

Having the UI be a handy way to launch ROMs in jzIntv is absolutely on the list. Prioritizing the things I'd like to do is always a trick, though. Bugs that are found in the UI as LTO Flash! lands around the globe are going to get the most attention. Thank you for the patience from those of you who have encountered them, and in advance for those yet to be found.

  • Like 1
Link to comment
Share on other sites

Which means that a GUI for jzintv, in Windows at least, should be next on Steve's todo list :P Many people struggle with the command prompt and are using really outdated emulators as a result. And which also means that it's time to get the commercial entities realizing how sub-par their emulators are (insert political discussion that I'll just hand-wave away for now :D )

I agree. Love the LTO Flash and having a GUIlr JZINTV would also be a great idea.

A jzintv launcher in LUI is a good idea. But you know, Windows File Explorer makes for a good simple front-end for jzintv. Just double click or right-click a rom file and open wih a batch (.bat) file like this.

 

c:\jzintv\bin\jzintv.exe -z3 -f1 -v1 --kbdhackfile=c:\jzintv\kbdhackfile.kbd %1

Link to comment
Share on other sites

If you've a LTO-Flash cartridge, then you're reading this thread, and if you're reading this thread you have a $1 discount when getting Princess Quest ROM for Intellivision from my digital store (check the thread at this same level):

 

Coupon code: CNDZSPEVEQ

 

:grin:

 

Damn ti! I just bought the ROM.

 

Still worth it!

  • Like 1
Link to comment
Share on other sites

 

Well, $0FFF, since the period is only 12 bits, but yes, I believe that would fix it.

 

Right now, in the cramped LTO Western Manufacturing Facility & Coffee Emporium, I only have an INTV System III and one Intellivision II to test with (not sure what PSG is in it off-hand). (EDIT: And an ECS. Can't forget that.) At some point I'd like to write a PSG Test Battery, so we can catalog all the variations we're aware of. So far as I know, there's four PSG variants used in the Intellivision and peripherals:

  • AY-3-8914
  • AY-3-8914A
  • AY-3-8916
  • AY-3-8917

Among the four variations, I know of the following differences / potential differences:

  • 6-bit vs. 5-bit volume register (2-bit envelope volume shift vs. 1-bit envelope select)
  • Down count and reload at 0 vs. up count and reload based on comparison
  • Bidirectional I/O ports vs. read-only input ports
  • Zeroes in unused bits vs. I/O port data bleeding through in unused bits. (May vary depending based on Direct Mode vs. Indirect Mode access, too.)
  • Different starting address ($1F0 for AY-3-8914/8914A/8916, $0F0 for AY-3-8917).

And then there's the TutorVision, which uses an AY8930...

 

Some of these variations can be tested for in software, I think. But others will require a human to listen.

There's Ryan Kinnen's PSG Tinkerer, if someone want to do some testing with the sound chips.

http://www.pixelkitchen.com/ryan/intellivision.html

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