EightBall icon indicating copy to clipboard operation
EightBall copied to clipboard

The Eight Bit Algorithmic Language for Apple II, Commodore 64 and VIC20

Results 15 EightBall issues
Sort by recently updated
recently updated
newest added

Copy `disconnect_ramdisk()` and associated code from `EDIT.SYSTEM` to any and all Eightball executables that use auxiliary memory.

bug
Apple II

`tetris.8b` uses Apple II lo-res graphics and other Apple II specific low-level hardware access. Should do a port to C64 and VIC20 also!

CBM

The reference implementation of the VM is not optimized for speed and has loads of paranoid checks. Once things stabilize I will attempt an optimized version in 6502 assembly.

Long Term Plan

Need a way to invoke a machine language routine from EightBall. It would also be good to be able to pass in register values (A,X,Y). This should work for both...

Compiler
Interpreter

I am using zero page locations for the VM registers and evaluation stack on Apple II, but I have not done this for Commodore VIC20 and C64 yet.

Virtual Machine
CBM

At present I am setting memory limits manually. I review the cc65 `.map` file and find the upper limit of the memory used by cc65 and then set my HEAP1...

Apple II

For some reason EightBallVM is not working on VIC20. Seems to be memory corruption.

Virtual Machine
CBM

At present bytecode uses absolute addresses for branches / jumps and is not relocatable. It may be better to use relative branches / jumps so code can be readily relocated...

Compiler
Virtual Machine

This would be nice: ``` call foo("Hello") end sub foo(byte s[]) pr.str s; pr.nl endsub ``` One fairly easy way to implement this: - New VM instruction to store string...

Compiler
Virtual Machine
Interpreter

Right now the comment character ' is handled as a command, which means that a semicolon is needed to comment after a statement: pr.msg "Hello" ; ' Say hello This...

Interpreter