Next Generation Emulation banner

1 - 20 of 44 Posts

·
Registered
Joined
·
344 Posts
Discussion Starter #1 (Edited)
1.1.0 developement thread

Frameskip code has been commited to CVS. There's no GUI support for it at the moment, but there will be in due time. ;) The new key is "frameSkip" and should be sufficiently explained in the new vj.cfg file. :thumb:

And I was waiting until it worked 100%, but what the hell... Real CD support is in the latest version of VJ (1.0.7) but still has some bugs. It works well on Win32, but is nonexistant on MacOS (we don't have anyone around yet to write the back end for us) and may or may not work on Linux (haven't tested it yet). So yes, what this means is that in the near future you'll be able to put your Jaguar game CD into your PC's CD-ROM drive and use Virtual Jaguar to play it. ;)
 

·
Premium Member
Joined
·
129 Posts
Currently I'm working on portable SDL scaling code when rendering in normal SDL mode. This hasn't committed to CVS yet since I need to work out some remaining items (the code only works with 16bpp SDL_Surface's).

I hope to clean up some remaining GUI code and to get started on working on the Linux JaguarCD emulation. As soon as I get my original JaguarCD title I can debug and test the code (and hopefully provide working JaguarCD emulation on Linux).

Regards,

Niels Wagenaar
 

·
Registered
Joined
·
30 Posts
why don't you commit to CVS more often? Beeing a "bit" broken wouldn't be such a big problem - but ATM it looks like not much changes between the releases (as it took a long time since I had to make a new cvs-build because you updatet someting).
 

·
Registered
Joined
·
344 Posts
Discussion Starter #4
We commit stuff that's a "bit" broken all the time, it's just that lately I personally haven't had much free time to commit to VJ--though I still work on it when I can. The short of it is this: If there's anything that I code that advances the emulator, even if only a little, I commit it to CVS. I guess that goes to show how much advancement there's been lately. :p

Bottom line: Time is short. But the code is open so anyone who wants to hack on it can submit patches to us for inclusion in VJ (unfortunately nobody has bothered to do any hacking on it--go figure).
 

·
Registered
Joined
·
6 Posts
Shamus said:
We commit stuff that's a "bit" broken all the time, it's just that lately I personally haven't had much free time to commit to VJ--though I still work on it when I can. The short of it is this: If there's anything that I code that advances the emulator, even if only a little, I commit it to CVS. I guess that goes to show how much advancement there's been lately. :p

Bottom line: Time is short. But the code is open so anyone who wants to hack on it can submit patches to us for inclusion in VJ (unfortunately nobody has bothered to do any hacking on it--go figure).

I think this emulator is going nowhere. I think the programmers have made a wonderful progress, but now the emulator development looks like stopped almost completely.
I congrats the authors but something says me it will be cancelled. Its a shame nobody helps...If I could I would, but I am not a programmer...
 

·
Registered
Joined
·
344 Posts
Discussion Starter #6
Well, no disrespect intended, but what you think and what's really going on are two separate things. And while it is a shame that nobody else has stepped up to help, we have no intention of cancelling Virtual Jaguar.

Oh, and once we have the CD emulation perfected, you can bet that you'll see it soon thereafter in Project Tempest and the Potato Jaguar Emulator. ;)
 

·
Registered
Joined
·
30 Posts
hm - I've a small patch to fix stupid segfaults on calling "load rom" if there is no ROMS dir somewhere on my linux partition (altough it's not such a big improvement *g)
 

·
Registered
Joined
·
344 Posts
Discussion Starter #8 (Edited)
It doesn't matter if the fix is small or not--please feel free to submit it to us! :)

You can either send it via email or post it here--if the fix is small enough that is. :thumb:
 

·
Registered
Joined
·
344 Posts
Discussion Starter #9
I think an overhaul of the timing system is long overdue. I'm sure some of the current brokeness stems from the fact that the timing in VJ is just plain lousy. So, anyway, don't be too surprised if things start breaking in the near future. ;)

I'll post more details once I figure out how to implement the fix. I'm thinking that we should move to a timer oriented method much the way that MAME handles its timing. Anyway, more later. :thumb:
 

·
Registered
Joined
·
1 Posts
Hi @ all,

it would be absolutly great if its possible to use windowsfunction "open with" or commandline param to open a .bin file that comes directly from Mac&ALN (asm&linker)

