Code Monkey home page Code Monkey logo

zsm4's People

Contributors

hperaza avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

agn453 amixgris

zsm4's Issues

8Bit references to extrn defined variable does not work in ZSM4 version 4.7

Hello Hector Peraza,

while M80.COM handles 8bit references correctly (see attachment testm80.prn), ZSM4 generates the error "R" (see testzsm4.prn). The listing test2.prn shows the second file in which the variable "ValNum" is defined, which is referenced by TESTM80.MAC and TESTZSM4.MAC. When I link TESTM80.REL and TEST2.REL to TESTX.COM/TESTX.SYM with L80.COM, ZSID.TXT shows the correct use of "ValNum" (value 10H).

It seems that ZSM4 version 4.7 does not correctly handle the use of 8Bit (LOW) from the Extrn defined 16Bit variable "ValNum", which however the M80.COM/L80.COM and also the SLR180.COM/SLRNK.COM can do correctly.

Otherwise, I would like to thank you for your valuable work on ZSM4, it is a great contribution to the open source community. I use ZSM4 under my Z80 emulator "YAZE-AG" (Yet Another Z80 Emulator by AG, www.yaze-ag.de and also here on guthub.com) and on my real Z280 machine "CPU280" by
test2.txt
testm80.txt
testzsm4.txt
zsid.txt
Tilmann Reh (Germany).

Best regards
Andreas Gerlich (agl7, IRCNet: agl, Libera.Chat: agl)
(University of Ulm, Germany)

zsm4 exits / crashes on typo in source code

When the source contains one of the following typos (probably more, but haven't tested), then zsm4 does the strangest kind of things (i.e. crashing, exiting without compiling, writing its name in an endloss loop etc.) :

A>type test.mac
        .z180

        out0    (66h)
        out0    66

        end

When the instructions are typed correctly, then everything works out fine.

Tested with zsm4 v4.7 on an actual Z180-Computer and in a z80-emulator.

ZSM42 generation different rel file from ZSM41. Linker generates empty file.

HI Hector,

Was updating the copy of ZSM from 41 to 42 in the ROMWBW distribution but on checking, the final .BIN file for the forth rom after linking was all 0's. There are no errors generated from assemble but rel files are slightly different. Linker is DR LINK 1.31. No changes to build process. REL files attached.

This is the link to directory for the files being assembled with ZSM

https://github.com/wwarthen/RomWBW/tree/dev/Source/Forth

The file in particular is camel80,azm which uses .phase/.dephase

The build code is

zx zsm =camel80.azm -/l
zx link -CAMEL80.BIN=CAMEL80

Forth.zip

Link output from 41
LINK 1.31

ABSOLUTE 0000
CODE SIZE 1700 (0100-17FF)
DATA SIZE 0000
COMMON SIZE 0000
USE FACTOR 00

Link output from 42
LINK 1.31

ABSOLUTE 16B5 (0000-16B4)
CODE SIZE 1700 (0100-17FF)
DATA SIZE 0000
COMMON SIZE 0000
USE FACTOR 00

Please let me know if you need any more information.

Regards Phil

Where are these files?

Path to Linux utilities

ZXCC = zxcc

Path to CP/M utilities

ZSM4 = ../../Tools/cpm/zsm4.com
DRLINK = ../../Tools/cpm/drlink.com
TKB = ../../Tools/cpm/tkb.com

Problem in the INT routine from EVAL.MAC

It seems to me that the INT routine does not parse correctly the string of characters, enabling some annoying errors to escape unnoticed.

Example: the line:

ld hl,1v2

is assembled as:
0000' 21 00FC ld hl,1v2

,without indicating the obvious syntax error: 1v2 is not a valid number! and 0FCH is not the correct value !

This way, you risk assembling a source containing such syntax errors without being warned about these errors!

Request for a tiny bit more M80 compatibility

The M80 assembler by Microsoft has the assembler directive

    ds      35,"A"

so that 35 bytes are reserved and are initialized with the value of "A" (or 65 or 41h).

zsm4 v4.7 only accepts the first part of the directive

    ds      35

but not a value for initialization.

I would like to request, that zsm4 can also initialize the reserved bytes with an arbitrary value.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.