You can get assemblers, but it may be tricky. Look on EBay for something like the Crystal assembler. Another way you can do it if you can find a .tap file for an emulator, you can actually play it though your sound card and load it into your Spectrum that way. (Although it's not something I have done) I started off on the Spectrum using those crappy microdrives, before moving onto a PC based cross compiler, so it's possible either way. In terms of reliability and availability, it may be worth looking into the emulator route. It's even possible to hand code your assembler and poke it into the computer's memory, but I wouldn't want to do it for anything but the simplest code. I've still got a copy at home. I wouldn't say the Zacks book is a good tutorial, but it's a great reference. I've always believed that to be a good programmer you should learn assembler so that you have a fundamental grasp of what goes on 'under the hood'.
I work with CISC so I mean stuff like indirect addressing, flag tricks (other than carry) and other efficient fluff the experienced use to save cycles.
Hey Zilog, if you decide to get into Speccy dev be sure to keep me posted - I think it's a pretty interesting machine but most info I've found is about emulating the thing (goddamn emulamers ruin everything AAGH *teeth gnashing*), an actual "how to get started" doc or even a memory map I haven't found yet!
Found this with a quick google search. http://www.worldofspectrum.org/infoseek.cgi?regexp=^Zeus+Assembler$&pub=^Crystal+Computing$ The Crystal Zeus assembler was the professional programmers tool of choice. Not a patch on todays offerings of course, but many games were made with it. I used a system call PDS (Programmers Development System) but that seems to have vanished. I was looking for that when I stumbled on this site. (I'd been speeking to one of the people originally responsible for it and thought I'd look it up for a bit of nostalgia) It had a hardware connection to a Spectrum or Amstrad that allowed you to download and run your code on the target machine. It was pretty amazing stuff at the time. It's not so different to the microprofessors and UK101s I started on. (Now that makes me feel old) I'll have to dig around and see if I can find some of my old Spectrum books next weekend if you want any more details.
About all I remember off hand is that the screen is at 16384. It's organised in a rather odd fashion, with each line 256 bytes apart and every eighth line 32 bytes apart, and the colour information is at the end, made up of a byte for each 8 by 8 block (4 bits fg, 4 bits bg I think) Take a look at the manual for the assembler at the link I just posted above. That gives a basic introduction.
Should have known to look there! I'll get out the +2 after my exams finish on Thursday and check out this stuff. Thanks for the help! :smt023
What snasm one would that be? I'm confused because this thread changed topic. I don't know how this topic went from SNES C compilers to Spectrum memory locations, but let's get back to SNES C compiling.
Just discoverd that I still had the C compiler I found for SNES on my computer. PM and I can send it to you
SNESC by LordTech. It's a scene based C compiler, from a translation group. The only complaint I've read is the limited library available, but that could be programmed in asm. Not a big deal, as far as I'm concerned. It's about equivalent to HuC for the TG-16, as it doesn't support multi dimentional arrays or structures. But, that's a big jump from asm. C could be used for the user interface and game logic, and asm used for the low level graphic and sound stuff. Nice find, I've never heard of it before now.
good. was going to ask if you maybe had some where to upload it to cuz I couldn't upload it myself ^^
sory for bringing up an old thread.. but I just found this page, for anyon intrested on programming in C on the SNES: http://snescentral.edgeemu.com/Development/index.htm
Is this SNASM658? If so, is there any example code with it? I am trying to figure out the SNASM658 assembler, please post whatever you feel comfortable posting.. Thanks in advance.
There was a c compiler for the SNES available. It was called ZARDOZ (http://web.archive.org/web/19970720124726/www.oro.net/~jimg/cdev.html). It may have been bought up by Western Digital. Has anyone seen this compiler?
C is only better in so much as it is easier for a programmer to write and manipulate. Assembly code is very fast in comparison, as it is written specifically for the chips contained within the console and operates at bit level, manipulating the data and memory registers directly. Everything is at a very low level of abstraction. Since processors are so fast now, you usually will only see in-game engines programmed in the lower level languages these days because of the performance gain, and with pixel shaders etc having their own high level languages and processors escalating in power, this will be even less common. Assembly is a soloist's past time and doesn't really work with the complexity you will see in modern game code. It would take someone too long to create a marketable mainstream game from scratch using only assembly code. Games on older consoles like the SNES, for instance, were mostly written in assembly language due to the hardware involved and the lack of development software or SDKs etc. Before Microsoft came onto the gaming scene, console manufacturers gave very limited tools to developers, ultimately only enough to get something up and running. No real libraries or so on. Imagine that eh? It is perfectly plausible to guess that Chrono Trigger et al were programmed in Assembly, although I am not sure how large the team was. Most games in the 16bit generation had 1 or 2 programmers, unlike the teams of today. Things like the game engine and particular generic routines (even back in the early 90's) were reused, and I would imagine this is especially true for Squaresoft RPGs. I believe there are compilers that will take C or C++ code and scale the program down to something approximating assembly level code, but that was something I half remember reading in Edge and was probably limited to the PS2. I'm not sure.
First Hello, Sorry for pushing an old Thread, but i search the File SNESC.zip by LordTech... Can anyone reupload this file? The Link from "cdoty" is down and i can´t find a other source for this file. :crying: The offical Site "http://wakdhacks.lfx.org/compiler/" of SNES C is down, too... Thanks ;-)