Cross Z80
ZXNet echo conference «zx.spectrum»
From Vitalic Svetashov → To All 14 May 1997
Hello All.
Does the All-Having Ola have a subject lying around?
And then everyone suggests using GENS/MONS under a simulator,
and what you need is a writing cross Z80 - with assembler, disz
and a debugger, preferably symbolic.
Whoever is rich, please, plz !
Vitalic
From Michael Markowsky → To All 14 May 1997
Hello, Vitalic!
Wed 01:14 14 May 1997 Vitalic Svetashov writes to All:
VS> Doesn’t the All-Having Ola have a subject lying around?
VS> Otherwise everyone suggests using GENS/MONS under a simulator,
VS> but what you need is the piss cross Z80 - c assembler, diz
VS> and a debugger, preferably symbolic.
-
- Z80/8080 Cross-Assemblers
-
XZ80.ZIP 135565 09.14.95 [007] Z80 Cross-Assembler (Cross-M80,L80,LIB80)
by Leo Sandy
XLINK.ZIP 27284 05/28/95 [006] Cross-Linker for .REL-files (like L80)
XASMZ80.ZIP 19527 08/02/95 [005] Avocet Z80 Cross-Assembler
AVMACZ80.ZIP 131344 09/14/95 [004] Avocet Z80 Cross-MacroAssembler
A80Z.ZIP 48394 09/14/95 [006] PseudoSam Z80 Cross-Assembler 1.3
A85.ZIP 53666 08/02/95 [005] PseudoSam 8085 Cross-Assembler
MA80LINK.ARJ 51000 10/01/96 [001] Z80 Cross-assembler and linker from
Andrew MOA 2:5030/25.1
ZASM1.ZIP 744604 03/13/96 [002] Z8/Z80/Z180/Z8000 Cross-Assemblers
Z80.ZIP 43570 01/09/95 [010] Z80 Cross-Assembler, two-pass,
Unix syntax AS
AZ80.ZIP 41717 08/02/95 [005] Micro Series Z80 Cross-Assembler 1.15
ASM_Z80.ZIP 93235 01/18/97 [000] Assembler 128 for Z80 (cross-version
of Spectrum GENS4)by 2:5030/461.12
X8085.ZIP 172432 02.08.95 [003] 8085 Cross-Assembler/Linker by
2500_A.D.Software
XASM85.ZIP 50939 02.08.95 [001] Avocet 8085 Cross-Assembler
A80.ZIP 19035 13.09.95 [008] 8080/8085/Z80 Cross-Assembler by /237
I2Z.ZIP 13932 28.05.95 [007] Конвеpтеp мнемоник i8080 в Z80 (с
исходником)
-
- Z80/8080 DisAssemblers
-
ZDIS.ARJ 88042 30.07.96 [001] Z80 Interactive DisAssembler
D80.ZIP 12366 11.09.95 [003] 8080/8085/Z80 DisAssembler by /237
Z80DISAS.ARJ 16116 18.01.94 [005] Z80 DisAssembler with Pascal sources
DIS8080.ZIP 19094 14.09.95 [001] 8080 DisAssembler
DASM85.ZIP 11776 19.05.94 [001] 8085 DisAssembler
DASMZ80.ZIP 40929 19.05.94 [001] Z80 HEX-file DisAssembler
HEX2ASM.ZIP 9814 13.09.95 [001] 8080 HEX-file DisAssembler
DASM8080.ZIP 15553 14.09.95 [000] 8080 HEX-file DisAssembler
DIS_Z80.ZIP 20574 30.07.96 [000] Исходники (на С) Z80-дизассемблера
-
- Z80/8080 Emulators/Debuggers
-
AVSIMZ80.ZIP 81896 14.09.95 [004] Avocet Z80+PIO+CTC Emulator/Debugger 1.32
AVSIM85.ARJ 197773 10.02.91 [002] Avocet 8085 Emulator/Assembler/Linker
S80.ZIP 58357 01.08.96 [004] Z80 Emulator/Debugger, 2500 A.D.Software
Z80M.ZIP 61551 27.01.95 [006] Z80Emulator/Debugger
IDEBUG.ZIP 95999 08/01/96 [004] 8080-Emulator (TurboVision interface)
ZD.ZIP 84710 08/01/95 [003] Z80 Emulator/Debugger/DisAssembler
ISIS.ZIP 77459 02.08.95 [003] 8080/8085 simulator
I myself use the XZ80 package for compilation (cross-analogs of CP/M's M80, L80 and
LIB80). And the most enjoyable way to dizz is with Interactive Disassembler (IDA) by
2:5020/209.
Best wishes! Michael KLUG
From Andrew MOA → To All 16 May 1997
On the day of May 14, 97, Michael Markowsky had the good fortune to write to Vitalic Svetashov:
MM> I myself use the XZ80 package for compilation (cross-analogues of the CP/M's M80, L80
MM> and LIB80).
Unfortunately, in addition to the "glitches" of Microsoft, Leo Sandy added his own. A simple
example:
file 1.MAC
include 2
end
file 2.MAC
db 0
Compiling file 1 leads to freezing.
But Microsoft tried,
=== Cut ===
; m80 does not correctly process macro definitions inside
; macro definitions if the name of the block being defined is compound and includes
; numbers as parts, for example, xx&00& macro
genmacro macro ?name
tm&?name& macro ?d
dw ?d
tm&?name& macro dd
db low dd
endm
endm
endm
;for some commands the types are underchecked, so it is possible
pop sp
;for commands IM, RST, BIT, SET, RES is not passed correctly to the object code
;absolute argument, more precisely in assembler it can be declared external
;although in fact the argument will be accepted equal to 0
external bt
bit bt, a
im bt
rst bt
;atavism I8080 - instead of (hl) you can write m
ld a, m
; in I8080 mode instructions like
mvi a, mov a, c
are not translated; in m80 the type is lostwhen multiplying one of the operands,
;the result is obtained by the type of the _second_ operand (during multiplication, they forgot
;to save the operand type register).
ext g1
dw 3 * g1, g1 * 3 ;will give different results
;In general, there is a lot of confusion with types. In most operations
;the type of the result is obtained by adding the types of the operands. In the assembler
;it is encoded that CSEG == 1, DSEG == 2, the result of the operation is 3,
;as it is written in the instructions - a mixed type, so it is written in the
;objectnik. But common symbols also have type 3, and are also written
;in the object book.
;Parameters are strangely substituted in MACRO
db '&?a&?b&?c&?d' ;leaves extra &
;For irp, for some reason, spaces between the variable and the list of parameters are prohibited
;And besides this, empty parameters are not allowed
; irp ?t, <1,<>>
;^ ^
;Nested parentheses are not allowed in ifdif (although this may be correct)
=== Cut ===
Well, and a few other little things.
Andrew
From Andrew MOA → To All 18 May 1997
On the day of May 16, 97, Michael Markowsky had the good fortune to write to Andrew MOA:
AM>> file 2.MAC
AM>> db 0
AM>> Compiling file 1 leads to freezing.
MM> However, if you take a larger file as 2.MAC, then no freezing
MM> is observed. At least my TR-DOS source code for 8272 contains
MM> INCLUDE and is compiled normally by XM80. However, there are no macros in it.
Well, somehow this example was enough for me to “distrust”. It is possible, however, that OS/2, for example, is somehow “to blame” here, I haven’t “dug” into the reason.
By the way, this example is more interesting (this, however, is no longer Leo :):
=== Cut ===
Fword macro ?addr, ?word
dw ?addr
?wct defl 0
irpc ??? _without_swearing_
just skipped the whole block.
Andrew