Beginner Question: Programs that enable you to Program
-
- Drutt
- Posts: 9
- Joined: Thu Feb 21, 2019 3:42 am
- Location: Puerto Rico
Beginner Question: Programs that enable you to Program
I've already posted in the art and music subforums, so now I'm here in the programming section! Basically I need help with two things:
1. Which program should I use for programming in assembly, and what program should I use for programming in BASIC, for the Spectrum on Windows 10?
2. Which program should I use for programming in assembly, and what program should I use for programming in BASIC, within the Spectrum?
1. Which program should I use for programming in assembly, and what program should I use for programming in BASIC, for the Spectrum on Windows 10?
2. Which program should I use for programming in assembly, and what program should I use for programming in BASIC, within the Spectrum?
- Alessandro
- Dynamite Dan
- Posts: 1910
- Joined: Wed Nov 15, 2017 11:10 am
- Location: Messina, Italy
- Contact:
Re: Beginner Question: Programs that enable you to Program
Hi, once more I will answer you referring to my personal experience mostly, and also to what I have heard and read throughout the years.
1. ZX-Editor is my preferred choice for BASIC programs. A great utility with many options, very powerful and flexible. As for Assembly language, I write the code with Notepad++ and assemble it with Pasmo 0.5.4 beta 2; in the past I used to assemble .ASM files with the experimental 0.6.0 version, but some time ago a strange issue which did not surface with the previous one made me downgrade to it.
2. Simply answered - you don't. No one would do that nowadays. With all the available tools around, there's no need whatsoever to bother coding directly on a Spectrum, unless you need an authoring utility like the P.A.W. for adventures and AGD for arcade games - and even in such cases, it makes sense to do that on an emulated machine, reserving real hardware for testing. Much better, safer and quicker to code on your PC and test it on the Spectrum.
1. ZX-Editor is my preferred choice for BASIC programs. A great utility with many options, very powerful and flexible. As for Assembly language, I write the code with Notepad++ and assemble it with Pasmo 0.5.4 beta 2; in the past I used to assemble .ASM files with the experimental 0.6.0 version, but some time ago a strange issue which did not surface with the previous one made me downgrade to it.
2. Simply answered - you don't. No one would do that nowadays. With all the available tools around, there's no need whatsoever to bother coding directly on a Spectrum, unless you need an authoring utility like the P.A.W. for adventures and AGD for arcade games - and even in such cases, it makes sense to do that on an emulated machine, reserving real hardware for testing. Much better, safer and quicker to code on your PC and test it on the Spectrum.
Re: Beginner Question: Programs that enable you to Program
When I first started learning machine code I used the built-in assembler in ZX Spin 0.666 or just assembled the code by hand using the Spectrum manual. But now I stick to writing in Notepad++ and using something like Pasmo, Sjasmplus, or Zeus to assemble it. I find the process of setting up the build to produce a .tap file can be complicated, so an emulator with a built-in assembler such as ZX Spin would be a good place to start.
If you don't want to get into assembler right away there are also some great C compilers, such as the one in z88dk, and that might be easier to deal with. Or you could try using a faster compiled BASIC such as Boriel's ZX Basic. I think it's still worth using the original Sinclair BASIC interpreter for programming, but for assembler you're better off sticking with PC tools.
If you don't want to get into assembler right away there are also some great C compilers, such as the one in z88dk, and that might be easier to deal with. Or you could try using a faster compiled BASIC such as Boriel's ZX Basic. I think it's still worth using the original Sinclair BASIC interpreter for programming, but for assembler you're better off sticking with PC tools.
Re: Beginner Question: Programs that enable you to Program
Another vote for Spin for (1), I found the in-built assembler helpful to learning assembly from pretty much zero knowledge. Though to be honest, I couldn't get my head round anything else because I'm not all that technical (I'm not a 'modern' coder)...
It's quite easy to use a combination of BASIC and assembly if you were planning to dabble in both. Write your code, click File > Assemble to put it into the Speccy's memory:
I agree about (2), I wouldn't even attempt it(!) as it's a bit laborious. And you still get a great sense of satisfaction once you finally get the code you wrote on your emulator running on the real machine.
It's quite easy to use a combination of BASIC and assembly if you were planning to dabble in both. Write your code, click File > Assemble to put it into the Speccy's memory:
I agree about (2), I wouldn't even attempt it(!) as it's a bit laborious. And you still get a great sense of satisfaction once you finally get the code you wrote on your emulator running on the real machine.
My Speccy site: thirdharmoniser.com
Re: Beginner Question: Programs that enable you to Program
I too would start off with the built in Sinclair BASIC. You then start to get the feel of the machine and how the graphics work Then move onto Assembly, C, or one of the game designers like AGD.
Re: Beginner Question: Programs that enable you to Program
What is your general experience with programming? Did you program in Basic before? Do you know any modern programming language?
in case of programming in Z80 assembler on modern PC there are two things - editor and assembler.
Editor is well, a text editor that you use to enter your code. It doesn't have to be created for Zx Spectrum at all. They are general purpose things
that you could use as well to write poetry
Assembler is a program that converts instructions to binary code. It is "invisible", doesn't have own interface with windows and buttons. You can call it from command line or FROM TEXT EDITOR which is the important thing here.
So you use a combo of editor+assembler and can make your own favourite mix here
in case of programming in Z80 assembler on modern PC there are two things - editor and assembler.
Editor is well, a text editor that you use to enter your code. It doesn't have to be created for Zx Spectrum at all. They are general purpose things
that you could use as well to write poetry
Assembler is a program that converts instructions to binary code. It is "invisible", doesn't have own interface with windows and buttons. You can call it from command line or FROM TEXT EDITOR which is the important thing here.
So you use a combo of editor+assembler and can make your own favourite mix here
-
- Drutt
- Posts: 9
- Joined: Thu Feb 21, 2019 3:42 am
- Location: Puerto Rico
Re: Beginner Question: Programs that enable you to Program
I've programmed before with C for a class in university. It was around 2 years ago, and lasted for a semester (the length of the class).
I would personally like to use a text editor and an assembler, but it's setting up the assembler that's hard. Anyone willing to help? Also, anyone here have Discord or uses an IM (Instant Messaging) service of the like (can be Facebook's Messenger).
I would personally like to use a text editor and an assembler, but it's setting up the assembler that's hard. Anyone willing to help? Also, anyone here have Discord or uses an IM (Instant Messaging) service of the like (can be Facebook's Messenger).
Re: Beginner Question: Programs that enable you to Program
If you want to use a text editor with an assembler then try Pasmo. Follow this tutorial. It's a little old but I use Notepad++ or just any text editor.
http://shaunbebbington.blogspot.com/201 ... i.html?m=1
http://shaunbebbington.blogspot.com/201 ... i.html?m=1
-
- Drutt
- Posts: 9
- Joined: Thu Feb 21, 2019 3:42 am
- Location: Puerto Rico
Re: Beginner Question: Programs that enable you to Program
Thank you, Peter.
- 1024MAK
- Bugaboo
- Posts: 3123
- Joined: Wed Nov 15, 2017 2:52 pm
- Location: Sunny Somerset in the U.K. in Europe
Re: Beginner Question: Programs that enable you to Program
Please, no Vogon poetry
[media]https://youtu.be/IxPeIiU2kx4[/media]
Back to the topic, yes, follow the advice given above for writing assembly code / machine language code.
For general tinkering and writing short BASIC programs, you can either use a real ZX Spectrum, or use an emulator.
If using a real ZX Spectrum, I do recommend you use a suitable mass storage system that you can SAVE you programs on (not all can handle saving). If you can get used to the keyword entry, any ZX Spectrum can be used. But if not, you will need to use the 128K full screen editor on the 128K, +2, or +3 machines.
For longer BASIC programs, I recommend either using an appropriate application on a PC, or an emulator. As you will want to keep making backup copies as you develop it.
Mark
Standby alert
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb
Looking forward to summer later in the year.
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb
Looking forward to summer later in the year.
Re: Beginner Question: Programs that enable you to Program
There is an PC application (a precise word would be IDE I guess) for writing Spectrum Basic programs called Basin. It comes with built-inFor longer BASIC programs, I recommend either using an appropriate application on a PC, or an emulator
emulator so you can test your programs while writing them witohut leaving the environment.
https://sites.google.com/site/ulaplus/h ... -and-basin
Personally I never got into it but you may give it a try to check yourself if you like it.