Comments (2)
or need new devices without sysvars
but with savesna %)
DEVICE ZXSPECTRUM48
DS 0x10000, 0 ; erase whole virtual 64ki memory (sysvars, fake CLS, ...)
ORG $8000
ret
SAVESNA "test.sna",$8000
from sjasmplus.
The 128 device is using same fake sysvars as 48, from 0x5C00 up.
I do not think this is a bug, it is rather a "feature". The described setup is typically referred to as "USR 0", which is the easiest way to get 128K configuration with paging enabled, yet only 48K BASIC operational. One literally types USR 0 in 128K BASIC and presses a return key. This configuration is easier to work with, precisely because BASIC does not touch pages, so you can do whatever you like, even in pure BASIC.
Fundamentally, the choice between configurations with 128K BASIC enabled or disabled is the choice of preferred system environment. If you add to this the fact that some people might prefer active (or inactive) TR-DOS, you are literally opening a can of worms. I do not mean that there should not be an explicit control over the environment. Someone might need 128K BASIC operational, someone else might need 48K BASIC operational, TR-DOS, Microdrive also move things around, so correspond to different memory layouts. Because supporting all these configurations would be a nightmare, I actually think that the current default is, in many ways, the safest default to use (for DEVICE ZXSPECTRUM128K). It is definitely not a bug.
The easiest solution that should probably be sufficient for pretty much everyone would be to create a small library that can reset the emulated memory, similar to what you showed above, but with ready-made profiles for several common configurations.
from sjasmplus.
Related Issues (20)
- allow defining custom Devices
- Building on Alpine Linux fails due to clash with constant in musl limits.h HOT 1
- SAVETAP: codeblock of 166 bytes length starting at 0xFF59 saved to .tap HOT 2
- Typo on warning
- [1.20.1][ubuntu 22.04][mingw-w64] Can't compile windows exe without modifying Makefile // Recommendation in Makefile is also not full
- Allow multiple labels as arguments of IFUSED HOT 3
- Multiple ORG directives silently ignored? HOT 2
- Interest in adding a new Z80 device ? VZ200/Laser210 HOT 3
- Incorrect compilation of DC with one symbol in single quotes HOT 5
- Not everything works after return from snapshot to Basic HOT 2
- Arrow keys and ESC don't work after invoking sjasmplus HOT 5
- Tests may fail due to locale settings
- duplicate lables HOT 1
- get include length size HOT 2
- bplist: MAME support HOT 1
- union HOT 1
- lua block parsing inside macro is not aware of being inside lua block, applying sjasmplus parsing rules (colons!) HOT 1
- Concern about instructions like add a,b HOT 4
- Missing FAKE INSTRUCTIONS like "ex bc, hl" and other combinations that exploit "ex (sp), rr" HOT 4
- INCBIN command assumes current OS path based on the .asm file where it resides. Does this have to be the case? HOT 4
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 sjasmplus.