Why are different emulators needed to run platforms that use 6502 assembly code?
Clash Royale CLAN TAG#URR8PPP
up vote
1
down vote
favorite
To my knowlage, an emulator turns machine code for a console into something that your computer can understand. For example, assembly code from a Gamecube game is not the same as from a .exe file. That said, why are multiple emulators needed to run games that are on platforms that run 6502 code. Shouldn't there just be a 6502 emulator that runs all 6502 platforms?
emulation 6502 microprocessor
New contributor
add a comment |Â
up vote
1
down vote
favorite
To my knowlage, an emulator turns machine code for a console into something that your computer can understand. For example, assembly code from a Gamecube game is not the same as from a .exe file. That said, why are multiple emulators needed to run games that are on platforms that run 6502 code. Shouldn't there just be a 6502 emulator that runs all 6502 platforms?
emulation 6502 microprocessor
New contributor
add a comment |Â
up vote
1
down vote
favorite
up vote
1
down vote
favorite
To my knowlage, an emulator turns machine code for a console into something that your computer can understand. For example, assembly code from a Gamecube game is not the same as from a .exe file. That said, why are multiple emulators needed to run games that are on platforms that run 6502 code. Shouldn't there just be a 6502 emulator that runs all 6502 platforms?
emulation 6502 microprocessor
New contributor
To my knowlage, an emulator turns machine code for a console into something that your computer can understand. For example, assembly code from a Gamecube game is not the same as from a .exe file. That said, why are multiple emulators needed to run games that are on platforms that run 6502 code. Shouldn't there just be a 6502 emulator that runs all 6502 platforms?
emulation 6502 microprocessor
emulation 6502 microprocessor
New contributor
New contributor
New contributor
asked 3 hours ago
Jonathan O'Brady
406
406
New contributor
New contributor
add a comment |Â
add a comment |Â
2 Answers
2
active
oldest
votes
up vote
0
down vote
accepted
While 6502 was common, it wasn't the exact same thing between two different machines. That's where the term "modified 6502" comes from. Also, there are emulators that run multiple platforms, like Bizhawk.
add a comment |Â
up vote
4
down vote
There are many answers to this and none might satisfy you.
First of all, an Emulator doesn't just do a CPU, but a machine. The same way you can't run an NES game on an Apple II. So while one may do multiple ones, different can do the hob as well.
Furthermore, there are different target platforms. Linux isn't Windows which again isn't MacOS and so on. Like any other application an emulator needs to interact with the platform it's runing on - especially for tasks like timing and graphics on frame level a rather tight integration is needed - unsing functions that are greaty different on each OS
Similar, not only OSes do provide an enironment to adapt to, generic Emulators (like Mame), or Browsers do as well, requireing similat adaptions.
Last but not least, since when has the existance of an implementation (here a 6502 Emulator) ever stoped a developer from writing his own implementation?
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
1
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
1
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
add a comment |Â
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
While 6502 was common, it wasn't the exact same thing between two different machines. That's where the term "modified 6502" comes from. Also, there are emulators that run multiple platforms, like Bizhawk.
add a comment |Â
up vote
0
down vote
accepted
While 6502 was common, it wasn't the exact same thing between two different machines. That's where the term "modified 6502" comes from. Also, there are emulators that run multiple platforms, like Bizhawk.
add a comment |Â
up vote
0
down vote
accepted
up vote
0
down vote
accepted
While 6502 was common, it wasn't the exact same thing between two different machines. That's where the term "modified 6502" comes from. Also, there are emulators that run multiple platforms, like Bizhawk.
While 6502 was common, it wasn't the exact same thing between two different machines. That's where the term "modified 6502" comes from. Also, there are emulators that run multiple platforms, like Bizhawk.
answered 3 hours ago
Jack Kasbrack
15212
15212
add a comment |Â
add a comment |Â
up vote
4
down vote
There are many answers to this and none might satisfy you.
First of all, an Emulator doesn't just do a CPU, but a machine. The same way you can't run an NES game on an Apple II. So while one may do multiple ones, different can do the hob as well.
Furthermore, there are different target platforms. Linux isn't Windows which again isn't MacOS and so on. Like any other application an emulator needs to interact with the platform it's runing on - especially for tasks like timing and graphics on frame level a rather tight integration is needed - unsing functions that are greaty different on each OS
Similar, not only OSes do provide an enironment to adapt to, generic Emulators (like Mame), or Browsers do as well, requireing similat adaptions.
Last but not least, since when has the existance of an implementation (here a 6502 Emulator) ever stoped a developer from writing his own implementation?
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
1
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
1
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
add a comment |Â
up vote
4
down vote
There are many answers to this and none might satisfy you.
First of all, an Emulator doesn't just do a CPU, but a machine. The same way you can't run an NES game on an Apple II. So while one may do multiple ones, different can do the hob as well.
Furthermore, there are different target platforms. Linux isn't Windows which again isn't MacOS and so on. Like any other application an emulator needs to interact with the platform it's runing on - especially for tasks like timing and graphics on frame level a rather tight integration is needed - unsing functions that are greaty different on each OS
Similar, not only OSes do provide an enironment to adapt to, generic Emulators (like Mame), or Browsers do as well, requireing similat adaptions.
Last but not least, since when has the existance of an implementation (here a 6502 Emulator) ever stoped a developer from writing his own implementation?
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
1
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
1
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
add a comment |Â
up vote
4
down vote
up vote
4
down vote
There are many answers to this and none might satisfy you.
First of all, an Emulator doesn't just do a CPU, but a machine. The same way you can't run an NES game on an Apple II. So while one may do multiple ones, different can do the hob as well.
Furthermore, there are different target platforms. Linux isn't Windows which again isn't MacOS and so on. Like any other application an emulator needs to interact with the platform it's runing on - especially for tasks like timing and graphics on frame level a rather tight integration is needed - unsing functions that are greaty different on each OS
Similar, not only OSes do provide an enironment to adapt to, generic Emulators (like Mame), or Browsers do as well, requireing similat adaptions.
Last but not least, since when has the existance of an implementation (here a 6502 Emulator) ever stoped a developer from writing his own implementation?
There are many answers to this and none might satisfy you.
First of all, an Emulator doesn't just do a CPU, but a machine. The same way you can't run an NES game on an Apple II. So while one may do multiple ones, different can do the hob as well.
Furthermore, there are different target platforms. Linux isn't Windows which again isn't MacOS and so on. Like any other application an emulator needs to interact with the platform it's runing on - especially for tasks like timing and graphics on frame level a rather tight integration is needed - unsing functions that are greaty different on each OS
Similar, not only OSes do provide an enironment to adapt to, generic Emulators (like Mame), or Browsers do as well, requireing similat adaptions.
Last but not least, since when has the existance of an implementation (here a 6502 Emulator) ever stoped a developer from writing his own implementation?
edited 2 hours ago
Jonathan O'Brady
406
406
answered 3 hours ago
Raffzahn
40k489164
40k489164
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
1
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
1
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
add a comment |Â
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
1
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
1
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
But why is (for example) an NES emulator for windows not compatible with running Apple II roms on windows. Both are 6502 machines.
â Jonathan O'Brady
3 hours ago
1
1
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
@JonathanO'Brady: The NES and the Apple II have different hardware, and memory layout. For example, Apple II has low-res and hi-res graphics, and NES doesn't have that distinction.
â Greg Hewgill
2 hours ago
1
1
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
Because they are different machines and different architectures? They got their I/O on different addresses, have different screen layouts and capabilities. It's the same way why you can't run an Apple II program on a NES and vice versa.
â Raffzahn
2 hours ago
add a comment |Â
Jonathan O'Brady is a new contributor. Be nice, and check out our Code of Conduct.
Jonathan O'Brady is a new contributor. Be nice, and check out our Code of Conduct.
Jonathan O'Brady is a new contributor. Be nice, and check out our Code of Conduct.
Jonathan O'Brady is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fretrocomputing.stackexchange.com%2fquestions%2f8105%2fwhy-are-different-emulators-needed-to-run-platforms-that-use-6502-assembly-code%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password