English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 11 April 2018, 17:35   #1
mcgeezer
Registered User
 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
Development Tools

I've long been an advocate of using Devpac for Amiga development.

However the short stint I had working for a developer decades ago had me writing 6502 code on an Atari ST which I was then able to compile and pump down a serial cable from the ST to a C64. the C64 had some sort of memory resident boot strap that just waited for code to come from the ST and it would magically execute it.

Obviously the nice thing about it was that the dev environment wasn't running on the C64 so it wouldn't matter memory got trashed.

Although I love Devpac, it does have it's limitations as an IDE and after my current project I'd like to move onto something a bit better.

Does the Amiga have anything similar, perhaps something virtual that can be used between WinUAE and Windows / Notepad++ etc.

I'm sure this must be a common thing but I'm really out of touch on this sort of stuff so would like to get up to speed.

Any help is really appreciated.

Thanks,
Graeme
mcgeezer is offline  
Old 11 April 2018, 18:05   #2
DanScott
Lemon. / Core Design
 
DanScott's Avatar
 
Join Date: Mar 2016
Location: Tier 5
Posts: 1,212
Try our WinUAE demo tool-chain:

http://www.pouet.net/prod.php?which=65625
DanScott is offline  
Old 11 April 2018, 18:10   #3
kamelito
Zone Friend
 
kamelito's Avatar
 
Join Date: May 2006
Location: France
Posts: 1,801
You Beat me I was in a tunnel
kamelito is offline  
Old 12 April 2018, 01:16   #4
phx
Natteravn
 
phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
Quote:
Originally Posted by DanScott View Post
Try our WinUAE demo tool-chain:
As it is based on vbcc/vasm I should mention that they improved a lot since 2015...

To answer the original question: It's really not difficult to set up a cross assembler like vasm (which is nearly 100% Devpac compatible) to compile on any host OS you want. Just let the assembler write its output into a directory mounted by UAE as an Amiga-disk.

My cross development environment includes some portable tools in C for graphic- (bmp to raw), sample- (wav to raw), map- (TilEd tmx to game-internal) conversion, and a Makefile which directly creates a working ADF to test in UAE.
phx is offline  
Old 12 April 2018, 08:20   #5
clenched
Registered User
 
Join Date: Sep 2008
Location: Gainesville U.S.A.
Posts: 771
This post outlines a way to use VASM to talk to various emulators. Here is a little 7 sec. video (wmv) using similar method with WinUAE. This example starts itself. WinUAE window never gets focus to load, type or anything else.

What was changed:
Code:
;  Section Cube2,code_c ; original
    org    $40000       ; change to absolute code
start

... rest of code

    org    $64          ; divert this interrupt
    dc.l   start        ; don't care about returning
Attached Files
File Type: zip CubeClip.zip (301.0 KB, 137 views)
clenched is offline  
Old 12 April 2018, 09:47   #6
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,468
Quote:
Originally Posted by phx View Post
My cross development environment includes some portable tools in C for graphic- (bmp to raw),
Hi phx, which ones do you use?
ross is offline  
Old 12 April 2018, 10:42   #7
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,770
I use VASM (which is maintened by our PHX here in this forum and thread ) which assembles into a file that is in a folder that I configured as an HD in UAE.

So I just have an A500 running in UAE with this HD, edit and assemble my asm code in Mac OS X (should be the same in Windows), and test it in UAE immediately..

If the Amiga crashes, I just reload a state just before pressing "Return" in the shell I opened up in the Amiga environment with the name of my program already entered in there.

Works like a charm, and is super fast.
Tigerskunk is offline  
Old 12 April 2018, 11:34   #8
phx
Natteravn
 
phx's Avatar
 
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,496
Quote:
Originally Posted by ross View Post
Hi phx, which ones do you use?
I'm not sure what you mean. The cross development environment is usually a good shell (so Windows is no option for me) and a Makefile.

I wrote all the conversion tools myself (some are included in the public Solid Gold source release), so they are really portable ISO-C99 and don't depend on lots of other bloated, mostly useless, libs. All tools, game graphics/sounds/sources and the resulting ADF are built with a single "make" on any host OS.
phx is offline  
Old 12 April 2018, 11:45   #9
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,468
Quote:
Originally Posted by phx View Post
I'm not sure what you mean. The cross development environment is usually a good shell (so Windows is no option for me) and a Makefile.

I wrote all the conversion tools myself (some are included in the public Solid Gold source release), so they are really portable ISO-C99 and don't depend on lots of other bloated, mostly useless, libs. All tools, game graphics/sounds/sources and the resulting ADF are built with a single "make" on any host OS.
Sorry, I asked a too concise question (I was interested in the bmp/image->raw conversion).
You have satisfied my request, I'll dig into Solid Gold sources.
Thanks.
ross is offline  
Old 12 April 2018, 11:56   #10
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,506
Quote:
Originally Posted by phx View Post
I'm not sure what you mean. The cross development environment is usually a good shell (so Windows is no option for me) and a Makefile.
WSL (Windows subsystem for Linux) works really nicely for this purpose. I have been using it to compile pfs3aio.
Toni Wilen is offline  
Old 12 April 2018, 12:06   #11
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,468
Quote:
Originally Posted by Toni Wilen View Post
WSL (Windows subsystem for Linux) works really nicely for this purpose. I have been using it to compile pfs3aio.
Interesting, i'll take a look.