would be an awesome improvement for developers to push just a batchfile that does asm and linking and runs the result in vjag !!

that means no more need for devkits...
that means more time for coding...
that means more results ;) !!

greetings to all !
 

·
Registered
Joined
·
344 Posts
Discussion Starter #11
I just changed the rendering code to use 32 BPP mode, since this is the way a real Jaguar works. One nice side effect of this change is that we got a nice speed boost. :thumb:

I'm thinking that maybe we should make OpenGL a requirement for VJ. I'm not 100% convinced that we should go this way, though, so for the time being standard SDL rendering is still an option. ;)

Speaking of OpenGL, Neils, I was thinking that a good way to get multiple horizontal resolutions at the same time would be to use multiple textures--that way we could simply render the appropriate pixel width in the the appropriate texture and not have to worry about cutting textures at odd intervals...

I'm getting closer to having a working implementation of the new timer based code. Once I get it stable, it'll go into CVS. :)
 

·
Registered
Joined
·
33 Posts
Suggestions

I'm not sure if this belong here or not but here it is. Some of this is redundant of my post in the other thread but I'll summerize. I would like to see VJ be more cabinet friendly. I'm usre you know what I mean here but for readers that dont:

Launch in Full Screen (Currently Supported, Quite Well)
Exit with the ESC key (Not supported Yet)
Take a game as a command line parameter (Currently Supported).

Two out of three, that's very good. Now, here's a fourth suggestion (idea). I just downloaded the latest ZSNESW (Super Nintendo Emulator) and it has this ability. My ultimate goal is to allow a user of my cabinet to use either the control panel (keyboard input) OR a game pad (preferrably the original converted to a USB interface). What the ZSNESW people did was impliment a switch in the cfg file to allow Player 3 and Player 4 to act as input for Player 1 and Player 2 respectively. What this means is that you can configure the control panel (keyboard) for Player 1 and Player 2 and configure a game pad for Player 3 and Player 4. Then the user can use either the control panle or keyboard to control the game. I realize that some game (VJ?) aren't set up for 4 players. Maybe two dirfferent cfg files could be used and then called as a command line parameter "-cfg "c:\vj\gamepad.cfg"" or sometihing. I don't have the answer but it's just an idea. Anyways, thanks for listening.

Keep up the good work,
John
 

·
Registered
Joined
·
344 Posts
Discussion Starter #13
I just checked CVS again, and the fix for passing in a ROM on the command line is still there and works (i.e., if you pass in a ROM on the command line, pressing ESC will exit the emulator completely). Also, the BIOS works properly using the "useJaguarBIOS = 1" in the config file. My suggestion would be to post your vj.cfg and the vj.log files that VJ produces so that we can see just what's going on there.

As far as being able to use a joystick or a keyboard goes, VJ has had this functionality from the beginning. Also, as far as I remember, the Jaguar console only had inputs for two controllers. I know there was a peripheral to expand the inputs to eight (or was is four?) controllers, but VJ doesn't emulate this piece of hardware at the moment, and probably won't for the immediate future (I can't think of a single game that used it).

So, anyway, for us to be able to diagnose your problems, we need to see you configuration file and the generated log file. Also post the directories where you have things and what command line you're using to run the emulator. Without that info, we can't help you since things are working the way they should from our perspective. ;)
 

·
Registered
Joined
·
33 Posts
Shamus said:
I just checked CVS again, and the fix for passing in a ROM on the command line is still there and works (i.e., if you pass in a ROM on the command line, pressing ESC will exit the emulator completely). Also, the BIOS works properly using the "useJaguarBIOS = 1" in the config file. My suggestion would be to post your vj.cfg and the vj.log files that VJ produces so that we can see just what's going on there.

As far as being able to use a joystick or a keyboard goes, VJ has had this functionality from the beginning. Also, as far as I remember, the Jaguar console only had inputs for two controllers. I know there was a peripheral to expand the inputs to eight (or was is four?) controllers, but VJ doesn't emulate this piece of hardware at the moment, and probably won't for the immediate future (I can't think of a single game that used it).

So, anyway, for us to be able to diagnose your problems, we need to see you configuration file and the generated log file. Also post the directories where you have things and what command line you're using to run the emulator. Without that info, we can't help you since things are working the way they should from our perspective. ;)
Shamus,
Thanks for the reply, again. I have tired everything with no luck. As per your request here is the information.

System specs:
Athlon 2500XP
512MB
Windows XP SP2
nVidia GeForce 3 Ti 500

