Wanted: VIC online emulator
Moderator: Moderators
Yes! Score!Kweepa wrote:I renamed the emulator JarVIC.

BTW I knew nothing of the doctor guy, I just thought it was a cool name. It was the name I'd picked when I'd looked at doing a Java VIC emulator based on the JaC64 sources myself

Last edited by girv on Mon Mar 23, 2009 9:24 am, edited 1 time in total.
I can't believe the progress you've made on JarVic. I looked at the original JaC64 and my eyes blurred and thought it looked like object-oriented spagetti code. But you managed to sift through it and come up a hell of an emulator in a short time.
My little VicVM project can't pretend to compare with it. I have got program loading going it as well now. I even got some of the same weird problems like odd random number results that I can't quite put my finger on yet. Like the Compute! maze generators work perfect. But Dunjon II, the rpg, doesn't generate proper stats, they are all the same. It was said it was something different in how rnd(0) works. ???
AnYwAyZ, I'll figure it out eventually and I too plan to release it in the public domain for anyone who might be interested.
My little VicVM project can't pretend to compare with it. I have got program loading going it as well now. I even got some of the same weird problems like odd random number results that I can't quite put my finger on yet. Like the Compute! maze generators work perfect. But Dunjon II, the rpg, doesn't generate proper stats, they are all the same. It was said it was something different in how rnd(0) works. ???
AnYwAyZ, I'll figure it out eventually and I too plan to release it in the public domain for anyone who might be interested.
JJ Abrams Star Trek: Boldly going where we've already been...
- Kweepa
- Vic 20 Scientist
- Posts: 1303
- Joined: Fri Jan 04, 2008 5:11 pm
- Location: Austin, Texas
- Occupation: Game maker
If you check the post I made earlier in this thread about RND(0), you'll see you need to either fake the VIA timers or emulate them. RND(0) reads from T1 and T2 of VIA1 so you can just update these occasionally to fake it, or you can check the source of VIA.java to emulate (I think) correctly.
For JarVIC, I fixed the problems with BASIC programs by loading to start of text, relinking the line numbers and setting the start of variable memory.
Thanks to this thread!
http://sleepingelephant.com/ipw-web/bul ... .php?t=664
I also got double height characters working.
Latest:
http://www.kweepa.com/step/vic20/jarvic.html
Source here:
http://www.kweepa.com/step/vic20/jarvic092708.zip
For JarVIC, I fixed the problems with BASIC programs by loading to start of text, relinking the line numbers and setting the start of variable memory.
Thanks to this thread!
http://sleepingelephant.com/ipw-web/bul ... .php?t=664
I also got double height characters working.
Latest:
http://www.kweepa.com/step/vic20/jarvic.html
Source here:
http://www.kweepa.com/step/vic20/jarvic092708.zip
I got graphics and color going now to a degree. I still have to fix rnd like you said, Kweepa, and I too need a relinking function for programs loaded into a different address than they were saved. Here another pic that implements a pull-down menu for loading programs.


JJ Abrams Star Trek: Boldly going where we've already been...
- Kweepa
- Vic 20 Scientist
- Posts: 1303
- Joined: Fri Jan 04, 2008 5:11 pm
- Location: Austin, Texas
- Occupation: Game maker
To relink, I just pushed SYS50483[return] into the keyboard buffer after loading. Why reinvent the wheel?
JarVIC hanging your browser isn't good. What version of Firefox/JRE/Windows(?) do you have? I don't see that behaviour with FF3/JREv6u7/WinXP. Hopefully if I can repro it I can attach a debugger to the process.
JarVIC hanging your browser isn't good. What version of Firefox/JRE/Windows(?) do you have? I don't see that behaviour with FF3/JREv6u7/WinXP. Hopefully if I can repro it I can attach a debugger to the process.
I couldn't get it to start at all - with FireFox 3.03 or IE - but I'm running an older version of Java on my work PC here, that I won't update, as I use a lot of the 'lights-out' boards for servers at work, and they are flakey on certain versions of Java, I'll give it a try from home, I have a lot of options there.
I assume that's due to the version of Java I'm running?
java.lang.UnsupportedClassVersionError: JarVICApplet (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
I assume that's due to the version of Java I'm running?
---------------------------
10 PRINT "Hello World!"
20 GOTO 10
10 PRINT "Hello World!"
20 GOTO 10
- Kweepa
- Vic 20 Scientist
- Posts: 1303
- Joined: Fri Jan 04, 2008 5:11 pm
- Location: Austin, Texas
- Occupation: Game maker
Overcast - looks like your Java version, yes.
New version with support for setting the memory and starting a game in one click. Plus cartridge support. And a bit of a new look for the web page.
http://www.kweepa.com/step/vic20/jarvic.html
I still have to get Frogger07 working. And fix up the white noise channel. And add some more vertical real estate for Arcadia.
New version with support for setting the memory and starting a game in one click. Plus cartridge support. And a bit of a new look for the web page.
http://www.kweepa.com/step/vic20/jarvic.html
I still have to get Frogger07 working. And fix up the white noise channel. And add some more vertical real estate for Arcadia.
Thank you very much for adding my suggested feature, thanks again.Kweepa wrote:New version with support for setting the memory and starting a game in one click.

The new web page has a very nice look!
Mega-Cart: the cartridge you plug in once and for all.
The RunStop-Restore button does a reset not exactly the same on a real vic
Btw i've "tested" it for a while and i must say that is in a very good state except that it's a bit slow but is not a problem for an on-line emulator

Btw i've "tested" it for a while and i must say that is in a very good state except that it's a bit slow but is not a problem for an on-line emulator

Mega-Cart: the cartridge you plug in once and for all.
- Kweepa
- Vic 20 Scientist
- Posts: 1303
- Joined: Fri Jan 04, 2008 5:11 pm
- Location: Austin, Texas
- Occupation: Game maker
New version:
1. improved noise support (based loosely on VICE code)
2. increased screen height from 240 to 272 to accommodate Arcadia
http://www.kweepa.com/step/vic20/jarvic.html
Just Frogger '07 to look at - for some reason the screen colour raster code is not timed correctly and it rolls. I may need some advice on this one.
1. improved noise support (based loosely on VICE code)
2. increased screen height from 240 to 272 to accommodate Arcadia
http://www.kweepa.com/step/vic20/jarvic.html
Just Frogger '07 to look at - for some reason the screen colour raster code is not timed correctly and it rolls. I may need some advice on this one.