Hardware assisted Games (split/OT from: Path to Wizard of Wor)

Modding and Technical Issues

Moderator: Moderators

User avatar
akator
Vic 20 Afficionado
Posts: 328
Joined: Wed Apr 14, 2010 6:01 pm

Re: Hardware assisted Games

Post by akator »

For me it boils down to this: I use an obsolete home computer released 37 years ago for enjoyment, appreciation of its uniqueness and "personality." I want my personal VIC experience to be a VIC experience, not a C64 or Apple II or Atari 800 or a modern computing experience. For my personal use I also like it more when the core hardware is left within original specs and limitations. Seeing Wizard of Wor or other awesome games on our VICs is more impressive when it runs on the original hardware.

I'm all for modern solutions that emulate obsolete peripherals. WiFi modems, floppy and tape emulators, these make using the original hardware more convenient in the modern age without too much compromise.

However, I'm very interested in the super cool projects and innovative projects pushing old hardware to new heights. These are fantastic things to learn about and the creativity of others inspires me.

To use the Atari 2600 again as an example, there was a 4K Pac-Man developed several years ago that not only recreated a much more accurate version of the game on the 2600, it squeezed all of that into 4K that ran on original hardware with no assistance. Amazing. Of course, it wasn't possible to do that back in the day. This accomplishment required modern programming tools that weren't available to original Atari game programmers, let alone the time to create it that wasn't afforded the Atari employees on tight release schedules. But that doesn't change the awesomeness of the accomplishment because no one ever thought they would see a version of Pac-Man that good on a 2600.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: Hardware assisted Games

Post by orion70 »

It would be great to have a good (con)version of WoW in a plain expanded VIC, although our Hardware and Tech section is full of expansions/superVICs where the mere original machine is comparable to a relic between modern warships :)
So yes, the two things should be kept separate, but then again, Jeff would argue that only his 3K games are true VIC!
User avatar
beamrider
Vic 20 Scientist
Posts: 1452
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: Hardware assisted Games

Post by beamrider »

I've no objection to assisted games so long as they are clearly marketed as such. Judging by the 2600 I don't think this is the case. I see many comments on YouTube pertaining to how much cleverer today's devs are..

And back to the OT, yes would love to see WOW especially by VicTragic :P
User avatar
tokra
Vic 20 Scientist
Posts: 1123
Joined: Tue Apr 27, 2010 5:32 pm
Location: Scheessel, Germany

Re: Hardware assisted Games

Post by tokra »

To each his own. I think it's perfectly fine if people want to create a VIC-2000 like in another thread. Personally I have very little interest in it, but this should not keep people from experimenting. It only becomes problematic when people create those elaborate hardware-expansion and suddenly expect everyone else to write software for it. Not gonna happen. Even for very minor hardware-modifications like the VFLI-mod by Mike there exist only the few programs done by himself. You can see how problematic even 35K-expansion is. When Kweepa released his Doom-port some years ago only a handful of people could play it on original hardware, as most expansions out there where switchable 32K-expansions that could either present the 3K-area or BLK5 but not both together. In the meantime more 35K-expanders showed up, probaby just for the fact that if you want to play Doom on the VIC you needed it. So sometimes it is the other way around. First you need the killer-app that makes people get the necessary hardware :-)

That being said: A WoW-port by Victragic, beamrider and/or a team-work of everyone here would be welcomed. It is *the* vapor-ware for the VIC and the blank-spot in the VIC-games-collection that needs to be filled :mrgreen:
User avatar
Victragic
Frogger '07
Posts: 605
Joined: Tue Nov 14, 2006 5:56 pm
Location: South Australia

Re: Hardware assisted Games

Post by Victragic »

Tempting, Beamrider and Tokra, but..

It is *the* blank spot that needs to be filled. That is true. By the original Commodore cartridge. Nothing else is going to satisfy *that* particular void.
3^4 is 81.0000001
User avatar
Ghislain
Realms of Quest
Posts: 1280
Joined: Sun Aug 08, 2004 12:54 am

Re: Path to Wizard of Wor

Post by Ghislain »

