Hallo Besucher, der Thread wurde 34k mal aufgerufen und enthält 298 Antworten

letzter Beitrag von Snoopy am

C65-ROM-MEGA-Debatte

  • Just for my interest: How can a rebuild of a copyrighted ROM be without copyright? ?(


    The new ROM should do exact the same as the original one (if 100% compatibilty is reached). So it is still under the original copyright.

    It is not the original but it does exactly the same things. This could be achieved by clean room reverse engineering with a test suite (test what a command does in the original environment and try to obtain a similar result with your own code) . The code itself would be written from scratch and could be published under a free license.

    That's the same way that e.g. Wine uses to develop a free winapi.

  • Luckywise, that's not the case, we're not using a single bit from the original ROM.

    Paul describes it here quite good.

  • It will never reach 100% compatibility. For example, I have already seen a copy protection that decrypts part of the code... by EORing it with part of Kernal ROM (sic!). We will never provide compatibility with anything like this.

    I won't be going into much details here, but probably nearly every non-trivial algorithm works differently in our implementation - because someone provided a better-than-Kernal code on Codebase64 (like - PAL/NTSC detection), because I had different design goals (like - share as much code as possible between Normal and Turbo tape LOAD implementation, and to save space and development time omit tape support for VERIFY, SAVE, and sequential files), because original implementation is terrible and we simply don't want our ROM to work the same way (like - keyboard scanning), because I want to support different hardware (upcoming RS-232 support, I plan to integrate UP2400 and UP9600 drivers, and support the ACIA chip), etc. Not to mention that from Compute's Mapping the C64 book I see we have private/helper routines often doing different things (screen editor, IEC support, and just about everything large), or VICE debug logs clearly show that our ROM work in slightly different way (IEC support again) - natural consequence of developing independently.

  • exactly !

    But since we have more than enough to do, this really has the lowest priority.

    At the moment our custom ROM is in a state, that you are able to LOAD & RUN programms, this is atm sufficent for us.

    (At least that's the last state i know about)

    We need to deliver the MEGA65 in a state that we can say: "Yes, it's our ROM and YES it's operational"

    ... to a certain degree.... ;-)


    Now you understand, why we would appreciate, if somebody from the community would tinker with the original ROM and implement the missing commands ;-)

    But we won't touch it.

  • Habt ihr denn jetzt eine Lizenz für das C65 Rom? Sonst dürft ihr ja das auch nicht so mitliefern.

    Bitte lese ab Post #2450, sonst drehen wir uns im Kreis....

  • adtbm - BASIC development is basically... stalled. I added some quick and really ugly hacks so that FileBrowser64 (and probably some other things) works, also our DOS Wedge is within BASIC ROM (at least for now - this is probably the only DOS Wedge implementation working this way). For the Kernal - it keeps improving, I fix bugs (sometimes add new ones to make things more fun), add missing APIs (official API is nearly complete now, some unofficial routines work too), add optimizations for CPUs better than 6510, etc. And we can load TurboTape64 saved programs, or use some faster IEC protocols - for now JiffyDOS (but my implementation is not as fast as original - I don't yet know, why) and DolphinDOS (you can have both compiled-in at the same time!), burst CIA mod support is also planned.

    That's why I don't want to look back into original ROMs - we can do better! Especially the C65 ones are tricky - it's not enough to just finish them, you would need to carefully review/test also the existing code, no one really knows which parts are stable and properly tested by the original developers, and which are not.

  • FeralChild Thanks for the update. There are always so many topics, we are all working on, that it is hard for me sometimes, to stay up-to-date...


    That's why I don't want to look back into original ROMs - we can do better! Especially the C65 ones are tricky

    Nice to hear. that sounds very impressive !!!

  • That's why I don't want to look back into original ROMs - we can do better! Especially the C65 ones are tricky - it's not enough to just finish them, you would need to carefully review/test also the existing code, no one really knows which parts are stable and properly tested by the original developers, and which are not.

    That's what I just think about.


    If it's not the aim to use the OpenROMs in the Mega65, the time for developing them is nearly a waste. If 99% of the Mega65 owner uses the original ROMS so why use time for the OpenROMs?


    It would be a great thing if there will be an OpenROM with the BASIC 10 completely with the still unimplemented commands, so everyone can use the OpenROMs.

  • Definitely not a waste of time.

    1. If the C65 ROM gets open sourced tomorrow, we have several routines we can transplant to improve the original ROMs.
    2. This project is not just for Mega65. I really want to have a Kernal for my Ultimate 64 which can talk both JiffyDOS and DolphinDOS without ROM switching, for now ours is the only one capable of doing so. Main problem is the compatibility, which is not too good as of yet.
    3. I'm having fun working on it.

  • It will never reach 100% compatibility. For example, I have already seen a copy protection that decrypts part of the code... by EORing it with part of Kernal ROM (sic!).

    That must be the most idiotic thing they could come up with. That certainly is a way not to be 100% compatible on original hardware either, since you always have to expect different ROM revisions.

  • I really don't care whether the original rom is original or a new one. For me it is important to have a new, powerful machine that offers new opportunities.

    ___________________________________________________________________________
    Ultimate64, TAPunio, SD2IEC, ZX Spectrum 48k, 1581 Replik, C64 Laptop, C64 MK II, C116, SX64,
    MiSTer FPGA, TI99/4A mit PEB, Atari 800 XL, Anycubic I3 Mega, Mega65, C64 Modular, Uniprom64

  • I really don't care whether the original rom is original or a new one. For me it is important to have a new, powerful machine that offers new opportunities.

    Exactly ! this is my opinion as well.

    I want to have a C65, which is capable to run all C64 stuff, with new features to discover and experiment with.


    The nice thing really is, that the machine can, once officially released, improve throughout the time more and more and since it's open source, this hopefully will happen.

  • I really don't care whether the original rom is original or a new one. For me it is important to have a new, powerful machine that offers new opportunities.

    Exactly ! this is my opinion as well.

    I want to have a C65, which is capable to run all C64 stuff, with new features to discover and experiment with.

    That's nearly also my opinion.


    The only difference is, that for me C64 mode is no issue. I don't care about it, because for C64 stuff I have my original C64 and some very good emulators. Most important for me is the C65 mode.

  • Everyone is free to choose the environment he likes the most :) For the Open ROMs on Mega65, I hope to go the following direction:


    - provide just a single mode of operation - C64-compatible memory map with as many extensions/features added as possible (including 80 column screen, operating in 48MHz mode, some day BASIC 7/10 commands), utilizing the extra Mega65 RAM/ROM, but with C64 software compatibility in mind

    - if feasible, extra features/extensions will behave similarly to existing ones - C128 native mode, popular cartridges and Kernal replacements, etc.

    - by default I would like to start the machine in 48MHz and 80 columns; when something 'suspicious' happens - starting a cartridge, loading anything below tape buffer (which means autostart software), executing SYS command to BASIC memory area, etc. - switch back to 1 MHz and 40 columns for compatibility, Mega65-aware soft can always switch back to max speed and use extended VIC modes

  • Definitely not a waste of time.

    1. If the C65 ROM gets open sourced tomorrow, we have several routines we can transplant to improve the original ROMs.
    2. This project is not just for Mega65. I really want to have a Kernal for my Ultimate 64 which can talk both JiffyDOS and DolphinDOS without ROM switching, for now ours is the only one capable of doing so. Main problem is the compatibility, which is not too good as of yet.
    3. I'm having fun working on it.

    Also don't forget that the OpenROMs solve the legal uncertainty for emulators to include a working ROM set.


    LG

    Paul