CPCWiki forum

General Category => Programming => Topic started by: JAC! on 10:25, 16 June 18

Title: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: JAC! on 10:25, 16 June 18
Hi there,

my name  is Peter Dell/JAC! and I'm the author of WUDEN IDE, a cross-platform IDE for 6502 based systems like Atari, Apple and C64,
https://www.wudsn.com/index.php/ide (https://www.wudsn.com/index.php/ide)
https://www.youtube.com/playlist?list=PLD57AEE018938BA5E (https://www.youtube.com/playlist?list=PLD57AEE018938BA5E)

My first machine in 1984 was a ZX81 which I had to solder together. One year later at christmas I went to buy a ZX Spectrum but it was sold out.
So I bought an Atari 800 XL instead and the rest is history :-)


Over the years I have received a numer of requests for Z80 support and ZX Spectrum and CPC targets in my IDE.  Since every assembler is different ( = work for me)  I'd like to know if there is some kind of "de facto standard" assembler for the ZX Spectrum / CPC. If possible is should be under active maintenance, so feature I can file bug/feature requests when required.

Cheers, JAC!


(https://www.wudsn.com/productions/java/ide/features/ide-example-source-small-outline.png)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: Targhan on 13:06, 16 June 18
Many people still use the Winape embedded assembler, but it is somehow limited. I think many switched to RASM  (http://www.cpcwiki.eu/forum/programming/rasm-z80-assembler-in-beta/)lately. Roudoudou is very fast at adding new features and correcting bugs.
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: Targhan on 13:08, 16 June 18
Thinking about it, many people also code in C (using CPCtelera for example). I don't know how how it could integrate with your IDE though.
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: SOS on 14:53, 16 June 18
PASMO http://pasmo.speccy.org/ (http://pasmo.speccy.org/)

With Phactory as an IDE, but an IDE with more functions are interesting  :D
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: SRS on 21:21, 16 June 18
A lot of us use "MAXAM"-compatible ASM.
Second most should be the syntax of asm cpctelera uses
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: mahlemiut on 23:23, 16 June 18
Quote from: SOS on 14:53, 16 June 18
PASMO http://pasmo.speccy.org/ (http://pasmo.speccy.org/)

I wrote a very basic Qt IDE that uses Pasmo to make some simple CPC programs.  You'll need to compile it to use it, however.  Builds on Linux, should also build on other OSes.
https://github.com/mahlemiut/cpcbuilder
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: Widukind on 10:59, 17 June 18
Hallo JAC.

A nice IDE would be a good idea. Do you use Java Eclipse as your framwork?

P.S. Targhan's mentioned CPCtelera looks amazing! (I am new to cross-developing for CPC)  Is CPCtelera's Spanish author and professor also on this forum?
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: pelrun on 12:52, 17 June 18
I've been seduced by Visual Studio Code, it's very very nice. Free, multiplatform, language agnostic, extensions for everything under the sun (including Z80 syntax highlighting.) And it's easy to work with a cpctelera codebase in it.


Eclipse can die in a fire now. That monstrosity has caused me so much pain!
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: Targhan on 17:33, 17 June 18
QuoteIs CPCtelera's Spanish author and professor also on this forum?


Yes, his nickname is @ronaldo (http://www.cpcwiki.eu/forum/index.php?action=profile;u=1227) .
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: keith56 on 22:36, 17 June 18
It's WinAPE all the way for me, though I'm looking at Notepad++ and VASM as an alternative for building gameboy GBZ80 code.

VASM supports 6502 and 68000 too, and it's 'OldStyle' syntax mode is very similar to WinAPE's - to be honest, I think Winape lets you get away with things no other assembler will!

I've made some notes on differences between Winape and Vasm on my website, and I've uploaded Windows builds of VASM with all possible configurations... I'm planning to start covering VASM next week in my tutorials
http://www.chibiakumas.com/z80/vasm.php
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: JAC! on 07:31, 18 June 18

Thanks a lot you all you feedback so far.


My aim to to give people who'd like to start assembly coding a good and easy start.
Not to convince those who already built their own environment over the years.


Quote from: Widukind on 10:59, 17 June 18
Do you use Java Eclipse as your framwork?
More precisely I use the Eclipse Platform Runtime as the basis.
That is the core worspace/project/extension framework with comes with around 60MB and gives you everything you need.
My IDE has over 200 installations across all OS platforms (Windows, Mac, Linux) and targets.


Quote from: pelrun on 12:52, 17 June 18
Eclipse can die in a fire now. That monstrosity has caused me so much pain!
See above. People typically mix up the Eclipse JDT or J2EE Edition with tons of server relates stuff with the excellent core framework.
So no point in flaming Eclipse, really. I also use Qt and VS on a regular basis and their have their dark sides, too.


My summary so far:
PASMO looks OK, but there is only a beta and no development recently.
RASM looks very good for CPC, esp. because of the direct support for banks and the specific binary output formats and because it's in active development.
VASM looks more general (which make it also more complex) and I could not find the details on the output compatibility for CPC/ZX so far.


So for a ZX specific answer I'll do the same in WoS.


Thanks, again, JAC!
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: ervin on 11:14, 18 June 18
Another vote for RASM.
It's absolutely outstanding, and *very* fast.
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: GUNHED on 22:26, 18 June 18
Hi! If you want to support the CPC and FutureOS I can help you with any information you need.  :) :) :)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: keith56 on 04:12, 19 June 18
Quote from: JAC! on 07:31, 18 June 18
VASM looks more general (which make it also more complex) and I could not find the details on the output compatibility for CPC/ZX so far.
Vasm outputs raw binary code, so you need to put the correct file headers onto it and build it into a disk/cart image for the destination platform (eg MSX/ZX spectrum etc...) that you're loading to, but I was doing that when I was building spectrum & MSX files with Winape anyway, so it's all the same to me.... I'd rather have total control than rely on something else to do the work for me (and it's not like anyone programming in ASM has chosen the easy route!), as I'm unlikely to find anything that can do the cross platform stuff to the extend I want
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: pelrun on 10:46, 19 June 18
Quote from: JAC! on 07:31, 18 June 18
See above. People typically mix up the Eclipse JDT or J2EE Edition with tons of server relates stuff with the excellent core framework.
So no point in flaming Eclipse, really. I also use Qt and VS on a regular basis and their have their dark sides, too.


