New to C128, Macro ASM for C128

Started by marquisor, March 27, 2010, 03:02 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

marquisor

Hello!

I'm new here in this forum. My name's Patrick, I'm from Germany, 31 yrs young and got two C128 in good condition. One C128 and one C128DCR.
As I really liked the C128s back in their days and still love'em today and I got to BASIC and ASM back these days and want to "refresh" it.. I thought, why not learn/try/code it on the C128 in C128 mode.

So well, now my question is, how to start. What Macro ASM would you recommend? I'm really confused by all those TASM, TASS, TMP, ACME, Relaunch and so on and a bit overwhelmed by this (new) forum and contained informations here, too.

I guess it's more comfy than on a 64kB limit. Maybe there's some 80chars version, too?? Dunno...

I'm not a coding newbie, but also not yet really advanced... Wrote some combinations BASIC/ASM simple games in 80s/90s. And of course played with some coding tricks and so on...

Ok, thx for help, any appreciated! And hope i get into this stuff and forum asap...

Regards
Patrick

preserve what you deserve

dr.v

Patrick - I use buddy assembler.  Check it out.  It's (in my opinion) a nice development system.  You can still find full documentation floating around out there as well.

Best of luck!

Tom

marquisor

heya! thx for thy shout! ;)

i also got a recommendation for merlin128... i still have to try those ones.
preserve what you deserve

airship

I like Merlin, for what it's worth.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

bacon

+1 for Buddy 64/128 Assembly Development System, to use its full name.
Although I'm sure Merlin is just as good.

The Buddy 128 manual is available at DLH's site and some other places.
Bacon
-------------------------------------------------------
Das rubbernecken Sichtseeren keepen das cotton-pickenen Hands in die Pockets muss; relaxen und watschen die Blinkenlichten.

ddw

Is Buddy still available somewhere? I cannot find it at all (except for the documentation). Thanks.

Silicebit

QuoteIs Buddy still available somewhere? I cannot find it at all (except for the documentation). Thanks.

I think yes. Check this site.

gsteemso

’Fraid not. All the files on that site were hosted on Commodore64.org, which appears to not be there any more.
The world's only gsteemso

airship

The first link to the C128 Buddy Assembler works. It's hosted in Sweden.
Serving up content-free posts on the Interwebs since 1983.
History of INFO Magazine

marquisor

#9
hello again!

now i tried merlin 128 for short, and buddy assembler with the manual (thx to a forum member)  8)

i think i'll stay with buddy assembler, as it is similar to hypra-ass on c64. at least this: gets loaded, residents in memory and can be interpreted along with BASIC 7.0/2.0.
merlin 128 has an editor, so it's pure ASM i guess?

ok, now buddy related:

just wanted to ask if i get it right, that makro assembler AND basic 7.0 code can be mixed and executed.
1) but how do i get the adresses i will have to SYS to?
2) can i "compile" the whole stuff (BASIC and ASM) together to one file? or do i have to save and then BLOAD it in my BASIC code?


just curious... as i'm still a bit confused by the whole books to read (memory mapping, buddy asm etc.)

thx!

EDIT: solved, read below. (marquisor: Jan-18, 2011)
preserve what you deserve

marquisor

can Buddy Assembler do formatted listing, or even auto format on input? like many many other "basic editor" macro assemblers? f.e. hypra-ass

merlin128 and its weird editor functions is not quite right my taste :S

any alternatives to merlin/buddy? turbo-ass diskversion? (i know there's a rom, but don't have an eprommer)
preserve what you deserve

Hydrophilic

I haven't used an assembler on a C128 in years, but I guess Buddy would be my preference.  Can't really answer your questions about it because I do most ASM developement on a PC with a compiler called Xa by André Fachat (can work on Unix, Windows, Mac, etc.) 

When I need to test something on a real C128, I use MONITOR.  I love it... 1 second boot time!  Beat that iPod, Windows, Mac, Amiga, CP/M, Unix, DOS, PSX, XBox, PS2, XBox 360, PS3, blah, blah, blah... suckers!  :P

If you insist on native C128 deveopement software, be sure to avoid GeoProgrammer.  Ummmm... maybe it is okay with REU and SuperCPU ?  I wouldn't know.
I'm kupo for kupo nuts!

RobertB

#12
Quote from: Hydrophilic on January 19, 2011, 05:57 PMIf you insist on native C128 deveopement software, be sure to avoid GeoProgrammer.  Ummmm... maybe it is okay with REU and SuperCPU ?
Or use the upgrade to geoProgrammer which runs under Wheels; that would be Maurice Randall's Concept.

          FCUG celebrating 30 years,
          Robert Bernardo
          Fresno Commodore User Group
          http://videocam.net.au/fcug
          The Other Group of Amigoids
          http://www.calweb.com/~rabel1/
          Southern California Commodore & Amiga Network
          http://www.sccaners.org