bills442 wrote:I pretty much agree with everyone's points; although It does make me think. Someone here, or somewhere, made a wise point that anyone that even programs these old machines is doing so out of nostalgia or 'sport'. The sport comment I really loved. As a 'sport' I could see it being fascinating to abuse a 30+ year old machine as a 'terminal' or 'GPU' just to see what might be done with it, but from a nostalgia viewpoint, I have to pretty strongly side with the viewpoint of: it has to have been feasible back in the day
This guy made an NES cartridge with a Raspberry Pi that emulates the Super Nintendo, so you can play 16-bit games on an 8-bit system.

https://www.youtube.com/watch?v=ar9WRwCiSr0
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
beamrider
Vic 20 Scientist
Posts: 1452
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: Hardware assisted Games

Post by beamrider »

that's impressive.

On the Vic since we can't directly access the Vic chip, I think the best option would be a dynamically generated stabilised raster routine in (assisted) expansion memory containing LDA/STA's that first updated the changed character/colour cells during the VBI followed by inline raster splits to increase colour resolution.
User avatar
Mike
Herr VC
Posts: 4842
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Hardware assisted Games

Post by Mike »

tokra wrote:It only becomes problematic when people create those elaborate hardware-expansion and suddenly expect everyone else to write software for it. Not gonna happen. Even for very minor hardware-modifications like the VFLI-mod by Mike there exist only the few programs done by himself.
For the VFLI mod, I had an exact application in mind. I thought out the minimum necessary modification on the VIC-20 mainboard to pull off that feat, did the necessary display drivers for PAL and NTSC and wrote the PC-based picture converter. Plus a few extra tools: a tool to move the screen down to $0400, which gives 31231 BYTES FREE for BASIC; a tool to detect the presence of the internal RAM expansion (as opposed to an external +3K expansion, which won't provide the intended function); and a program to display the 'original' MAXIGRAFIK pictures (208x256 with 8x16 attributes and 3 global colours) with essentially 0% CPU load.

One couldn't expect me to add other (software) releases to this list, given the known installed base of exactly 2 (read: two) modified VIC-20s (freshlamb's and mine). Doesn't matter in that regard that even VICE supports the VFLI mod - the point is you want to see this on real hardware!

My mod has a slight advantage though to some other hardware enhancements briefly mentioned here (TLovskog's GCart 2011, someone's "SuperCPU", and someone's else's "VIC-20 Jetpack"/"VIC-2000"/"VGER-20"/whatever spring to my mind): the VFLI mod actually exists with all necessary documentation for all people to reproduce it. Given the necessary soldering skills or access to an electronic workshop.
Ghislain wrote:I’m waiting for a 37K game myself. ;)
I gave my 2 cents about the use of the I/O area as RAM by third party applications in other threads here already. To repeat, the only legit user of that area is the firmware of the cartridge in question. Other programs have no way to assess what's "there" in $9800..$9FFF. Inconsiderate writes to and even read accesses from that area can activate functions other than byte storage, possibly annoying quite a few of Mega-Cart, Ultimem, VIC-1112 IEEE and other affected cartridge users out there. That's the reason I explicitly prompt the user in my most recent RAM test program whether it should include the I/O area for detection and tests.

That being said, I absolutely have no objections against programs that use the +35K RAM configuration. :) Even for the most prominent example, VIC Doom, its release also only came some years after availability of Mega-Cart, so that guaranteed the necessary minimal audience on real hardware. Even if Mega-Cart now seems to be discontinued, other RAM expansion solutions picked up the baton.
akator wrote:I'm all for modern solutions that emulate obsolete peripherals. WiFi modems, floppy and tape emulators, these make using the original hardware more convenient in the modern age without too much compromise.
+1

I wouldn't want to set up an original CBM floppy drive nowadays anymore. Too much hassle handling the floppies, mechanical wear on drive and media included. SD2IEC does 99.999% of the job for me (except where the sd2iec firmware still doesn't support REL files and CBM partitions in disk images ... and the inclusion of the Hypra-System drive protocol would have been nice to have, well ... the JD protocol makes up for this).

...

Given the other aspects of programs assisted by external hardware: whoever decides to go that route, the audience for suchalike games (or tools?) on real hardware will naturally be limited to those who bought the cartridge. That need not be a bad thing - at least people are then going to pay for this, and can't anymore go cheap ... however (and back to topic) I think WoW can easily be realised by a 16K ROM cartridge (modulo speech synthesis).

