ForumsFlashtro.comWhy??MC68000 versus x86 ML RSS

123 >>> 

jonathon

Avatar


Having learned on the 6510 then the 68000, I nearly retched my guts out after starting to learn x86 ML. Am I the only one that really appreciated 8 data and address registers, all those addressing modes, and loads of instructions? I'm sure there's a counterargument, but Intel ML has always felt unnatural to me.
 

mr.spiv

IMHO everything compared to 6510 and alike is heaven on earth :p I started off with Z80, which was neat. Then later after m680x0 I have stayed with RISC architectures as they tend to be nice to program at machine language level.. or erm I finally started with 6502 because of PCE :blush

Anyway, I have no experience on the x86 machine languge. Never had a machine that actually had Intel CPUs until now, after selling my soul and changing from PPC Macs to Intel Macs. x86 can't be worse than 6510 :D:p
 
..more coffee..

newton

Avatar
6510 isnt so bad i think. i did a few things for fun on a c64 and it was pretty easy when you knew 68000... intel is another matter.... no sane people program machinecode for intel! It carries many generations of backwards compatibility, weird adressing schemes and more nasty things.

i dabbled in 486 code some 13 years ago and i can only assume it has become worse.
 

plagueis

I've done some x86 assembly in the Windows environ and of some in DOS and Linux as well. (I'm aware I'm posting in an old thread, but I like the topic) I've never really written anything long in x86 assembly and I think if I had to even write several hundred lines of code I'd get sick...much less thousands. I've done most of my asm in 6510/02 and I love it, I've coded over 30,000 40,000 lines of code last count...and it's a joy to code. I know enough of 68k to know I'd like it once I got really comfortable coding on the Amiga using all the registers and PC relative code and everything. All in good time.

As far as intel asm, I prefer reverse engineering x86 to coding...especially in the Windows environment. There's so many tricks you can use to get a breakpoint into execution at the point you want....break on a certain Win32API, Hardware breakpoints, 0xCC..using OllyDBG, Immunity Debugger, and IDAPro or softice you can do anything. So I'd rather crack on intel than code.
 
Intros?...I'm just here for the girls!

cewlout

Avatar
The Intel x86 (and the x86 family in general) is one of the worst processors I have ever seen. The segmentation is bullshit, the instructions are "ugly" (:-)) the registers are poor and the code is obfuscated by design.

The MC68 series was far superior to Intel imo. The x86 was only pushed by the PC industry giving Intel the possibility (money) to develop the CPU faster and further than Motorola was able to that time.
 

plagueis

Agreed 100%, and the funny thing is that when you get into discussions with people regarding assembly, you hear the common line being repeated, "...It's only good for optimization of libraries, or functions used in high level languages, it's hell when you have to code an entire program in it, it's only good for short snippets of efficient code...etc" Often you hear that most when you are talking to people who only have experience with coding asm on the x86 architecture and no other.

Of course, today with a lot more ARM hardware implementations on the horizon, there will be a greater opportunity for asm programmers to do something a bit more enjoyable again.
 
Intros?...I'm just here for the girls!

goonzy

plagueis:
Of course, today with a lot more ARM hardware implementations on the horizon, there will be a greater opportunity for asm programmers to do something a bit more enjoyable again.

Good for the few lucky ones who bought an Archimedes in the old ages :)
 

plagueis

# goonzy : Good for the few lucky ones who bought an Archimedes in the old ages :)

Yeah, for sure. I have been tempted in the past to buy an Archimedes just for the excellent port of the vector based Elite. It's supposed to have one of the fastest and most beautiful looking versions of that game. The Amiga version was pretty fast though...and I had the c64 version and the DOS version of Frontier. Cool to hear the Archimedes mentioned though....were there any demos? Any advanced protections and subsequent cracktros?
 
Intros?...I'm just here for the girls!

cewlout

Avatar
# plagueis : (...)
Of course, today with a lot more ARM hardware implementations on the horizon, there will be a greater opportunity for asm programmers to do something a bit more enjoyable again.

ARM is far better than x86 of course but if I had a choice I'd rather choose a MIPS CPU. My Favlist of good CPUs and clean and enjoyable code is:

1. MC6800x0 (and derviates)
2. MIPS
3. PowerPC
4. ARM

I also coded alot on Playstation and N64 in assembler... and the MIPS was very a enjoyable and well designed CPU, like this:
  move   a3,a0
  move   s0,a1
  addiu  sp,sp,-0x40
  sw     ra,0x20(sp) 
  jal    subroutine
  nop
  lw     ra,0x20(sp)
  nop
  addiu  sp,sp,0x40
  jr     ra
  nop

Wonderful code ;-)
 

WayneK

Makes me feel nauseous just looking at MIPS asm again... :P
All these delay slots filled with nops, some truly hideous compiler-generated code in games (200+ lines where 20 would do) for PSX and N64 etc... of course I never graduated beyond the absolute basics necessary to make some trainers, but it always struck me as one of the more counter-intuitive architectures out there!
Before this gets into a big "which cpu is better" argument, let's just accept that ARM > * ... :)
(and since this is a (mainly) amiga-based forum, 680x0 is 2nd!)
 

cewlout

Avatar
I liked MIPS very much, very easy cpu and very clear!!
Or PPC :-) also cool and MC68k like :-)

http://class.ee.iastate.edu/cpre211/labs/quickrefPPC.html


Hm.. ARM :-) what I don't like is the thumb and arm mode. It's nice for devices saving power but then again for a (assembler) programmer bad (which mode to use, switch between modes etc.. blarghh). I don't envy the NDS, GBA etc.. (scene-)coders/crackers (although I think most of the stuff/intros is written in c).
 

plagueis

I don't envy the NDS, GBA etc.. (scene-)coders/crackers (although I think most of the stuff/intros is written in c).

I hope not, I got into demos for the very purpose of getting away from high level languages (in the UNIX environ) which I'd really burned out on between the years of 1992 and 2007. Coding in 100% assembly on the 6510 is the best feeling in the world. As far as the "which architecture is better?" war, I don't yet have enough experience to speak with authority and my only real contribution to the the thread was to underscore the original point about x86 asm being too loaded down with nonsense opcodes and being somewhat obfuscated by nature. I'd rather code in anything than x86, but if it's a fun project I can handle that too.

Regarding the NDS, GBA, GBC. I am pretty sure with the latter two hand held consoles, most of the intros and stuff are coded in assembly, not sure about the NDS, but I'd like to know. WK? BTW, I put together a gameboy "hello world" in asm the other day using Rednex Gameboy dev system.

I still like C (and a little PERL and Ruby) and UNIX (especially Solaris), but for the last 3 or so years asm has been all I want to do. If only I had started back at age 13 when I saw those first ESI intros. So now I feel like (in a way) that I'm making up for a lot of missed time.
 
Intros?...I'm just here for the girls!

cewlout

Avatar
# plagueis : Regarding the NDS, GBA, GBC. I am pretty sure with the latter two hand held consoles, most of the intros and stuff are coded in assembly, not sure about the NDS, but I'd like to know. WK? BTW, I put together a gameboy "hello world" in asm the other day using Rednex Gameboy dev system.

I'm rather sure that (most of) the NDS intros are written in C.
 

WayneK

All the NDS intros are written in assembly, sorry cewlout :)
 

plagueis

Good, because even though I'm a c coder myself...something really bothers me about scene productions being coded in high level languages. Someone once said (Puterman/FLT) that demos are about banging directly on hardware.
 
Intros?...I'm just here for the girls!
123 >>>