bacon

#13
Quote from: marquisor on January 19, 2011, 01:07 AM
can Buddy Assembler do formatted listing, or even auto format on input? like many many other "basic editor" macro assemblers? f.e. hypra-ass
Read the manual. It's all in there. Short answer: no auto-format on input. If you want a nicely formatted source file, use the text editor version instead of the BASIC editor version; it's started with LOAD "EBUD", 8 instead of LOAD "BUD",8.

As I said, it's all in the manual. If you don't read the manual, you won't get to grips with any of the nice featuers of the assembler.

Edit: to answer an earlier question of yours, to get the SYS address for the assembler portion of a mixed BASIC and assambler program, you simply use the labels directly in the BASIC part of the program. Short example:
10 sys $4000
20 .bas
30 print "this is a mixed basic and assembler program."
40 rem jump to the assmbler part of the program
50 sys "assembler'part"
60 print "we're back to basic again!"
60 end
70 rem assmbler source starts here
80 assembler'part =*
90 ldx message'length
100 - lda message,x
110 jsr $ffd2
120 dex
130 cpx #0
140 bne -
150 rts
160 message .asc "here is the assembler part."
170 message'end
180 message'length = message'end-message


Now go read the manual.
Bacon
-------------------------------------------------------
Das rubbernecken Sichtseeren keepen das cotton-pickenen Hands in die Pockets muss; relaxen und watschen die Blinkenlichten.

marquisor

#14
@bacon:

