Amiga.org

Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: ollygd on April 02, 2009, 11:07:57 AM

Title: Learning 68K Assembler
Post by: ollygd on April 02, 2009, 11:07:57 AM
Hi all,

I'm interested in learning (Amiga) 68k assembley language. I know its no small undertaking, but time is on my side! Can anybody recommend some material which would suit a complete beginner?

Plus, is the Motorola CPU emulated perfectly in WinUAE? Can I practice in WinUAE?

Thanks in advance,

Olly  

Title: Re: Learning 68K Assembler
Post by: NovaCoder on April 02, 2009, 11:20:47 AM
Quote

ollygd wrote:
Hi all,

I'm interested in learning (Amiga) 68k assembley language. I know its no small undertaking, but time is on my side! Can anybody recommend some material which would suit a complete beginner?

Plus, is the Motorola CPU emulated perfectly in WinUAE? Can I practice in WinUAE?

Thanks in advance,

Olly  



This is a good place to start (http://eab.abime.net/showthread.php?t=27577).

Amiga Dev (http://www.monkeyhouse.eclipse.co.uk/amiga/dev.htm)


Code will run well in WinUAE but to really test it you'll need some real hardware.
Title: Re: Learning 68K Assembler
Post by: ollygd on April 02, 2009, 11:23:52 AM
That was quick! Thanks very much. I'll let you know how i get on.
Title: Re: Learning 68K Assembler
Post by: Piru on April 02, 2009, 12:01:02 PM
@ollygd
Quote
Plus, is the Motorola CPU emulated perfectly in WinUAE?

For most parts yes. There are some things that are not 100% but you'll probably never run into them.

Quote
Can I practice in WinUAE?

Yes.

Code: [Select]


_LVOOpenLibrary equ -552
_LVOCloseLibrary equ -414
_LVOOutput equ -60
_LVOWrite equ -48

Main:
    move.l (4).w,a6
    lea    (dosname,pc),a1
    moveq  #0,d0
    jsr    (_LVOOpenLibrary,a6)
    move.l d0,d7
    beq.b  .exit
    move.l d7,a6

    jsr    (_LVOOutput,a6)
    move.l d0,d1
    lea    (msg,pc),a0
    move.l a0,d2
    moveq  #-1,d3
.loop:
    addq.l #1,d3
    tst.b  (a0)+
    bne.b .loop
    jsr    (_LVOWrite,a6)

    move.l d7,a1
    move.l (4).w,a6
    jsr    (_CloseLibrary,a6)

.exit:
    moveq  #0,d0
    rts

dosname:
    dc.b   "dos.library",0
msg:
    dc.b   "Good luck with your studies!",10,0

Title: Re: Learning 68K Assembler
Post by: ollygd on April 02, 2009, 12:23:33 PM
Haha! Cheers for that!

I wondered if you knew if Paul Overaa's books were obtainable in pdf format? Just following one of NovaCode's links brought me to a recommendation for these tites. They are available on ebay - albiet for around £90.

I don't mind ponying up if I have to but I wonder since they are out of print....?
Title: Re: Learning 68K Assembler
Post by: bloodline on April 02, 2009, 12:49:42 PM
Ahhh, Masochism is still rife in the Amiga comunity I see ;-)

68K asm is actually quite fun, though I'm loathed to go near asm now... C++ really makes you life so much easier!

Paul's book is little more than a 68000 ref, wikipedia probably has a guide that will work for you... Other than painfully learning about addressing modes and setting up stack frames, there is not really much to learn... Make sure you get a good ref of the Amiga chipset regs... And you are away!


$0.02: My advice, learn C and SDL ;-)
Title: Re: Learning 68K Assembler
Post by: hardlink on April 02, 2009, 03:25:01 PM
Quote

bloodline wrote:
$0.02: My advice, learn C and SDL ;-)


But there's nothing like being 'on the metal"!
When stepping through the program, the 68K CPU provides a built-in real-time 100% accurate interpreter of the code  :horse:
Title: Re: Learning 68K Assembler
Post by: mongo on April 02, 2009, 03:30:44 PM
You can download a copy of the 68000 Family Programmer's Reference Manual from Freescale.
Title: Re: Learning 68K Assembler
Post by: ollygd on April 02, 2009, 03:40:52 PM
Thats what I was thinking. Very long term, I'd love to get into coding retro games for legacy amiga systems. I believe theres nothing like getting right down there to get the most out of the hardware.

Bloodline is right though....C is a hell of a lot less hassle! I have plenty of time though - no hurry. :-)
Title: Re: Learning 68K Assembler
Post by: ollygd on April 02, 2009, 03:41:43 PM
Quote

mongo wrote:
You can download a copy of the 68000 Family Programmer's Reference Manual from Freescale.


Thanks, i'll take a look.
Title: Re: Learning 68K Assembler
Post by: DinGBaT on April 02, 2009, 04:45:00 PM
olly, i may have a few old asm books laying around from back in the day. if your interested & i can find them your welcome to have them as long as ya pay the postage & give them a good home :) i have to tell ya though i am form .au the postage could be costly depending on where your located.

regards DinG.
Title: Re: Learning 68K Assembler
Post by: ollygd on April 03, 2009, 11:38:03 AM
Quote

DinGBaT wrote:
olly, i may have a few old asm books laying around from back in the day. if your interested & i can find them your welcome to have them as long as ya pay the postage & give them a good home :) i have to tell ya though i am form .au the postage could be costly depending on where your located.

regards DinG.


Hey - that would be fantastic! Thanks very much...let me know if you find them and we can sort out the payment once we get an idea of cost/weight etc...

I think a slow postage would still be cheaper than getting them off ebay....and i can guarantee a good home!  :-)

Whenever is convenient for you. Cheers!
Title: Re: Learning 68K Assembler
Post by: DinGBaT on April 03, 2009, 05:03:31 PM
well your in luck :)  the only two i have left are

68000 assembly language programming second edition
isbn 0-07-881232-1

and

amiga machine language by abacus
isbn 1-55755-025-5
i think this was the better of the two ?

around 1kg

pm me with a location so i can look up the postage cost :)
Title: Re: Learning 68K Assembler
Post by: ollygd on April 04, 2009, 02:15:29 PM
Quote

DinGBaT wrote:
well your in luck :)  the only two i have left are

68000 assembly language programming second edition
isbn 0-07-881232-1

and

amiga machine language by abacus
isbn 1-55755-025-5
i think this was the better of the two ?

around 1kg

pm me with a location so i can look up the postage cost :)

Great stuff! I'm in London, UK. I'll send a private message to you with my address and contact email etc.

Thanks for your efforts, man! I do appreciate it.