Jump to content
IGNORED

Why were emulators made in the first place?


Keatah

Recommended Posts

They were created for the ultimate pirates, that can't even be bothered to buy the hardware to play games, pirated or not.

 

I want everything for FREE!!!! Too bad you can't pirate food or rent. :roll:

 

No, a lot of us owned the hardware. Either we sold it, or it broke or it's packed away and inconvenient to pull out and hook up, or it just doesn't work very well anymore (disks degraded over time for example), emulation was a way for use to get a fix of the games we missed playing.

  • Like 2
Link to comment
Share on other sites

The PET emulator on the C64 is designed to match a PET 2001 with BASIC 2 (although some sites claim it can match a 4032 with BASIC 4 as well) and will intercept those POKEs and PEEKs the developer Bob Fairbairn was aware of. IIRC it only runs a smaller selection of software intended for 40 column PETs and boots with medium grey text on dark grey background instead of white on black like a 2001 or green on black like later PETs. The emulator consists of two files though, so the loader can be modified with different colour settings, as suggested elsewhere on the Internet.

 

Here is the manual, by the way: http://www.pcmuseum.ca/Brochures/MANC64PetEmulator.pdf

 

Also, the C128 has a VIC-II, a SID, a CPU that is binary compatible with the 6510 and the ROMs of a C64 so I wouldn't agree that the C128 emulates a C64, rather it runs a different operating system on reboot, just like a ZX Spectrum 128 or +2 can run in 128K mode or classic 48K mode, or a newer Amiga could be fitted with a Kickswitch to select which Kickstart version to boot.

 

Interesting perspective Carlsson, I can see how it's less clear with the C128 than with the CoCo3 but I think that the question is one of hardware vs software emulation.

 

The 3 has the same hardware as the older CoCo's except for the GIME chip emulating the VDG which is where it falls short.

 

My question then would be where is the C128 failing to emulate; what C64 games couldn't run and why?

 

It does sport most of the same hardware, but does it have all of it? I believe the Max modes are present but there must be some components that are different (hardware or software) and not properly emulating older C64 components, I'm not sure why else there could be any incompatibility issues; consider switching to the 8580 SID in the C128 and the C64c caused compatibility issues by not emulating all functions of the 6581.

 

The models of the Atari 2600 Jr with redesigned (and not fully compatible) TIA's may qualify as imperfect emulation on the hardware side too for failing to meet the spec properly, same with the Flashback2. The Gemini? Perfect hardware emulation.

  • Like 1
Link to comment
Share on other sites

Actually the topic whether the C128 emulates a C64 was brought up earlier today on the cbm-hackers mailing list. Not many people have shared their views so far though. I think it is easy to forget the word compatibility, so a newer revision of the hardware might have compatibility issues with some software or hardware expansions, while not really being a case of improper emulation. It probably is stretching it a bit too far to claim the Atari 2600 JR is a hardware based emulator of the original Atari 2600 series.

 

I don't know the CoCo series but I suppose the GIME chip was meant to replicate functionality of an older chip. Today we'd say it tried to emulate that chip through custom hardware, but then again wasn't the 6847 VDG itself a custom (but common) chip? When does a chip go from custom to common by the way, when the manufacturer begins to offer to multiple developers and other factories get to second source it?

 

What about various Apple II clones, both those who duplicated Apple's ROMs and later on Laser 128 which reimplemented the important routines so they escaped copyright infringement. Would we today refer to most of the clones as Apple emulators? Same about MS-DOS computers that for a long while were not fully IBM PC compatible. We are used to speak about PC clones, but as long as not the exact same chips and board layout is used, perhaps those are (often very good) PC emulators? Most people would think we've lost our common sense discussing in such terms.

  • Like 2
Link to comment
Share on other sites

Actually the topic whether the C128 emulates a C64 was brought up earlier today on the cbm-hackers mailing list. Not many people have shared their views so far though. I think it is easy to forget the word compatibility, so a newer revision of the hardware might have compatibility issues with some software or hardware expansions, while not really being a case of improper emulation. It probably is stretching it a bit too far to claim the Atari 2600 JR is a hardware based emulator of the original Atari 2600 series.

 

