News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_zhulien

CPC Assembly Time

Started by zhulien, 12:43, 05 August 17

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

zhulien

Hi All,

I am wondering from your largish projects, how long on a CPC does it take you to assemble?

Do you use a cross assembler or develop on the actual CPC, or perhaps a cross assembler injecting directly into an emulator?

ervin

Quote from: zhulien on 12:43, 05 August 17
Hi All,

I am wondering from your largish projects, how long on a CPC does it take you to assemble?

Do you use a cross assembler or develop on the actual CPC, or perhaps a cross assembler injecting directly into an emulator?

Hi zhulien.

I cross-develop in cpctelera.
Compilation takes anywhere from a few seconds up to... I don't know... maybe 30 seconds?
And higher compilation times only happen when the project has become large.

keith56

I use winape's assembler - and it compiles straight into a floppy disk image.
it only takes a few seconds to compile, but once it's done, I start the game via Load"Disk from basic... so it's the loading time not the compiling time that is the big hold-up for me
I often run the emulator at 200% speed to cut down the load times - and let me test the game more quickly.

I've actually used winape to compile a file for the ZX spectrum! I was able to create a spectrum compatible header in winape's assembler, and copy the code file onto a +3 formatted disk - then load it in my speccy emulator.

I've not found a solution as good as Winape for the MSX or Spectrum, it's debugger and built in compiler make CPC development as easy as I could ask.
Chibi Akumas: Comedy-Horror 8-bit Bullet Hell shooter!
Learn ARM, 8086, Z80, 6502 or 68000 with my tutorials: www.assemblytutorial.com
My Assembly programming book is available now on amazon!

ronaldo

Well, we cannot compare compilation times of C source files with assembly times: it is simply unfair. C compilation times will always be slower, even if it sometimes is not noticeable. If you program in assembly, there will be almost no difference assembling your sources with CPCtelera or WinAPE, because assembling is an almost direct operation. Loading times will also be pretty similar, as CPCtelera launches WinAPE with autoload from the command line.

Then, it depends on your preference which tool is best for your work. Each tool has advantages and disadvantages. Best advice is to test tools on your own and then pick up whichever suits your needs.

roudoudou

I use rasm to assemble. A full cartridge with thousand of lines, macro,compression take 1/10s to make.

My pronouns are RASM and ACE

Ast

#5
I only work on real hardware, Cpc old & Cpc plus with orgams z80 assembler rom.
It takes approximatively up to 5 seconds to assemble 6000 lines of code.
_____________________

Ast/iMP4CT. "By the power of Grayskull, i've the power"

http://amstradplus.forumforever.com/index.php
http://impdos.wikidot.com/
http://impdraw.wikidot.com/

All friends are welcome !

zhulien

I have put a POC of an HTML/8BML coding interface online here:  http://8bitology.com/z80ce.php


To be fair, it doesn't assemble itself, but uses The ORG Assembler's API but exposes it in a way that will work on CPC and Windows too.  This is a POC really but what are your thoughts on such a DEV tool that uses a fast online server to assemble code in a way that can download directly to CPC?  Is it worthwhile expanding on with project management, file management, both ability to assemble code submitted from CPC to a binary downloadable by CPC?

Targhan

Why don't you simply assemble your code on PC and transfer it on CPC? I do that using the M4 (Wifi) board, and it's an absolute blast. I generate SNApshot of the memory and transfer them directly in the memory of the CPC (it even resets automatically). All this via command line of the M4 board. The best of the two worlds (CPC + cross dev)!
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

zhulien

Quote from: Targhan on 08:01, 08 August 17
Why don't you simply assemble your code on PC and transfer it on CPC? I do that using the M4 (Wifi) board, and it's an absolute blast. I generate SNApshot of the memory and transfer them directly in the memory of the CPC (it even resets automatically). All this via command line of the M4 board. The best of the two worlds (CPC + cross dev)!


That sounds like a good option too.  I am looking at a solution to dev nicely on CPC though.  I used to use Pyradev (as it supports 512kb RAM) and has quite a good debugger.  How lots of cool tools are available, some are harder to use than they should be - especially some of the cross dev tools.  I have also developed using Marco Veith's CPC Emulator for DOS which was awesome.  These days though emulators seem lacking... in that they aren't supporting the cool hardware that is coming out on CPC. 


Which dev tools do you use on PC for CPC?


Don't you think CPC user/developers would find online dev tools useful for their CPCs? 




Targhan

I'm not sure about online dev tools, because I work many times off-line, and it would surely hinder my productivity. Personnally, it wouldn't fit my needs.


