Hi,
I have been looking for a copy of this book without success. Does anyone have a PDF version? Best wishes
Entrar ou registrar-se para comentar
Hi,
I have been looking for a copy of this book without success. Does anyone have a PDF version? Best wishes
where in the UK are you? If you want to learn Z80 from scratch then maybe this is the book for you, otherwise i would recommend the RED BOOK published by Avalon (aka Kuma) for a full Bios listing
Hi,
I'm in Crawley, West Sussex. I'm a beginner so the Ian Sinclair one I think would be best. I have read some of his ZX Spectrum books.
Thanks
Peter, I see you are looking for this book for 2 years. There should be other books available.
You should decide what you need. Do you need to know Z80 assembler? Or do you need to program MSX? What is your aim and outcome of reading such book?
There's no such thing as MSX assembly language. MSX has Z80 CPU installed, and there's Z80 assembly language. If you are to program MSX, you not only need to be knowledgeable in Z80 assembler, but also in the software structures of the MSX and even its hardware design.
Give us more information, and then we probably will be able to help you.
Hi.
Try your local library I know it sounds bizarre... but most libraries still have these types of book from the eighties, BBC micro, Acorn electron, ZX Spectrum , MSX etc..
My local libary has books on ORIC, Sinclair ZX Spectrum , Amstrad, Sinclair QL, Z80, 6502 assembler etc etc .. failing that try ebay ... they sell lots of old books !
Hi,
I have read the Ian Sinclair on machine code (by which I mean assembler) and I can do the basics.
I'm just keen on reading the MSX book by Ian Sinclair to expand my skills.
Its a pity that if you go on the WoS site there are loads of PDF scans, but nothing similar for MSX.
As for local libraries you are very lucky, certainly in West Sussex there is nothing older than five - six years.
Finally Ebay, I have a search on and nothing has come up for years.
Peter
Try amazon 2nd hand section.
Peter, I see you are looking for this book for 2 years. There should be other books available.
You should decide what you need. Do you need to know Z80 assembler? Or do you need to program MSX? What is your aim and outcome of reading such book?
There's no such thing as MSX assembly language. MSX has Z80 CPU installed, and there's Z80 assembly language. If you are to program MSX, you not only need to be knowledgeable in Z80 assembler, but also in the software structures of the MSX and even its hardware design.
Give us more information, and then we probably will be able to help you.
Of course there is such a thing as MSX Assembly Language! MSX computers are certainly based round the Z80 CPU, but they have a different collection of ROM based routines to the Sinclair Spectrum, Amstrad CPC, Memotech MTX, Tatung Einstein etc. If someone listed a simple Z80 Assembly language program to print a text message on a Sinclair Spectrum, then I can say I'm almost 100% sure it wouldn't work on MSX. This is because the screen memory is organised totally differently on those two computers. This program would probably call a ROM routine to print out the ASCII character whose number is held in the A register. You could copy out the whole routine from a Spectrum ROM or an MSX ROM, but then your program would be a lot longer and probably still wouldn't work on both computers. As for what the similarities and differences are between MSX, Spectravideo 318/328, Colecovision console, Sinclair Spectrum, and Amstrad CPC, this will be explored in a series currently running on Youtube called "Let's Make a Retro Game" on the channel Electric Adventures. So far I've seen just two videos about installing some Windows software which allows people to develop for MSX, Colecovision, and possibly some other systems. This software is a sprite designer, and BlueMSX. The third video will feature installation of some more software, then it will progress from there. I don't know how long this will all take, though!
Of course there is such a thing as MSX Assembly Language! MSX computers are certainly based round the Z80 CPU, but they have a different collection of ROM based routines to the Sinclair Spectrum, Amstrad CPC, Memotech MTX, Tatung Einstein etc.
That's actually very interesting discussion, extending to the philosophical and religious beliefs of computer users and designers
Let's look at Wikipedia: "A program written in assembly language consists of a series of (mnemonic) processor instructions and meta-statements (known variously as directives, pseudo-instructions and pseudo-ops), comments and data", and "An assembly language is a low-level programming language for a computer, or other programmable device, in which there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions". In Russian version of Wikipedia Assembly language is defined as "low level language with instructions, usually corresponding to the processor instructions".
Thus I can not prove that I am right in my previous statement because it says "very strong (generally one-to-one) correspondence", not equating assembler to the type of CPU.
However your logic also has a flaw - in your view there should be MSX assembly language, MSX2 assembly language (extended ROM routines, RTC), MSX2+ assembly language (V9958 modes), CPC assembly language, specific Spectrum clone assembly language etc while they are all based on the same CPU and agreed manufacturer micro-command mnemonics.
In general assembly language is defined by the assembly program which assembles/translates command mnemonics into executable code. I would NOT challenge article's title "Introducing MSX Assembly Language and Machine Code", which IMHO just a shortcut of longer "Assembly Language and Machine code introduction for MSX computers".
Edit: if we take M80 assembly program, it can function in Z80 and 8080 mode, creating digestible executable code for MSX architecture. This means that in scope of M80 MSX has assembler language having two alternative commands for one set of opcode 3e00: "MVI A,0" and "LD A,0". If I would write assembly program (the one which assembles mnemonics into the executable) and define new command "DL 0,A" which would translate to 3e00, I would be able to claim that it is MSX assembly language command because this code can be translated to the expected MSX executable code.
I'm with eugeny, cx5mer your logic is flawed
The code you write is FOR the z80 so therefore is z80 assembly.
Whether you code for MSX or zxspectrum or whatever z80 device, you are still using the same commands (opcodes, mnemonics). You just need to learn how to access the specific hardware, but its still the same code.
If you explain to a guy in spanish about "how to drive a bike" and after that again in spanish about "how to paint wall" you are talking spanish in both situations, just using it differently (different sentences, saying different things). The same applies to coding assembly. It doesn't matter what chips for sound and video are connected to a z80, he still talks z80. Also the MSX also got many expansions like a SID soundchip, does your msx suddenly speak 6510 (c64 cpu)? ofcourse not.
Books claiming to teach msx assembly are just teaching you to code in z80 assembly + explaining (parts of) the msx hardware structure.
Basically, a more accurate title would be "Introducing Z80 Assembly Language and Machine Code for MSX Computers" instead of "Introducing MSX Assembly Language and Machine Code", but the actual title was probably designed to attract MSX owners who may not even have known what processor their computers used. I think this is a rewrite of another book called "Introducing Spectrum Machine Code" by Ian Sinclair http://www.worldofspectrum.org/infoseekid.cgi?id=2000195 , but I doubt if any of the programs in that book would run on MSX. The basic principles are the same, some applying to any computer, with others applying to any Z80 computer, but even in the first 30 pages all the BASIC programs designed to introduce the principles of Machine Code seem to use memory locations specific to the Sinclair Spectrum, so they wouldn't run without modification. The reader would have to know what memory locations to use for MSX. It may be possible to make a list of all the relevant memory locations from various books about MSX. I think that without modification all the programs in the book "Introducing Spectrum Machine Code" will crash an MSX. Things start getting really interesting on P115, which Firefox thinks is P63. There's a program to produce a pattern on the Spectrum screen. The Spectrum's screen memory seems to start at 16384. Try typing that in!
Don't you have an account yet? Become an MSX-friend and register an account!