Comments (2)
After looking at more source code, the initial problem as described above, isn't actually the correct solution. In fact, the example given above is actually correct:
$3F00 AF8C01 START STX 1,PCR
The post-byte codes of 8C01
is correct, as the 1
can be interpreted as a direct value due to it's size. If the statement were instead:
START STX $0101,PCR
Then the post-byte code should be 8D0101
as the value is extended. This brings up problems in other areas of the source code as well. Consider the following example:
VAR FDB 0
STX <VAR,PCR
In this case even though VAR
is technically an extended value, the explicit direct addressing forced by <
means that it should be interpreted with 8C
instead of 8D
. Since direct values are handled by an explicit Operand
class, that means the above statement throws an error. Fundamentally, structural design decisions regarding the handling of direct and extended values as Operand
classes really need to be refactored to push extended / direct recognition to the Value
sub-classes instead.
from cocoassembler.
Fixed by PR #54
from cocoassembler.
Related Issues (20)
- Implement `ADDW` instruction
- Implement `ADDR` instruction
- Increase test coverage for Version 1.0.0 release
- Complete initial README documentation
- Use granules closer to the middle of the disk HOT 1
- Check branch instructions for automated optimizations
- Implement `AIM` instruction
- Disk files that are non-object types cannot be read
- Allow user-specified output widths
- Implement `ANDD` instruction
- Implement `ANDR` instruction
- PSHU and PULU throw errors
- Implement `ASLD` instruction
- Implement `ASRD` instruction
- Implement `BAND` instruction
- Implement `BEOR` instruction
- Implement `BIAND` instruction
- Implement `BIEOR` instruction
- Implement `BIOR` instruction
- Implement `BITD` instruction
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cocoassembler.