+hloberg Posted August 27, 2014 Share Posted August 27, 2014 I played the cartridge version of Parsec and the GROM emulator version (off my CF7) last night and the real cartridge 'seemed' slightly more responsive. Was that true or am I just seeing things? IS there any difference between the two. Quote Link to comment Share on other sites More sharing options...
ti99_forever Posted August 27, 2014 Share Posted August 27, 2014 It always seemed that way to me too. Quote Link to comment Share on other sites More sharing options...
ti99iuc Posted August 27, 2014 Share Posted August 27, 2014 I played the cartridge version of Parsec and the GROM emulator version (off my CF7) last night and the real cartridge 'seemed' slightly more responsive. Was that true or am I just seeing things? IS there any difference between the two. i have several version of parsec on my web site DataBase Section Download (bottom of the page)... maybe could you try them if there are some differences from yours ? >>HERE<< Quote Link to comment Share on other sites More sharing options...
+hloberg Posted August 27, 2014 Author Share Posted August 27, 2014 i have several version of parsec on my web site DataBase Section Download (bottom of the page)... maybe could you try them if there are some differences from yours ? >>HERE<< thanks. will do. Quote Link to comment Share on other sites More sharing options...
Gary from OPA Posted August 27, 2014 Share Posted August 27, 2014 Are you using speech while playing it? Quote Link to comment Share on other sites More sharing options...
+hloberg Posted August 27, 2014 Author Share Posted August 27, 2014 (edited) yes, in both cases. my general question is there a difference between the cart use of GROM and the emulated use of GROM. how does the GROM emulators work? Edited August 27, 2014 by hloberg Quote Link to comment Share on other sites More sharing options...
Gary from OPA Posted August 27, 2014 Share Posted August 27, 2014 yes, in both cases. my general question is there a difference between the cart use of GROM and the emulated use of GROM. how does the GROM emulators work? Try it without the speech. There should not be much of a different the GROM emulator all it does it make a few changes in pointers to cause the actual console rom to fetch opcodes from ram instead of grom. But when you have speech, the way it handles the bus, it shutdowns outside access, freezing the 32k ram from being able to send new opcodes, so on parsec you get periods of frozen flow. Quote Link to comment Share on other sites More sharing options...
+hloberg Posted August 27, 2014 Author Share Posted August 27, 2014 Try it without the speech. There should not be much of a different the GROM emulator all it does it make a few changes in pointers to cause the actual console rom to fetch opcodes from ram instead of grom. But when you have speech, the way it handles the bus, it shutdowns outside access, freezing the 32k ram from being able to send new opcodes, so on parsec you get periods of frozen flow. Interesting. I never knew that about the speech. so if the emulated GROM has speech then it will have problems access the new opcodes? Is this only when the speech is accessed? Quote Link to comment Share on other sites More sharing options...
Gary from OPA Posted August 27, 2014 Share Posted August 27, 2014 Interesting. I never knew that about the speech. so if the emulated GROM has speech then it will have problems access the new opcodes? Is this only when the speech is accessed? Yep, anything to right of speech bus has a large delay before it can operate again, mainly the 32k ram, disk controller, rs232 interface, stuff like that. Internal console ram, video, grom, cartridge port does not have that problem. So emulated groms in 32k ram will have a bit of problem while speech is playing, parsec even more so as it is custom speech, needing a flow of speech data, instead of words from prerecorded library. 1 Quote Link to comment Share on other sites More sharing options...
Willsy Posted August 28, 2014 Share Posted August 28, 2014 Do these programs come with an embedded GPL emulator, or are they using (somehow) the GPL virtual machine in the console ROMs? If the former, then that would be running on the 8-bit bus, whereas the GPL VM in the console is on a pure 16-bit, 0 wait-state bus. Quote Link to comment Share on other sites More sharing options...
gregallenwarner Posted August 28, 2014 Share Posted August 28, 2014 I've always wondered this myself. I have a copy of Parsec on a floppy that loads into 32K memory, so I just assumed the game was originally written in Assembly, not GPL. I didn't even think there was a way of emulating or running GPL code from main memory. I always thought it REQUIRED a GROM-port mapped memory space. I'd be interested in more of the technical details on how this was pulled off. Quote Link to comment Share on other sites More sharing options...
TI-Sissy Posted August 28, 2014 Share Posted August 28, 2014 is it possible to make a sams for the 16 bit buss? how about 64k on the 16 bit buss? Quote Link to comment Share on other sites More sharing options...
+hloberg Posted August 28, 2014 Author Share Posted August 28, 2014 (edited) What I understand the GPL is laid out into the 32k mem area then the GPL VM is redirected to point to that memory as if it's GPL memory. How it does that????? Gary, Tursi, anyone want to give us a mini lesson on the subject? Edited August 28, 2014 by hloberg Quote Link to comment Share on other sites More sharing options...
Asmusr Posted August 28, 2014 Share Posted August 28, 2014 There should not be much of a different the GROM emulator all it does it make a few changes in pointers to cause the actual console rom to fetch opcodes from ram instead of grom. I would have thought you would have to run a modified version of the interpreter in RAM, at least of the main loop. How else would you deal with the fact that GROMs automatically return the next byte with every read? Making the interpreter read from VDP RAM would probably be easier since it behaves pretty much like a GROM. Looking at the code, the interpreter seems to be reading everything from an address stored in R13, which is usually the GROM read data address. Quote Link to comment Share on other sites More sharing options...
Gary from OPA Posted August 28, 2014 Share Posted August 28, 2014 I would have thought you would have to run a modified version of the interpreter in RAM, at least of the main loop. How else would you deal with the fact that GROMs automatically return the next byte with every read? Making the interpreter read from VDP RAM would probably be easier since it behaves pretty much like a GROM. Looking at the code, the interpreter seems to be reading everything from an address stored in R13, which is usually the GROM read data address. There is two versions out there by Barry Boone, one is full but code runs slower, and one is fast using the console rom but not as compatible: You may have seen my disk based GPL interpreter floating around too. 13-14 sectors in size for the "fast" one which was 95% compatible with most dumped GROM's. The other was 33 sectors and was a full blown GPL interpreter, but it ran slow due to all the code running from 8 bit memory. It was however 99% compatible with dumped GROM carts. The fast version hopped in and out of the console ROM which sped things up a lot. It was the experience of doing this code that later led to the creation of EXEC for the Geneve. In this thread you there is attached another version of the code: http://atariage.com/forums/topic/159291-gpl-interpreter-emulator-assembly-re-write/ Someplace around here is the full version, and I think there is commented version somewhere in my archives stored away. Quote Link to comment Share on other sites More sharing options...
Tursi Posted August 30, 2014 Share Posted August 30, 2014 What I understand the GPL is laid out into the 32k mem area then the GPL VM is redirected to point to that memory as if it's GPL memory. How it does that????? Gary, Tursi, anyone want to give us a mini lesson on the subject? Tursi always wondered this one too Quote Link to comment Share on other sites More sharing options...
RXB Posted August 30, 2014 Share Posted August 30, 2014 Tursi always wondered this one too GPL can run from GRAM or GROM or VDP but Tursi already knew this. I think this is a case of wanting to use the GPL LINKER from the GPL HOW2 videos I have done? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.