mist64 / cbmsrc Goto Github PK
View Code? Open in Web Editor NEWOriginal source code of various Commodore computers and peripherals.
Original source code of various Commodore computers and peripherals.
Is there any way to test the .obj files that the build.sh creates in an emulator, like VICE as an example?
Hi,
Not really an issue - but rather a question:
What assembler was originally used for the sources back then ?
I'm mostly thinking about the C64 related stuff kernal, basic, dso1541 etc...
Source in directory KERNAL_C64_03 disagrees with KERNAL V3 ROM of my C64 and kernal-901227-03.bin shipped with VICE.
Line 42 in 5c5138f
gets assembled to:
FF7D: 4C 85 EE JMP CLKHI ;RELEASE THE CLOCK LINE***901227-03***
But in the ROMs it is still:
FF7D: 4C 8E EE JMP CLKLO
I am courious if that change that did not make it into the ROMS or if it is an error in the source? In V1 and V2 source it is also JMP CLKLO
, but the comment above indicates it was by intention.
When I run the build.sh
, the steps for build1
seem to run into an uncontrolled loop where it gives the same two prompts over and over. When I run build.sh | head -20
to see how it starts, it does stop the assembler, but gives errors about missing files.
This may actually be a kernalemu
bug.
Here's the first 20 lines of output:
splatty:cbmsrc nickb$ ./build.sh | head -20
CBM RESIDENT ASSEMBLER V080282
(C) 1982 BY COMMODORE BUSINESS MACHINES
OBJECT FILE (CR OR D:NAME):
CBM RESIDENT ASSEMBLER V080282
(C) 1982 BY COMMODORE BUSINESS MACHINES
OBJECT FILE (CR OR D:NAME):
HARD COPY (CR/Y OR N)?
CROSS REFERENCE (CR/NO OR Y)?
SOURCE FILE NAME?
CROSS REFERENCE (CR/NO OR Y)?
SOURCE FILE NAME?
CROSS REFERENCE (CR/NO OR Y)?
SOURCE FILE NAME?
CROSS REFERENCE (CR/NO OR Y)?
SOURCE FILE NAME?
./build.sh: line 37: _tmp_obj: No such file or directory
mv: rename printer4.txt to ../MONITOR_AIM65.lst: No such file or directory
Results of uname -a
:
Darwin splatty.local 18.7.0 Darwin Kernel Version 18.7.0: Mon May 3 20:41:19 PDT 2021; root:xnu-4903.278.68~1/RELEASE_X86_64 x86_64
Hi,
Thank you for the excellent Ultimate Commodore 64 BASIC & KERNAL ROM Disassembly!!!
I was looking at PLOOP1:
https://www.pagetable.com/c64disasm/#A700
The first column, which is "Microsoft/Commodore source" in green, 4th line in PLOOP1
says
BNE QPLOP
(QPLOP is $A71A)
but if you look at the hex it's actually BNE $A717
.
I did a search of your repo for QPLOP :
https://github.com/mist64/cbmsrc/search?q=qplop&unscoped_q=qplop
and found these 3:
https://github.com/mist64/cbmsrc/blob/master/BASIC_C64/code3#L53-L64
https://github.com/mist64/cbmsrc/blob/master/BASIC_CBM2_A/bverbs1#L53-L64
https://github.com/mist64/cbmsrc/blob/master/BASIC_CBM2_B/bverbs1#L53-L64
all have a QPLOP
(which is the JMP (IQPLOP)
using the IQPLOP vector) and a NQPLOP
which is the actual QPLOP (if you will -- the target of the vector), whereas:
https://github.com/mist64/cbmsrc/blob/master/BASIC_PET2001/M6502.MAC#L2030-L2041
doesn't use the vector (there's no NQPLOP
-- it jumps directly to the code, and there's a mysterious [?] blank line above it). This is PET 2001 version. Did it not use a vector?
I'm not sure if it's a bug, and if so, how to fix it. Are they supposed to be different?
Long story short, I was using both the ML and the assembly code to write my own, custom LIST and QPLOP for the 64, but this difference threw me off.
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.