Steve Mynott Posted June 30, 2018 Share Posted June 30, 2018 (edited) I was amazed to see that it's possible to directly run SAM (Software Automatic Mouth) on linux at least *without* emulation! The technique used was to port 6502 assembly line by line to the literal C equivalent see https://github.com/vidarh/SAM eg. lda 56 => A = mem[56];jmp 38018 => goto pos38018;inc 38 => mem[38]++; This is described as "semi-automatic" and is probably unreadable! There is a another version at https://github.com/exploser/sam where the C was ported again semi-automatically to Go (a simpler, more modern C like language and my current favourite!) This is the version I tried and it can be installed with go as "go get https://github.com/exploser/sam"(although I had to add a asla header file package). It sounds exactly as I remember! Edited June 30, 2018 by Steve Mynott 1 Quote Link to comment Share on other sites More sharing options...
Rybags Posted June 30, 2018 Share Posted June 30, 2018 Modern computers are fast enough now to do emulation in high-level languages. There's numerous Java based emulators around, fairly sure even the C64 is covered. Just getting rid of the DMA jitters from Atari SAM (even screen-off since refresh cycles still happen) would vastly improve it's quality. Quote Link to comment Share on other sites More sharing options...
Steve Mynott Posted June 30, 2018 Author Share Posted June 30, 2018 Modern computers are fast enough now to do emulation in high-level languages. There's numerous Java based emulators around, fairly sure even the C64 is covered. Just getting rid of the DMA jitters from Atari SAM (even screen-off since refresh cycles still happen) would vastly improve it's quality True but this isn't conventional emulation. It's actually producing a native program which runs directly on linux, windows and mac without the use of an emulator directly from 6502 assembly language. Clearly the IO routines (sound in this case) use modern native APIs directly but the bulk of the logic of the program is equivalent to the original. Quote Link to comment Share on other sites More sharing options...
Rybags Posted June 30, 2018 Share Posted June 30, 2018 What would be nice is if they've generated some reverse-engineering docs. SAM was underutilized in the day. One thing I'd like to do is relocate it under the OS and improve it to use timers to allow better quality with the screen enabled. 4 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.