Directory structure:
c:\vj
c:\vj\bios
c:\vj\docs
c:\vj\eeproms
c:\vj\ROMs

The only bios I have is a file named jagboot.rom and it's in the bios folder. It is 128kb and is dated 10/2/2000. It works with version 1.0.7 just fine. At least I think so. I get the Jaguar text and a spinning cube with a picture of a jaguar on it.

Here is the cfg file I was trying that works with 1.0.7

#
# Virtual Jaguar configuration file
#

# Jaguar BIOS options: 1 - use, 0 - don't use

useJaguarBIOS = 1

# Jaguar ROM paths

JagBootROM = ./bios/jagboot.rom
#CDBootROM = ./bios/jagcd.rom
CDBootROM = ./bios/jagcddev.bin
EEPROMs = ./eeproms
ROMs = ./ROMs

# OpenGL options: 1 - use OpenGL rendering, 0 - use old style rendering

useOpenGL = 1
#useOpenGL = 0

# OpenGL filtering type: 1 - blurry, 0 - sharp

glFilterType = 0

# Display options: 1 - fullscreen, 0 - windowed

fullscreen = 1

# NTSC/PAL options: 1 - NTSC, 0 - PAL

hardwareTypeNTSC = 1

# DSP options: 1 - use, 0 - don't use

DSPEnabled = 1

# If DSP enabled, set whether or not to use the pipelined core: 1 - use, 0 - don't use

usePipelinedDSP = 0

# Joystick options: 1 - use joystick, 0 - don't use

useJoystick = 0

# Joyport option: If joystick is enabled above, set the port (0 - 3) here

joyport = 0

# Jaguar joypad key assignments
# Note: It would be nicer to be able to have a single left side to store all this in...
# E.g. p1keys = 34, 32, 22, etc. instead of what we have here...

p1k_up = 273 # SDLK_UP
p1k_down = 274 # SDLK_DOWN
p1k_left = 276 # SDLK_LEFT
p1k_right = 275 # SDLK_RIGHT
p1k_c = 32 # SDLK_z
p1k_b = 308 # SDLK_x
p1k_a = 306 # SDLK_c
p1k_option = 49 # SDLK_QUOTE
p1k_pause = 50 # SDLK_RETURN
p1k_0 = 256 # SDLK_KP0
p1k_1 = 257 # SDLK_KP1
p1k_2 = 258 # SDLK_KP2
p1k_3 = 259 # SDLK_KP3
p1k_4 = 260 # SDLK_KP4
p1k_5 = 261 # SDLK_KP5
p1k_6 = 262 # SDLK_KP6
p1k_7 = 263 # SDLK_KP7
p1k_8 = 264 # SDLK_KP8
p1k_9 = 265 # SDLK_KP9
p1k_pound = 267 # SDLK_KP_DIVIDE
p1k_star = 268 # SDLK_KP_MULTIPLY

p2k_up = 273 # SDLK_UP
p2k_down = 274 # SDLK_DOWN
p2k_left = 276 # SDLK_LEFT
p2k_right = 275 # SDLK_RIGHT
p2k_c = 122 # SDLK_z
p2k_b = 120 # SDLK_x
p2k_a = 99 # SDLK_c
p2k_option = 39 # SDLK_QUOTE
p2k_pause = 13 # SDLK_RETURN
p2k_0 = 256 # SDLK_KP0
p2k_1 = 257 # SDLK_KP1
p2k_2 = 258 # SDLK_KP2
p2k_3 = 259 # SDLK_KP3
p2k_4 = 260 # SDLK_KP4
p2k_5 = 261 # SDLK_KP5
p2k_6 = 262 # SDLK_KP6
p2k_7 = 263 # SDLK_KP7
p2k_8 = 264 # SDLK_KP8
p2k_9 = 265 # SDLK_KP9
p2k_pound = 267 # SDLK_KP_DIVIDE
p2k_star = 268 # SDLK_KP_MULTIPLY







I also tried x86 (windows) style paths like this.

#
# Virtual Jaguar configuration file
#

# Jaguar BIOS options: 1 - use, 0 - don't use

useJaguarBIOS = 1

# Jaguar ROM paths

JagBootROM = c:\vj\bios\jagboot.rom
#CDBootROM = ./bios/jagcd.rom
CDBootROM = c:\vj\bios\jagcddev.bin
EEPROMs = c:\vj\eeproms
ROMs = c:\vj\ROMs