I am using Winape for emulating, plus some scripts on my own to inject SNA (thanks to the automatization software called AutoHotKey to simulate the clicks on the interface, since Winape is "closed"). I wrote an article about that on the late Push'n'Pop, I will try to upload it to Quasar Net to make it available again.
I use SJAsmPlus for assembling, it works great.
If you want to generate SNApshots, you will need Ramlaid's tool (windows only).
Then, injecting the SNA directly into the CPC is a piece of cake thanks to the awesome hardware M4 Board (via Wifi), check its command-line.
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

arnoldemu

Quote from: zhulien on 09:00, 08 August 17
These days though emulators seem lacking... in that they aren't supporting the cool hardware that is coming out on CPC. 
Arnold supports lots of hardware...

Some of the devices are more advanced in emulation than others because it does depend on which ones I can test - I need to test i/o port decoding and things like that to make it more accurate.

It doesn't emulate the m4, or the msx gfx card, but it emulates x-mass, symbiface 2, multiface 2, 4mb ram expansion and many more.

They can be activated through the devices dialog (expansion, printer and joystick).

My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Grim

Quote from: zhulien on 09:00, 08 August 17
Don't you think CPC user/developers would find online dev tools useful for their CPCs?
It works for me. Most of my tools nowadays are written in Javascript just so that can use them on anything with a web-browser (even offline) and can quickly modify/fix them without having to re-compile the thing manually. However, the complete lack of production-ready devtools available in JS and getting them working together like you would usually do with make/batch files or with regular applications (emulators) make things a lot more ... challenging, to say the least. And also that not too many devs seem ready to give up on their antic *nix habits of doing things, will take decade of active brainwashing to change that =)

keith56

#12
Quote from: zhulien on 09:00, 08 August 17
Don't you think CPC user/developers would find online dev tools useful for their CPCs?

I avoid online tools - they can disappear at any time if the developer removes them or changes them in a way you don't like... if you can't do what you need without an online tool, then you'll be stuck if it goes offline.

I download all the online docs I rely on, and only use software that works offline... in an ideal world I'd only use open source, but the software I need works on an offline XP virtual machine, then I can be pretty sure I'm going to be able to keep using it in years to come.

Quote from: arnoldemu on 09:25, 08 August 17
Arnold supports lots of hardware...
Agreed! Arnold has great support for strange things! The list of possible addons is huge!... I did all my multiplay testing with Arnold, and it worked fine when the real hardware turned up!
Chibi Akumas: Comedy-Horror 8-bit Bullet Hell shooter!
Learn ARM, 8086, Z80, 6502 or 68000 with my tutorials: www.assemblytutorial.com
My Assembly programming book is available now on amazon!

zhulien

One feature i would like to see is a memory exception feature. So at runtime the program can be halted if not reading or writing to allowed memory.

arnoldemu

Quote from: zhulien on 18:53, 10 August 17
One feature i would like to see is a memory exception feature. So at runtime the program can be halted if not reading or writing to allowed memory.
From a memory range you define?

A limited version is available in Arnold. You can set a memory read/write breakpoint. You can then define an address range using a mask. e.g. the computation is like this (addr AND c000)==0x04000, so this means any write to a 16KB block.

My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

AMSDOS

Quote from: zhulien on 09:00, 08 August 17

Which dev tools do you use on PC for CPC?


Don't you think CPC user/developers would find online dev tools useful for their CPCs?


Sorry I would of replied earlier only I had trouble trying to find the Online Development Tools I wanted to refer to.


Personally I think it would be great if Locomotive BASIC came as an online tool, the examples I've seen are Quite BASIC and AppleSoft BASIC in JavaScript.
Quite BASIC doesn't try and copy any specific BASIC from any particular machine, earlier on though (a few years ago), I was able to take some of my Locomotive BASIC and write it for Quite BASIC, though it was quite generic and porting wasn't a hassle. My only concern with Quite BASIC is it doesn't appear the site is being maintained and I wasn't able to contact the Author.
AppleSoft BASIC in JavaScript on the other hand allows you to take an Apple BASIC program and do the same thing. I was able to easily type-in a Graphical Snowflake demo and execute it. Unsure if the Snowflakes are meant to be in Pink, though in that App I could Save the program I typed in (saves to the computer) as well as Load and unlike Quite BASIC, I could contact the author in case they were interested in that routine.


Though I just think if there was something like a Locomotive BASIC, anyone with a Web-browser could run a BASIC program without the necessary knowledge of using or setting up an emulator.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

Powered by SMFPacks Menu Editor Mod