*deep breath*

Hey, it's not cool to tell me my experiences are invalid and justify it by assuming I installed the wrong version of it. All my experiences have been with Eclipse CDT. And how every microcontroller vendor has released their own custom Eclipse based IDE with integrated plugins requiring me to have 5 independent installations simultaneously *all of which end up invoking arm-none-eabi-gcc with minor differences*, and how the plugins don't play well with each other, and how half the build environment is hardcoded into an extension so good luck if you don't want to build your project exactly the way the extension author wanted it, the project file symlinking support is simultaneously too complex and also incapable of doing some basic things, and how the Eclipse Foundation make breaking changes in every major release forcing you to rebuild your install configuration from scratch if you want to upgrade (and of course the vendor-supplied plugins stop being updated anyway so you're stuck on Eclipse Ganymede forever)

At least it was free. And you can get stuff done with it, so if it works for you that's great. I'm just too tired to deal with it anymore.


I'm using Keil right now for work and considering the thousands of dollars the license costs per year, it's amazing the things it's IDE fails at. You shouldn't have to learn how to identify when the debugger flat out *lies* to your face...
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: GUNHED on 13:50, 19 June 18
Coming back to assembler, on CPC-side everything should be compatible to the MAXAM assembler. IMHO that's a kind of prerequisite.  :)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: Targhan on 14:09, 19 June 18