# OpenGL options: 1 - use OpenGL rendering, 0 - use old style rendering

useOpenGL = 1
#useOpenGL = 0

# OpenGL filtering type: 1 - blurry, 0 - sharp

glFilterType = 0

# Display options: 1 - fullscreen, 0 - windowed

fullscreen = 1

# NTSC/PAL options: 1 - NTSC, 0 - PAL

hardwareTypeNTSC = 1

# DSP options: 1 - use, 0 - don't use

DSPEnabled = 1

# If DSP enabled, set whether or not to use the pipelined core: 1 - use, 0 - don't use

usePipelinedDSP = 0

# Joystick options: 1 - use joystick, 0 - don't use

useJoystick = 0

# Joyport option: If joystick is enabled above, set the port (0 - 3) here

joyport = 0

# Jaguar joypad key assignments
# Note: It would be nicer to be able to have a single left side to store all this in...
# E.g. p1keys = 34, 32, 22, etc. instead of what we have here...

p1k_up = 273 # SDLK_UP
p1k_down = 274 # SDLK_DOWN
p1k_left = 276 # SDLK_LEFT
p1k_right = 275 # SDLK_RIGHT
p1k_c = 32 # SDLK_z
p1k_b = 308 # SDLK_x
p1k_a = 306 # SDLK_c
p1k_option = 49 # SDLK_QUOTE
p1k_pause = 50 # SDLK_RETURN
p1k_0 = 256 # SDLK_KP0
p1k_1 = 257 # SDLK_KP1
p1k_2 = 258 # SDLK_KP2
p1k_3 = 259 # SDLK_KP3
p1k_4 = 260 # SDLK_KP4
p1k_5 = 261 # SDLK_KP5
p1k_6 = 262 # SDLK_KP6
p1k_7 = 263 # SDLK_KP7
p1k_8 = 264 # SDLK_KP8
p1k_9 = 265 # SDLK_KP9
p1k_pound = 267 # SDLK_KP_DIVIDE
p1k_star = 268 # SDLK_KP_MULTIPLY

p2k_up = 273 # SDLK_UP
p2k_down = 274 # SDLK_DOWN
p2k_left = 276 # SDLK_LEFT
p2k_right = 275 # SDLK_RIGHT
p2k_c = 122 # SDLK_z
p2k_b = 120 # SDLK_x
p2k_a = 99 # SDLK_c
p2k_option = 39 # SDLK_QUOTE
p2k_pause = 13 # SDLK_RETURN
p2k_0 = 256 # SDLK_KP0
p2k_1 = 257 # SDLK_KP1
p2k_2 = 258 # SDLK_KP2
p2k_3 = 259 # SDLK_KP3
p2k_4 = 260 # SDLK_KP4
p2k_5 = 261 # SDLK_KP5
p2k_6 = 262 # SDLK_KP6
p2k_7 = 263 # SDLK_KP7
p2k_8 = 264 # SDLK_KP8
p2k_9 = 265 # SDLK_KP9
p2k_pound = 267 # SDLK_KP_DIVIDE
p2k_star = 268 # SDLK_KP_MULTIPLY

This didn't work either.

form a command prompt WHILE in the c:\vj folder I am sending this command:

vj "c:\roms\atrai karts (1995).j64"

This works well with version 1.0.7. It also works with what I believe is the CVS version IF I set the usejaguarbios parameter to 0. However the CVS, when pressing ESC, just pops open the menu. (I'm beginning to think I don't have the proper CVS build. The executable is 917kb and is dated 10/24/2004.

I have attached a copy of the vj.log file. While attempting this launch the screen eventually went black. I then pressed ESC, then menu popped up and I choose, File/Quit.

Thanks for your time, again!
John
 

·
Registered
Joined
·
344 Posts
Discussion Starter #15
This is obviously not the latest CVS build. If you didn't build it yourself (i.e., followed the instructions for retrieval via CVS on the official homepage and compiled it yourself), then there's no telling what you have. If you don't know how or don't want to buld it yourself, there's always CVS Compile, but they haven't yet updated their copy of CVS to the latest. But please make sure you're actually using the CVS version before you complain about it. ;)
 

·
Registered
Joined
·
33 Posts
Feedback

Shamus said:
This is obviously not the latest CVS build. If you didn't build it yourself (i.e., followed the instructions for retrieval via CVS on the official homepage and compiled it yourself), then there's no telling what you have. If you don't know how or don't want to buld it yourself, there's always CVS Compile, but they haven't yet updated their copy of CVS to the latest. But please make sure you're actually using the CVS version before you complain about it. ;)
Shamus,
That was kind of my conclusion also. Bear in mind that I am not complaining at all. I develop many apps for public use in the emulation community and know what you go through. I am more than happy to wait for the next official release. I am just providing feedback here. I would actually rather see you spend your time coding that even wasting your time on this and with me. Just a simple thanks so I know you read it is OK with me.
Based on your reply I will attemp to get the latest build and give it a go. I did get this build from CVS Compile so that would explain it.

Have a great day,
John
 

·
Registered
Joined
·
33 Posts
XTale said:
updates are done every sunday ;)
I did a quick compile, you may get a build dated to 12/31 at http://cvscompile.aep-emu.de/vjaguar.htm now.

