3 ms·
I read about this project when it came out. If I understand correctly, it's actually the original C64 implementation, decompiled into C. It's a really neat impl
by lokedhs 6y ago
I read about this project when it came out. If I understand correctly, it's actually the original C64 implementation, decompiled into C. It's a really neat implementation.
- skissane 6y agoYes. From reading cbmbasic.c, I can see a couple of things clearly: 1) This code was generated by the LLVM C-backend (llvm_cbe), which converts LLVM IR to C code 2) The code contains variables for the 6502 registers. This suggests it was generated by translating 6502 machine code to LLVM IR, and then converting the LLVM IR to C.
- noobermin 6y agoI see. I guessed from the llvm prefixes everywhere it had something to do with llvm ir, I just am merely aware of llvm ir but don't use it personally.
- bdowling 6y agoThe structure of a loop around a big switch statement (based on value at PC) to blocks of code that manipulate the register variables (A, X, Y, PC, etc) and RAM looks exactly like an emulator core. The code also appears to include the Commodore BASIC ROM. (See initialization of llvm_cbe_ROM in cbmbasic.c). So, it looks like an emulator that was written in some other language then converted to C using the LLVM C backend.
- noobermin 6y agoInteresting, but curious, are there legality issues here or is the binary safely considered abandonware at this point? (I mean it is for the most part).
- bni 6y agoThe C64 ROM has been included in emulators without restrictions for the last 20-30 years. So I think anyone claiming copyright now would have an uphill battle. It's a completely different situation than for Amiga ROMs, for some reason.
- herio 6y agoThe Amiga IP was always under some form of active management following CBMs fall. First Escom AG in Germany, then Gateway, Amino developments and then finally Cloanto. AmigaOS was/is also under active development by Hyperion entertainment. I've excluded quite a lot of twists and turns but the sum is that AmigaOS was always under active ownership and development. While the Amiga was actively worked on nobody really cared about the 8-bit stuff. The Commodore name and trademark was not actually included in the IP package, it went to Tulip Computers in the Netherlands. From there it went on to Yeahronimo ventures and then into C= holdings. The patents and copyrights were always in the big IP package passed around but since there was no real money in dead 8-bit stuff nobody actively enforced the rights on those ROMs. As such I think it would be hard for anybody today to start trying to enforce the IP rights on the 8-bit ROMs, they are so widely spread, distributed and used. All the IP rights (except the Commodore name and trademark) is now owned and managed by Cloanto. You can buy legal copies of all the ROMs and software from them, they also seem very amenable to make deals with makers of retro computers etc.
- skissane 6y ago> As such I think it would be hard for anybody today to start trying to enforce the IP rights on the 8-bit ROMs, they are so widely spread, distributed and used. IANAL, but while you can lose a trademark through non-enforcement, I don't believe the same applies to copyrights. Turning a blind eye to infringement, even for years on end, doesn't necessarily prevent an attempt to go after it in the future. > All the IP rights (except the Commodore name and trademark) is now owned and managed by Cloanto. You can buy legal copies of all the ROMs and software from them, they also seem very amenable to make deals with makers of retro computers etc. I don't know who owns Cloanto. But even if its current owner(s) are nice and friendly people – it could end up being owned by someone else in the future who is more focused on extracting as much money as possible (like what happened to Unix with the SCO saga). Maybe the current owner(s) go bankrupt, pass away, fall on hard times, etc, and the business ends up being sold to someone only interested in maximising their return at any cost.