I usually use cygwin or code::blocks/mingw on windows (only support tools and not direct Amiga dev, but i've a cross gcc working system..).

EDIT: well, actually only asm on Amiga, is much more fun (and for some strange masochistic reason I also use devpac most of the time )

Last edited by ross; 12 April 2018 at 12:15.
ross is offline  
Old 12 April 2018, 12:21   #12
Leffmann
 
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
I use vbcc, vasm, vlink and a good editor, Atom or Sublime Text usually.

I build the program with a makefile and a single key-press in the editor (usually no need for Bash or other shells) then swipe to the other desktop where the emulator is set up to run the program automatically. If I need some little tool I usually write it in Python.

Easy to set up, and very comfortable.
Leffmann is offline  
Old 12 April 2018, 12:52   #13
WayneK
Registered User
 
Join Date: May 2004
Location: Somewhere secret
Age: 50
Posts: 365
Quote:
Originally Posted by ross View Post
Sorry, I asked a too concise question (I was interested in the bmp/image->raw conversion).
You have satisfied my request, I'll dig into Solid Gold sources.
Thanks.
I have used "KingCon" from the WinUAEDemoToolchain Dan linked earlier - very configurable and seemed to produce valid data for most uses I had (although I remember having a problem with sprites once, but that was possibly user error!).

However like you, I'm a masochist and 99% of the time use "IFF Converter" under emulation, and code/assemble in Asm-One :P
WayneK is offline  
Old 12 April 2018, 13:33   #14
Tigerskunk
Inviyya Dude!
 
Tigerskunk's Avatar
 
Join Date: Sep 2016
Location: Amiga Island
Posts: 2,770
if you use bmptoraw, this is a typical command line for a masked asset in mac os x....

./tools/bmptoraw innviya/graphics/assets/src/walkerbomb.bmp 192 32 3 MASK >innviya/graphics/assets/walkerbomb.bin

This is 192 pixels wide, 32 high, and uses 3 bitplanes (8 colors), plus is masked.
You can find the mask-bob starting at byte (192/8)*32*3 ..

If you want to create a sprite from a bmp
./tools/bmptoraw innviya/graphics/assets/src/fancySpaceShip.bmp 16 32 2 SPRITE >innviya/graphics/assets/fancySpaceShip1.bin

->attached<-:
./tools/bmptoraw innviya/graphics/assets/src/fancySpaceShip.bmp 16 32 4 SPRITE innviya/graphics/assets/fancySpaceShip1.bin innviya/graphics/assets/fancySpaceShip2.bin

..would do the trick.. Please notice there is no ">" when creating attached sprites..

Last edited by Tigerskunk; 12 April 2018 at 13:38.
Tigerskunk is offline  
Old 09 February 2019, 00:27   #15
emiespo
Registered User
 
Join Date: Jul 2017
Location: Oxford
Posts: 104
Hi all, just stumbled upon this thread. I would really like to move on (ie complete) with a game I am porting. I wonder what you people use under OSX for:

1) editing 68k asm code. I've found Atom has some basic support, but something with autocompletion would be much better.
2) debugging the executables. FS-UAE has a pretty decent debugger, but I couldn't manage to keep debug info in the executables. This would make debugging waaay simpler (and faster) than what I'm doing now (breakpoint on weird memory locations accesses).

Any info / help would be greatly appreciated, thank you!
emiespo is offline  
Old 09 February 2019, 23:52   #16
prb28
Registered User
 
Join Date: May 2018
Location: France
Posts: 246
You can try Visual Studio Code with this extension.
It's available for Windows, osx and linux.
You can:
  1. Write the code in an modern ide (with hardware documentation)
  2. Build with VASM and VLINK
  3. Run / debug in fs-uae
  4. Build an ADF disk to try on your old amiga
  5. and more ...
prb28 is offline  
Old 10 February 2019, 01:17   #17
Hewitson
Registered User
 
Hewitson's Avatar
 
Join Date: Feb 2007
Location: Melbourne, Australia
Age: 41
Posts: 3,773
Quote:
Originally Posted by emiespo View Post
1) editing 68k asm code. I've found Atom has some basic support, but something with autocompletion would be much better.
Nothing beats vim!
Hewitson is online now  
Old 14 February 2019, 10:52   #18
zero
Registered User
 
Join Date: Jun 2016
Location: UK
Posts: 428
I wonder if you could use the serial/parallel bootloader system with WinUAE. Instead of restarting WinUAE or having to boot from a virtual floppy every time, just have a ROM based loader and send the binary over a virtual serial port from the host. Might be a bit faster.
zero is offline  
Old 14 February 2019, 14:35   #19
Leffmann
 
Join Date: Jul 2008
Location: Sweden
Posts: 2,269
Quote:
Originally Posted by zero View Post
I wonder if you could use the serial/parallel bootloader system with WinUAE. Instead of restarting WinUAE or having to boot from a virtual floppy every time, just have a ROM based loader and send the binary over a virtual serial port from the host. Might be a bit faster.
If you want something really fast then look at Clenched's method further up in the thread.

If you want something simpler to set up, but not quite as fast, then build to a directory-based drive, and use a small script on the emulator side to poll and run the incoming program.

No need to restart the emulator between each run.
Leffmann is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Looking for some basic IP tools en SDK tools Roland007 support.WinUAE 0 28 November 2012 22:34
Tools alexh support.Hardware 15 05 August 2010 23:27
What tools to use? Zetr0 GCA.Usefull Programs 10 03 February 2009 23:52
Need a few tools Phantomz request.Apps 6 22 November 2008 03:15
Tools? Kada project.Amiga Game Factory 1 05 February 2008 09:58

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 18:11.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.55199 seconds with 16 queries