Volunteers, one step forward! :mrgreen:
User avatar
beamrider
Vic 20 Scientist
Posts: 1452
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: Hardware assisted Games

Post by beamrider »

Mike wrote: Given the other aspects of programs assisted by external hardware: whoever decides to go that route, the audience for suchalike games (or tools?) on real hardware will naturally be limited to those who bought the cartridge. That need not be a bad thing - at least people are then going to pay for this, and can't anymore go cheap
just a thought.. C++ source code is readily available for Super-Mario, so that would make a good starting point for an assisted cartridge!
Last edited by beamrider on Fri Nov 30, 2018 9:16 am, edited 2 times in total.
User avatar
Mike
Herr VC
Posts: 4842
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Hardware assisted Games

Post by Mike »

beamrider wrote:just a thought.. C++ source code is readily available for Super-Mario, so that would make a good starting point for an assisted cartridge!
Yeah, should be as easy as pie, and Denial even has yet another thread devoted to that project! :lol:
User avatar
beamrider
Vic 20 Scientist
Posts: 1452
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: Hardware assisted Games

Post by beamrider »

yeah I think that was intended as non-assisted though.

Going off topic here, on a thread that is already an OT split...sorry, but it just occurred to me that I wouldn't mind "technical-spiking" this approach "Assisted SuperMario". I'm not a hardware guy so would need to use VICE. What would be needed would be some kind of modification [to VICE] such that it allowed some of the Vic's external RAM blocks to be updated by another process/thread. Anyone with a more intimate knowledge of VICE internals know what the feasibility of this would be?

If we could demo this working in VICE, might tempt someone to make the hardware.
Last edited by beamrider on Fri Nov 30, 2018 9:44 am, edited 1 time in total.
User avatar
Mike
Herr VC
Posts: 4842
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Hardware assisted Games

Post by Mike »

beamrider wrote:If we could demo this working in VICE, might temp someone to make the hardware.
It's actually the other way round: if someone makes the (exactly defined!) hardware first, then, and only then, *this* might 'temp' someone of the VICE team to include the new hardware into the emulation.

It's already difficult enough to get to near 100% compatibility with existing hardware. It can't be the business of an emulator to provide effects not (yet) achievable on real hardware. The hardware guys have to deliver first. Otherwise the VICE team would quickly run into a shifting sands scenario, given the creeping featurism (or hibernation mode?) of quite some hardware projects here.


Edit: also look for a similar enquiry here in another thread ...
User avatar
beamrider
Vic 20 Scientist
Posts: 1452
Joined: Sun Oct 17, 2010 2:28 pm
Location: UK

Re: Hardware assisted Games

Post by beamrider »

Sorry, maybe I wasn't clear, I'm not expecting anyone else to do this for me. I just wanted a heads up on what would be involved in modifying the VICE build from someone more familiar with the source code, i.e. where to hook in updating the modelled Vic RAM and any issues I might get running up a separate thread etc. I suppose I could always dig through the source myself if needed.
User avatar
Mike
Herr VC
Posts: 4842
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: Hardware assisted Games

Post by Mike »

No worries.

What you want compares to what bigger debugger tools like ICU64 already do for x64. There, an external application displays the internal state of x64 quite extensively (including a complete dump of the entire RAM), and what you can read you ought in principle also be able write to. :)

I'd think the OS needs to provide a shared and protected memory range between two independent applications to achieve this with minimum overhead. The poor man's method would involve sending commands to the built-in monitor of VICE. You'll anyhow need some synchronisation method between (emulated) VIC-20 and "hardware assist". How this construction then translates to a real VIC-20 + cartridge + PC "feeding" the cartridge RAM is yet another matter.
User avatar
topcat
Vic 20 Drifter
Posts: 26
Joined: Fri Dec 16, 2016 12:57 pm
Location: London
Occupation: Broadcast R&D

Re: Hardware assisted Games

Post by topcat »

This fits into a category of getting the best performance possible from an unmodified VIC.
Imagine an alien cartridge appeared in the shops in 1984, you plugged it into your VIC and it acted as a co-processor to boost all calculations. Making the main job of the VIC to copy the video pages the cartridge produced out to the screen memory.
That sounds like a very interesting proposition!
Post Reply