I don't know the CoCo series but I suppose the GIME chip was meant to replicate functionality of an older chip. Today we'd say it tried to emulate that chip through custom hardware, but then again wasn't the 6847 VDG itself a custom (but common) chip? When does a chip go from custom to common by the way, when the manufacturer begins to offer to multiple developers and other factories get to second source it?

 

What about various Apple II clones, both those who duplicated Apple's ROMs and later on Laser 128 which reimplemented the important routines so they escaped copyright infringement. Would we today refer to most of the clones as Apple emulators? Same about MS-DOS computers that for a long while were not fully IBM PC compatible. We are used to speak about PC clones, but as long as not the exact same chips and board layout is used, perhaps those are (often very good) PC emulators? Most people would think we've lost our common sense discussing in such terms.

 

Great example with the clones - I think when the IBM BIOS was reverse engineered this was certainly software emulation. For the long while before this when the MS-DOS computers weren't fully compatible too, just imperfect emulation like the Apple clones (the ones Apple couldn't sue).

 

I wonder how the DCMCA categorizes emulation; reverse engineering the IBM BIOS would no longer be allowed under it.

 

I think that sounds right for a chip going from custom to common.

 

If not emulation, what do we call hardware components that fall short of the spec like with the Atari Jr's produced with faulty TIA's or the Commodores with the 8580 SID chip?

 

The redesigns tend to have an emphasis on cost structure but there is a spec to maintain; once you change the code or the hardware you have to then ensure all existing functionality is maintained - we would never replace a dedicated chip with a raisin but making even a very small change that inadvertently breaks compatibility can amount to the same thing for the games that won't run anymore.

 

Perhaps there is a continuum and the more changes that are made to the hardware or the software, the more we move from modifying towards emulating the original design.

  • Like 1
Link to comment
Share on other sites

If not emulation, what do we call hardware components that fall short of the spec like with the Atari Jr's produced with faulty TIA's or the Commodores with the 8580 SID chip?

Feature incompatible revisions? I think in most cases, there is a specification how the chip should act and how to access it. I also believe that in most cases, newer revisions whether cost reduced or stability or feature improved, will actually follow the spec to 100%. The incompatibility lies in when certain programmers try to cut corners, find small anomalities in how the chip actually works - sometimes against the spec, always undocumented because the manufacturer didn't have a clue which also is the reason why a different implementation of the spec will not be compatible with the anomalities.

 

It brings us back to full software emulation. If you just read e.g. Commodore's original specification of how the VIC-II chip should work and what it supports, I believe it is fairly easy to emulate it and something which was finished in the early-mid 1990's, running on 486's and Pentium 1's. Now we know the VIC-II does a lot more amazing things than Commodore ever intended it should, but that in order to reproduce that it is not enough to be exact to the raster line, you need to be exact to the clock cycle or perhaps even more detailed to T-states inside the computer. This is why the hunt for perfect emulation is nearly infinite, as when you thought your emulator handles every case of misuse one can put the hardware through, some clever demo programmer will come up with a new form of graphic effect due to chip abuse. Your emulator won't handle this, and you have another cycle of reprogramming the VIC-II emulation ahead of you to catch up.

 

One of the latest trends is to take electron microscope images of the insides of the chips. Whether that will tell everything or not, I'm not sure.

  • Like 2
Link to comment
Share on other sites

Just read this related article about a cost reduced version of the c128 that turned out to be incompatible with the c128 for being too cost reduced, pretty interesting:

 

http://www.mos6502.com/commodore-tech-corner/how-the-c128-was-incompatible-with-the-c128/

 