Quoteon CPC-side everything should be compatible to the MAXAM assembler

The whole point of his IDE is, I guess, NOT to be on CPC side. Maxam was awesome, but modern assemblers are way better.
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: GUNHED on 16:54, 19 June 18
Well, If I have to rewrite anything than this will be no gain for me at least.  :)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: andycadley on 18:08, 19 June 18
It's worth noting that if you ask this in a Spectrum forum you'll get an almost universally different list of options. The assembler toolchains that most people use there are often very different to the CPC crowd (not entirely sure why)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: keith56 on 22:32, 19 June 18
Quote from: GUNHED on 13:50, 19 June 18
Coming back to assembler, on CPC-side everything should be compatible to the MAXAM assembler. IMHO that's a kind of prerequisite.  :)
I think pretty close maxim compatibility would be very important for new CPC developers, as otherwise many of the examples you see online may not work, nothing worse as a beginner than copying-pasting a code example, and it not doing anything!
That said, for 'beginner' CPC-ASM development, I don't see how anything can beat WinAPE for speed and ease of use.
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: roudoudou on 08:28, 20 June 18
Quote from: keith56 on 22:32, 19 June 18
That said, for 'beginner' CPC-ASM development, I don't see how anything can beat WinAPE for speed and ease of use.


Did you try to press ESC in the winape editor?  ;D  Many bugs in the assembler AND the editor. Bugs that a beginner won't understand
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: GUNHED on 12:24, 20 June 18
Even if I bought MAXAM II (for 150 bucks back the day, special price from a friendly computer shop), still using MAXAM 1.15 on ROM, and yes using an Emulator with full speed makes things about 10-15 times more quick. I never found time to even convert things from MAXAM to MAXAM II, the latter one provides some really great features though  :)


If not MAXAM compatible, then it would be good to have an option to import MAXAM source.  :)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: mr_lou on 05:02, 21 June 18
Am I the only one using NetBeans?  :)

I switched to Eclipse 3 times because people kept telling me how lame NetBeans was and how great Eclipse was. But every time I tried to find this greatness in Eclipse I just failed, and then went back to NetBeans again. Conclusion: People are crazy. (Or else I am).

I use NetBeans for all my coding - except CPC coding. I should try using it for CPC coding too I guess. When I created "Space Rivals" I just used a plain ASCII editor. I'm hardcore like that.  :P

Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: Widukind on 07:49, 21 June 18
Quote from: mr_lou on 05:02, 21 June 18
Am I the only one using NetBeans?
Welcome to the long time Netbeans developer club. :-)
Title: Re: Poll: Common Z80 Cross-Assemblers in use / WUDSN IDE
Post by: JAC! on 01:18, 28 June 18
Quote from: pelrun on 10:46, 19 June 18
Hey, it's not cool to tell me my experiences are invalid and justify it by assuming I installed the wrong version of it. All my experiences have been with Eclipse CDT.
I didn't mean to be provoking, sorry if it sounded like that. The point is that the Eclipse Runtime, Eclipse JDT and Eclipse CDT are totally different animals. I use Eclipse Runtime and have been able to keep my plugin compatible for 9 years for all versions now without issues. CDT (and in my opinion also Visual Studio C++ and Qt) are pain on all plaforms, simply because of the way C++ has too many degrees of freedom on the one hand (macros, preprocessor) to make things like refactoring work correctly. And deficits on the other hand (no inplace code replacment due to linking, garbeld runtime information unless you build a debug version separately, separate header files, cumbersomer namespace concept... ). So all I ask is to no judge the IDE by the fact that is build on "XYZ", but on the way in feels and works for what it is designed.


Also I'm not here to convince anybody with a working environment to change that. My aim is to lower the barrier for people what want to get started. 


Today I finally got the confirmation for the World of Spectrum Forum. Let's check what the other Z80 folks tend to do. Thanks again for all your feedback!
Powered by SMFPacks Menu Editor Mod