to say it directly, i don't like such answers. what's more time waste? reading and testing the manuals and software to find out after hours (did that recently with merlin128) it does not fit some unique k.o.-points? or asking experienced users, who use it for long time, and can answer in 2 minutes? (that's what forums are for.)
nvtl. i dug into the manual some days ago. the "ebud" won't work here for some reason...
EDIT: to answer your "EDIT", i already (Reply #9 on: July 16, 2010, 10:03 PM ») figured the basic part out.

Quote from: Hydrophilic on January 19, 2011, 05:57 PM
I haven't used an assembler on a C128 in years, but I guess Buddy would be my preference.  Can't really answer your questions about it because I do most ASM developement on a PC with a compiler called Xa by André Fachat (can work on Unix, Windows, Mac, etc.) 

When I need to test something on a real C128, I use MONITOR.  I love it... 1 second boot time!  Beat that iPod, Windows, Mac, Amiga, CP/M, Unix, DOS, PSX, XBox, PS2, XBox 360, PS3, blah, blah, blah... suckers!  :P

thx for the info, unfortunately (if i don't get any turbo-ass 128 diskversion to work) i also will "move" my work to a PC development system. i think i will use kickassembler, acme and relaunch64. maybe i'd give 64tass for ms-dos a try along with 64hdd to test the stuff quickly on the real machine. i hate emulators.

for interested "newbies" i've investigated the following (recent resp. recommended versions):

compilers:
kickassembler v3.14
acme090

editors:
notepad, very nice customizable and integrateable textpad or even better:
relaunch64 2.0 + code samples + relaunch64 latest v2.1b (german/english beta update)

"german" setup instruction (can also be informative for english users) for relaunch + acme is here


preserve what you deserve

bacon

Quote from: marquisor on January 19, 2011, 07:51 PM
@bacon:
to say it directly, i don't like such answers. what's more time waste? reading and testing the manuals and software to find out after hours (did that recently with merlin128) it does not fit some unique k.o.-points? or asking experienced users, who use it for long time, and can answer in 2 minutes? (that's what forums are for.)
Wrong. You can't know whether the answer takes two minutes or half an hour. Many people think just like me: if you're too lazy to at least skim through the manual to see if you can find the answer yourself (and that doesn't take hours - more likely half an hour or so) but expect to be handed all answers on a silver plate then you don't deserve me wasting any time helping you. Show me that you're willing to put in some effort yourself and I will gladly help you.

It doesn't put you in a good light when you complain about my answer when I actually answered your question about the editor, pointed you to an alternative solution, and even took the time to write some example code for an old question you had asked that I didn't see earlier (I didn't know that you'd already figured it out yourself - your edit didn't show up in my browser for some reason).
Bacon
-------------------------------------------------------
Das rubbernecken Sichtseeren keepen das cotton-pickenen Hands in die Pockets muss; relaxen und watschen die Blinkenlichten.

bacon

#16
Slightly OT, but trying to be helpful: Jim Butterfield wrote a couple of very good articles about C128 machine language programming, specifically about dealing with the MMU and memory banks. They're in Transactor Magazine, available at zimmers.net:

http://www.zimmers.net/anonftp/pub/cbm/magazines/transactor/v7i1/index.html - look for The C128 - You Can Bank on It
and
http://www.zimmers.net/anonftp/pub/cbm/magazines/transactor/v7i4/index.html - look for The Commodore 128 - Banking on the Turns
Bacon
-------------------------------------------------------
Das rubbernecken Sichtseeren keepen das cotton-pickenen Hands in die Pockets muss; relaxen und watschen die Blinkenlichten.

marquisor

#17
Quote from: bacon on January 19, 2011, 09:54 PM
Wrong. You can't know whether the answer takes two minutes or half an hour.

Wrong. The answer if a program gives a formatted output is below 2 minutes for an experienced user of that program. Don't take ppl for a fool!

Quote from: bacon on January 19, 2011, 09:54 PM
Show me that you're willing to put in some effort yourself and I will gladly help you.

You don't know what effort I spent. I don't ask because of lazyness, but because I don't understand things. If you'd know me or read my other posts, you'd better know what kind of user I am.

And that's my last point to you. I think I don't need your "Now go read." or your book tips and RTFM shouts, everyone could give.
I don't care about my "puts you under a light".  Look at YOUR "light" i.e. Reputation and maybe at Hydrophilic's ...
says all...

Overall:

A short snappy answer by a well knowledged experienced user is no silver plate for me. But if your argues all go in that kind of direction, better think about your social skills and intentions and keep your secrets for yourself. I'm done with this and that kind of ppl.

I am happy to help, if I can and have the time and think it's worth it. If not, I don't post. I don't have to tell ppl what a silver plate is or how they'd use google or manuals. That gives me nothing.

EDIT: I hope it gets on topicn again, otherwise I want to have it closed then later (and "chitchat" deleted).
preserve what you deserve

bacon

Sorry, you probably caught me on a bad day, plus I've encountered a few to many people who actually wanted everything served to them without effort, and prematurely took you for the same kind of person. I take your word that you've put in the effort.

You shouldn't judge me from two posts here either.
Bacon
-------------------------------------------------------
Das rubbernecken Sichtseeren keepen das cotton-pickenen Hands in die Pockets muss; relaxen und watschen die Blinkenlichten.

marquisor

#19
Alright, now as we've said each other our opinions, think about them and get a bit more known each other, I think/hope we'd now can go on more friendly (incl. me). :)

EDIT: addendum: The C128 itself is a bigger secret than the popular C64. So we'd all share the "secrets" of this great machine IMHO to interested people. And maybe catch them to get interested.
I also don't like lazy guys who don't want to think. But I handle (as said) it a bit other. ;)
For me it's all tons of information noone can sort out in couple of days/weeks/months. I think one can and should recognize and differ real interested (but with slow in the uptake) from lazy ones.

EOT
preserve what you deserve

marquisor

#20
Found a C128 successor of the very popular Hypra-ASS for the C64.

Now that's my cup of tea, I will use this to get going.

The Software came along with a (german only) book ISBN-13: 978-3890904160. Got a .pdf of that here. The book is ordered.
But I think Hypra-ASS was not only popular in Germany, the commands used in Top-ASS are very similar to its predecessor, if not the same (just instead "/" for direct mode is swapped with a "." period).

Didn't find a summary or reference in english for it (or Hypra-ASS C64) though, yet.

Top-ASS plus C128 can be obtained here on the local "Downloads" section, thanks to Blacklord!

It supports auto-formatting on input, VDC 80 col. mode, custom macro definitions, case switch, if, then, else, basic integration and a ReASS.

Happy regards
maq
preserve what you deserve

RobertB

Quote from: marquisor on January 21, 2011, 01:40 AMTop-ASS plus C128 can be obtained here on the local "Downloads" section, thanks to Blacklord!
Hmm, I don't see there the Basic 128 compiler that I sent him some time ago.  :(

          FCUG celebrating 30 years,
          Robert Bernardo
          Fresno Commodore User Group
          http://videocam.net.au/fcug

marquisor

Quote from: RobertB on January 21, 2011, 02:59 AMHmm, I don't see there the Basic 128 compiler that I sent him some time ago.  :(

What about that: c128basiccompiler.d64 ??
I use this (V1.03) for my BASIC V7 sources. Works quite good.
preserve what you deserve

RobertB

Quote from: marquisor on January 21, 2011, 03:03 AM
What about that: c128basiccompiler.d64 ??
Ah, that's it!  Whew!  Thanks for finding it.

          FCUG celebrating 30 years,
          Robert Bernardo
          Fresno Commodore User Group
          http://videocam.net.au/fcug