Interesting. I have a 128DCR and have never run into an issue, although I can see from that piece why there might be (although I'd like some real-world software examples of some things that were affected). Frankly, on the surface, those incompatibilities still seem less egregious than some of the ones when moving between different Apple IIs, Amigas, or STs.

Link to comment
Share on other sites

Why were emulators made in the first place?

 

Was it so that we could play arcade games on our home computers?

 

Were they an exercise in programming? It seems like many a-good emulators have their roots in comp-sci classrom projects

 

Were they for commercial/private financial gain? You know, make something to make something to make money.

 

How about as an effort to preserve the games of the past? Many emulators seem to use this "excuse".

 

Maybe they were made as a utility to help facilitate classic computer usage in modern times.

 

Or how about a chance to relive the past.

 

Maybe just a simple "ohh look how cool this is.." type of thing?

 

It's all discussion fodder because I'm bored!

 

 

From a historical perspective, Emulators were primarily meant to interface one thing with another thing (eg a terminal emulator replaces a terminal, a cpu emulator replaces a several chips that make up the system core)

 

From a modern perspective, video game emulators are one part preservation and one part piracy. If it was only about preservation there would not be enough people working on them to justify the expense in dumping the roms. If it was only about piracy, then emulators would stop at "good enough" and we wouldn't have things like Higan and FPGA-based emulators which aim for perfect accuracy. Flashcarts/copiers and so forth were all originally about piracy until it became practical to homebrew a game, but primarily it's been an excuse for piracy.

 

The fact that the emulators exists at all, has been a boon to commercial software being able to be re-released with a price tag (Sega, Nintendo, Square-Enix, Electronic Arts, Atari, and so forth have all done this) even if the emulation has been only about getting a few bucks, that revives interest in those IP's.

 

The people who program emulators (especially FPGA versions) are usually doing so as personal challenge, and indeed if you search "FPGA" and some console or computer, you will usually find that some comp-sci or EE project about making an emulator. Software and Hardware emulators go hand in hand, and sometimes in order to create the FPGA you need a software emulator on a computer to step-through what a certain software does.

 

Preservation ultimately means being able to play a game exactly (or as exact-as-it-will-ever-get see CRT vs LCD) as it was intended by the developer, no cheats, no hacks, no intros, just the original cartridge and the original hardware. What drives faster preservation efforts are when old systems start dying by the hundreds or thousands (see the SNES CPU plague, or even the the oxidation of the plastic.) So when the original hardware stops being practical to use, re-engineered hardware (eg FPGA systems) and software emulators become the only way to play the original games.

 

That said, the number of people who legitimately own games they play on an emulator is pretty low. Format shifting arguments aside, the law is pretty clear that you can only backup software you purchased yourself, hence acquiring them from a friend, or over the internet, or video rental store is not going to fly. Since floppy discs and cd's will not last forever, there is a more legitimate preservation argument. For arcade PCB's and old computers, those CRT monitors only have a life span of about 30 years before they are too dim to be useful, and the power supplies are often proprietary designs. So preserving things like the Arcade machines are a race against time and poor documentation. Old computers are well documented, so it's just being able to salvage cartridges, disks and CD's before they rust/rot.

 

Like a lot of us may have a lot of old kit hanging around, but we have not yet begun to reach a time period where this stuff will be lost to us for good. We still do not have any permanent means of storing media (Flash memory actually decays if left untouched, magnetic media is slowly erased, cd's are made of plastic and warp or the recording layer rots) so there will be a need to keep preserving these things from the original media as long as possible to ensure there's no bit rot.

 

From the educational front, there are alternative ways of teaching people how old computers work (see "Human Resource Machine") in addition to just sitting someone down at an emulated 6502 or Z80. It's too bad that every computer didn't come with a version of BASIC still, on the 8-bit and 16-bit machines this was the best way of learning what that hardware actually does. Obviously on 32-bit machines BASIC becomes inadequate due to not being able to access low-level parts of the machine anymore.

 

Most millennials and younger have never used a real 8-bit machine. So they don't have the nostalgia factor required to preserve such machines. If you look around you'll typically find that 8-bit emulators are written by people in their 40's or older. Kids born after 2000 will look at things like the PS2 and go "wow is that ugly, how did you ever put up with those chunky graphics" and might not even be able to recognize the graphics on an Atari 2600 as being graphics. Much in the same way right now people look at low-resolution retro-inspired games and go "ew, why are they blocky looking" (my DAD, of all people did this, and I was playing the Scott Pilgrim game on the Xbox 360.)

 

If anything preservation efforts will become harder (it's currently not possible to play Xbox 360 or PS3 games on anything other than the original hardware) going forward. So all these Xbox Live games are going to vanish.

  • Like 1
Link to comment
Share on other sites

 

My question then would be where is the C128 failing to emulate; what C64 games couldn't run and why?

 

From Wikipedia (unfortunately doesn't include any examples of incompatible programs):

 

Some of the few C64 programs that fail on a C128 will run correctly when the CAPS LOCK key is pressed down (or the ASCII/National key on international C128 models). This has to do with the larger built-in I/O port of the C128's CPU. Whereas the SHIFT LOCK key found on both C64 and C128 is simply a mechanical latch for the left SHIFT key, the CAPS LOCK key on the C128 can be read via the 8502's built-in I/O port. A few C64 programs are confused by this extra I/O bit; keeping the CAPS LOCK key in the down position will force the I/O line low, matching the C64's configuration and resolving the issue.

 

A handful of C64 programs write to $D030 (53296), often as part of a loop initializing the VIC-II chip registers. This memory-mapped register, unused in the C64, determines the system clock rate. Since this register is fully functional in C64 mode, an inadvertent write can scramble the 40-column display by switching the CPU over to 2–MHz, at which clock rate the VIC-II video processor cannot produce a coherent display.

 

*EDIT* Found this info with a quick search on lemon64:

Another cause of C64 programs not working on the C128 in C64 mode is that the SID register mirror images are missing on the C128 in C64 mode. At $D500, MMU registers exist on the C128 (invisible in C64 mode) and at $D600 the VDC port registers are placed.

 

Wanted! Monty Mole, Frantic Freddie, Hawkeye, Delta, Scrolls of Abadon, Rescue on Fractalus, and Masters of the Universe have been mentioned as games either not working, glitchy, or missing music when run on a C128.

Edited by krslam
Link to comment
Share on other sites

I don't see the benefits of addressing the SID chip at a mirror position other than the intended location, unless some musician didn't have the full spec and worked out their routines based on trial and error and happened to find a memory location where it happened to be working.

 

That is interesting when it comes to full software emulation too, if there is otherwise unconnected address space that may have multiple uses, either as mirrored I/O space or used by external expansions. It will require a set of configuration options of the emulator which extra hardware or hardware glitches it should emulate. I recently read about VSP glitches due to RAM disruption, and which emulators will correctly emulate that behavior, which clearly is not part of the C64 specification but rather a misuse of a hardware issue.

Link to comment
Share on other sites

 

From a modern perspective, video game emulators are one part preservation and one part piracy. If it was only about preservation there would not be enough people working on them to justify the expense in dumping the roms. If it was only about piracy, then emulators would stop at "good enough" and we wouldn't have things like Higan and FPGA-based emulators which aim for perfect accuracy. Flashcarts/copiers and so forth were all originally about piracy until it became practical to homebrew a game, but primarily it's been an excuse for piracy.

 

 

True.. Mame claims to be about preserving the games for people with the original hardware and roms, but then everytime they go and rename a romset and people ask why X game no longer works, the answer is "just go download a new romset!"-- so they are legitimizing the pirate rom sites even though they are supposedly not about that.

Link to comment
Share on other sites

 

True.. Mame claims to be about preserving the games for people with the original hardware and roms, but then everytime they go and rename a romset and people ask why X game no longer works, the answer is "just go download a new romset!"-- so they are legitimizing the pirate rom sites even though they are supposedly not about that.

 

The same can be said about "romsets" for game consoles, as I've seen twice now in other threads references to NES romsets.

 

My personal opinion is split down the middle about piracy. If piracy didn't exist, all these games would just vanish, and when commercial entities go bankrupt and their assets sold off, some of these companies don't even realize they are sitting on something valuable. This is the rather backhanded moral imperative to pirate everything. That is why working "romsets" end up being created for computers, consoles and arcade games, otherwise there is no viable way of re-implementing the hardware if there is no known-good version of software. I will lose no sleep over seeing pirated ROM's as long as the original company isn't selling a license to use the ROM's themselves. What we learned from the mp3 race to put music online, is that the casual piracy doesn't even hurt sales, and the opposite is true, not making the software/music/film able to be accessed is what increases piracy of low-quality copies. When you offer a convenient alternate (eg Wii Virtual Console) that imperative to pirate the game goes away until that console is no longer able to use the alternative, and then it's back to the race to preserve software again. I'm sure half the Wii/WiiU/Xbox Live/PSN titles that were download-only are going to be lost.

 

The kinds of software we will rarely ever see resurrected are licensed titles (eg movie/tv licences) as the original license holder will not see any value in resurrecting old software and arcade machines (I've seen this exactly twice so far) and if someone else holds the license, that old software is likely to never see the light of day again. Going back to my original example and adding one. The "Scott Pilgrim" game is a movie license, it's since been pulled and the game is no longer available, the only way you can get this game (and all the DLC) is by finding someone who bought it on their xbox 360 or PS3 when it was out and borrowing the entire console.) A similar thing happened with "The Simpsons Arcade game", where Konami re-released it for Xbox/PSN and then pulled it, where EA created a new game inspired by the original game for mobile. The Ducktales NES game got completely re-engineered by Wayforward which involved both Capcom and Disney, and they remanufactured 150 of the original NES carts (gold with new label) for a promotion for it.

 

I kinda wish there was the same level of enthusiasm for licensed video games as there are for licensed comics. Obviously the IP holders know the IP has value, but still seem soured on licensed games (due to their bad reputation overall.)

 

Which goes back to the original question about the purpose of emulation. If emulators are released under permissive licenses (BSD, not GPL) then the original IP holder has zero reason to just sit on the IP, when they can quite literately get a pirate copy of their own game that was preserved by the pirates, and a working emulator, package it in some kind of GUI wrapper or GUI+steam-achievement wrapper and sell it again. People are more than happy to buy something again and again on their newer devices as long as the IP holder isn't sueing their fans.

  • Like 2
Link to comment
Share on other sites

Remember when copying CDs was prohibitively expensive?

I remember putting the write speed to the lowest setting, and nobody daring approach the computer while it burned in hopes it didn't fail the burn and ruin the quite expensive CDRs of the time. I did like how those golden discs looked though.

  • Like 3
Link to comment
Share on other sites

I wonder what the MAME team thinks of the new FPGA recreations and how they're eclipsing software emulation from a desirability standpoint?

I'd imagine they see it complementary to their efforts. Anyway, an FPGA MAME is probably a decade away if not more...

Edited by Newsdee
Link to comment
Share on other sites

First emulation i got my hands on was for DOS games, as when the years rolled by the family computer was running newer versions and not backwards compatible with DOS programs. A few years later i discovered emulators popping up for consoles so jumped onto the boat. Nowadays i actually enjoy collecting ROMs for all systems, not so much for 'free games' but rather as a hobby. Basically the same as i did with all my DOS games and console games back in the day, many friends and family would ask why im holding onto all this old software, i don't really know i just enjoy collecting software :)

Link to comment
Share on other sites

  • 2 weeks later...

I wish Nintendo would sell, to any of us that are interested, the rights to play all the games in a given console's library. How much could they charge? I would be willing to pay $300 for the SNES library for example. But Nintendo doesn't own the rights to many of the games that have come out on the system. Yes they own plenty, but not all. To do this they would have to re-license them from Capcom, etc. which costs great deals of money and would be cost prohibitive. Besides, many of the companies that produced games for consoles in the 80's and 90's are no longer in business. Nintendo clearly does not like rom pirates, but they refuse to provide us with a viable alternative. They would prefer you forget all about the games of your childhood and buy a Switch or two. It appears that their hands are tied. Nintendo's failure to provide any legal way to purchase these games makes them abandonware. But wait! Here comes the NES classic edition! Play 30 games on a miniature NES for $60. How cute. But they made no where near enough of these units, so you can buy a scalped one for $150. But wait, the NES classic edition has been hacked! Now you can play almost all the NES library on your hacked, scalped NES Classic. Thanks Nintendo.

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