I didn't had time to test it (cause I've to get my train), give it a try and tell me if it's working. If it's not, you ahve to wait till next year ;)
THIS IS FEEDBACK:
That build launches and plays the game AND exits with the ESC key, as long as use jaguarbios is set to 0. If I set it to 1 it launches to a black screen and the returns to the desktop after a second or two. I have attached the cfg and log files for ya to look at.

Enjoy,
John
 

·
Registered
Joined
·
344 Posts
Discussion Starter #19 (Edited)
Here's the relevant part of the log file:

About to attempt to load BIOSes...
VJ: BIOS is not available...
VJ: CD BIOS is not available...
Initializing video subsystem...
Initializing GUI subsystem...
About to start GUI...
GUI: Inside GUIMain...
GUI: Resetting Jaguar...
--> GPU stats were reset!
Jaguar: 68K reset. PC=90B03D00 SP=78013D00
GUI: Clearing BG save...
VJ: Loading "c:\vj\roms\atari karts (1995).j64"...OK (4194304 bytes)
CRC: E28756DE
EEPROM: Loaded from E28756DE.eep
GUI: Bypassing GUI since ROM passed in on command line...
--> GPU stats were reset!
Jaguar: 68K reset. PC=90B03D00 SP=78013D00

M68K encountered an illegal instruction at 00000000!!!

It's not finding the BIOS file, but it is finding the EEPROM files. Two things you might want to check--whether or not your file is actually called jagboot.rom and what the working directory is when you run VJ (say, from a shortcut).

You have uncovered an honest-to-God bug, though--if the BIOS is unavailable, it shouldn't crash. I should be able to fix that one shortly. ;)
 

·
Registered
Joined
·
33 Posts
Shamus said:
Here's the relevant part of the log file:

About to attempt to load BIOSes...
VJ: BIOS is not available...
VJ: CD BIOS is not available...
Initializing video subsystem...
Initializing GUI subsystem...
About to start GUI...
GUI: Inside GUIMain...
GUI: Resetting Jaguar...
--> GPU stats were reset!
Jaguar: 68K reset. PC=90B03D00 SP=78013D00
GUI: Clearing BG save...
VJ: Loading "c:\vj\roms\atari karts (1995).j64"...OK (4194304 bytes)
CRC: E28756DE
EEPROM: Loaded from E28756DE.eep
GUI: Bypassing GUI since ROM passed in on command line...
--> GPU stats were reset!
Jaguar: 68K reset. PC=90B03D00 SP=78013D00

M68K encountered an illegal instruction at 00000000!!!

It's not finding the BIOS file, but it is finding the EEPROM files. Two things you might want to check--whether or not your file is actually called jagboot.rom and what the working directory is when you run VJ (say, from a shortcut).

You have uncovered an honest-to-God bug, though--if the BIOS is unavailable, it shouldn't crash. I should be able to fix that one shortly. ;)
Well, i should be in the proper working directory. I am running on a windows box and launching from a command prompt in the vj folder. I have tried two differnt bios's and had the same effects with both. They both are 128kb but it's hard to say what's floating around out there. I'd get you a copy to try but don't want to post it publically. If you want to send me an email go to my website at http://home.comcast.net/~cpviewer (emulation junk :))and drop me a line. I'm a little curious. Is the bios file needed and if so, what for? It seems to work without it.

Good timing, BTW. I was just lookin through your source code.

Happy New Year,
John
 
1 - 20 of 44 Posts
Top