Thread: Plausible or not?

  1. #1
    Registered User Sickjin's Avatar
    Join Date
    Jan 2011
    Posts
    6

    Question Plausible or not?

    I'll start by saying that my long term goal over the next few years is to get a crappy 8-bit game connected to the internet. Knowing this, I set out to see what my options were. First place I looked was the NES, and how pre-1985 programmers did things. I learned that the NES is programmed mostly on a specific dialect of Assembly (specifically 6502-Assembly), and that later on someone created a C-compiler for it (65c02-Assembly). I also learned that one of the best ways to get something online is Java and its net plugs.

    My question is this, please try to ignore my ignorance on terminology and technology: if I learn 6502-Assembly (I got the basics of it over the last week and messed around with a P65 Assembler that was programmed in Python (had to mess around in Python and still don't understand it)) and program a game using a combination of a C-compatible 65c02 Assembler and C, could I then somehow transport it to Java to program the rest of the game? My concerns are this:

    1. That transferring the C code into Java would cause problems with the 65c02 Assembler's C-compiler, or that Java is not compatible with Assembly.

    2. That a game programmed in Assembly and C could not be continued in Java due to problems unknown to me.

    3. That any game that resulted would be so demanding on a server that I would end up having to make it a downloadable client, which I don't really want to do (I want to keep it either in-browser, or with downloadable content that makes running the game much easier on my end).

    Any insight into these or any other problems you can see would be greatly appreciated.

  2. #2
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    Do you have a specific problem we can help you with?

  3. #3
    Registered User Sickjin's Avatar
    Join Date
    Jan 2011
    Posts
    6
    just the 3 questions that I asked. I want to know if this entire project and multiple languages is plausible, or if I should just do this all in Java somehow.

  4. #4
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    Ok then I'm moving this to the Tech board.

  5. #5
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,659
    Getting software that runs on archaic hardware to run on modern machines is typically done in one of two ways.

    The first is emulation, where a program interprets the original program at the machine code level, and figures out what it would do on the archaic hardware (say draw a pixel), and faithfully mimic that on the modern hardware.

    The second is to basically re-write the software from scratch.

    > and that later on someone created a C-compiler for it (65c02-Assembly).
    The 'C' in 65C02 refers to CMOS, which is a later chip technology (mostly lower power) than NMOS used in the original 6502 processor.
    The 'C' version fixed some bugs, and added a few instructions. This necessitated writing a new assembler.

    It really depends on what you mean by "online".
    If the original game had a "head to head" mode, where you physically plugged two game consoles together, then there would be scope (through emulation) to replace that functionality over the net.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  6. #6
    Registered User Sickjin's Avatar
    Join Date
    Jan 2011
    Posts
    6
    no, this isn't an old NES game that I want to turn into an online game, this is a game I'm going to make myself using a combo of 65c02 Assembly, C and Java. I want multiple people to be able to connect and interact in the style of old 90's Java games like Runescape and Graal Online.

  7. #7
    and the hat of int overfl Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    39,659
    Well using 65C02 then would be pointless, if you're not going to be running it on an actual 65C02 processor.

    Use Java for everything. If the performance sucks too much, then CAREFUL rewriting of the performance critical code in 'C' might be of some use.
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.

  8. #8
    Registered User Sickjin's Avatar
    Join Date
    Jan 2011
    Posts
    6
    okay, that solves 90% of my problems. Thank you very much for your help.

    this can be locked.

  9. #9
    Registered User VirtualAce's Avatar
    Join Date
    Aug 2001
    Posts
    9,607
    this can be locked.
    We do not lock threads unless some rule has been violated.

Popular pages Recent additions subscribe to a feed

Tags for this Thread