Today's review of assemblers I'd like to start with Alasm 3.8, especially since in the third issue of our magazine we promised to provide a detailed account of it. But first, a small introduction.
I would like to immediately thank Mr. M.M.A (for providing me with all the programs listed below for testing) and MaxSoft (for such a necessary initiative for the Native Homeland (Oberon) - the description of assemblers).
Times are changing, the requirements imposed on assemblers by programmers, hackers, and even ordinary mortal users are changing. How many new unusual, non-standard assemblers have appeared? Quite a few. But one can say with confidence: the perfect assembler has not yet been written. And it cannot be. Some like sophisticated shells, like in Zasm 3.10, some prefer the super-fast and original XAS, some appreciate the simplicity of the good old Tasm, while others are still stuck in Zeus. As many people as there are, there are opinions. The main thing is to have a choice. As one unforgettable "formatter" said:
"More assemblers, good and different!".
And a couple more general phrases. It is possible that in describing the program I may seem somewhat biased, but in my opinion, this should only mean that the assembler has left a stronger impression (I liked it) on me than other similar programs. So, dear Authors, I ask you not to take offense but to take note of the facts presented below. With this, I conclude my official introduction.
Thank you for your attention.
ALASM 3.8
■■■■■■■■■■■
(Alem)
This program has previously been the most powerful and fastest assembler among all SINGLE-PASS :) created in the last year. And this version, it seems, should satisfy the demands of all those who were previously deterred by something in Alasm. Now the program supports any additional memory over 128K. The package comes with memory drivers for ATM, PROFI, SCORPION, but there is the possibility to write your own driver and connect it in SetUp. In addition, there is now the ability to customize your keyboard settings to your liking, so it seems that the keyboard polling issues with turbo mode turned on will disappear.
In my opinion, one of the few unresolved inconveniences in operation is the rather poor text editor (it even lacks line numbering), which generally spoils the overall impression. And the ability to work with binary numbers would not hurt this assembler (although I don't particularly need it).
One of the important features of the program is the ability to work with texts, the number of which is limited only by the availability of free RAM pages. There is the possibility of assembling into a page.
About some of the author's plans:
1) Label table size up to 64K:
2) RAM disk for includes:
There is not much to say about the latter, as I believe it is not necessary (if the text is on the page, then disk access does not occur anyway), and the first point will be welcomed by all coders.
TASM 4.12
■■■■■■■■■■■
(Rst#7/CBS)
Somewhere at the beginning of this year, a new version of Tasm appeared, and not from some next VasyaSoft, but from the person who is the original author of this program, - Rst7. Honestly, after reading the announcement of the assembler in ZX-Review 1-2 for 1997, I really wanted to see it: and moving through lines with errors, and hypertext Help on directives and management, and increased assembly speed, and removed restrictions on label length (up to 128 characters), etc., etc. All this is certainly good, but I would like to note a few other points:
1) The program has the most complete MACROS I have ever seen, in which you can use local labels (!). As an example, Rst7 provides several files:
6S02.A, containing macros to facilitate programming for the Dendy video controller :).
SNAKE.A - a game (commonly known as 'python'), whose operation is based on the use of conditional translation commands.
SINUS.A - sine table generator.
EXAMPLES.A - example of using macros, local labels.
2) The ability to assemble into a page has appeared.
3) Finally, the original Tasm works on various Scorpions and other computers without modifications.
All other author's gimmicks have dubious value:
1) In the runeptekctobom Help, for example, besides the description of Tasm directives (in case someone forgot how to use ORG?), you can read obscene remarks about AIG (one of the authors of Masm 1.x and the author of the future Masm 2), who once contributed to Tasm, or learn that Tasm 3.0 was a beta (!) version.
2) Moving through lines with errors (76 lines are remembered, which is quite a lot) is not done in the best way. The line in the text is not marked in any way, nor highlighted in color. Furthermore, if lines are added or deleted from the text, transitions will be performed incorrectly. Was it worth doing if it was done better somewhere else?
3) The format of the stored text has been changed. Thank God, there is a built-in re-coder.
4) The editor remains as poor as ever, although it has been made for the visually impaired with 32 characters per line.
5) The selection of the loaded file with the cursor from the directory is done quite originally. I didn't even immediately understand what happened.
6) There is a screensaver that inspires the creation of masterpieces like the Black Raven...
XAS 7.432.7.432c
■■■■■■■■■■■■■■■■■■■
(Max Petrov, Creator)
Officially, Xas 7.1 is the last version of the assembler to which Max Petrov contributed. All subsequent improvements to the program were made by Creator (aka Paul Falcon) with the author's consent.
The next version of the most non-standard assembler did not please me much. The thing is that even with a living author :) practically no attention was paid to improving the functional capabilities of the program, but only to the speed of assembly (now it exceeds the speed of Tasm 3.0 by 7 times). Meanwhile, the editor does not even have a text search with replacement. Among the innovations, I will note the following:
1) The ability to set an arbitrary label length from 3 to 14 characters has appeared. This deserves special mention. It may be good, as only one-sixth of a page is allocated for labels (or the #56th :), but on the other hand, there is now a trend to use Hash algorithms, which allows for labels of up to 128 characters.
2) The ability to use procedures "cut out" from your own libraries has appeared.
3) Strings in DEFB.
4) Working with multiple drives.
5) The error in the All>Xas re-coder has been fixed, which caused the latter to malfunction on some machines without a Kempston Mouse.
Disadvantages:
1) Lack of support for additional memory (over 128K).
2) Lack of the ability to assemble into a page.
3) Lack of text search with replacement.
4) The editor does not allow entering characters {}[]| and others, which causes some inconvenience.
5) The version Xas 7.432c provides an editor with 64 characters per line, but unfortunately contains some errors. Moreover, the All>Xas re-coder does not support 64 characters per line!
And one more point. When I tried to load the sources from the old Xas, I received a bunch of errors during assembly. As it turned out, Xas 7.1 and all subsequent versions stopped understanding labels starting with the '_' character. Given that the search with replacement is absent, you probably already guessed what inconveniences this caused.
Of course, '_' may be used somehow in the program, but since Max Petrov (or someone else) did not bother to provide complete Help, like in Alasm, and just threw a 'scrap' ReadMe.X, '_' remained a mystery to me.
Zasm 3.10(dv)
■■■■■■■■■■■■■■■
(K.Afendikov, V.Rubtsov, O.Hokhlov)
On May 6 of this year, a significant event took place: Zasm 3.10 (demo version) was 'thrown' into the echo. It's hard to say anything definitive about the demo version, to assess the convenience/inconvenience in work. But one thing is clear: a full-fledged integrated turbo environment has appeared on the Spectrum. Even the demo version impresses with its scale: re-coders, disk doctor (in my opinion, the best of the currently existing), its own monitor (besides STS), the ability to work fully with a printer, copying and deleting files, compression and viewing screens, fonts, without leaving the shell, and much, much more that an assembler doesn't really need.
But since working with the compiler is not possible, I will have to take the authors at their word and provide some characteristics taken from Help or heard from Mr. Afendikov:
1) Support for labels up to 128 characters.
2) The ability to type several assembler commands in one line, separating them with a colon. [Oberon: The value is, I must say, questionable... Although, perhaps, it is convenient when typing some undocumented commands.]
3) Increased assembly speed.
4) "... many other useful features..."
© K.Afendikov
In my opinion, one of the disadvantages is the ability to work with only one text in memory, for which about 30K is allocated. But the most interesting thing is that this same memory will also be 'eaten' by the label table, slowly but surely moving towards the text.
With this, I will conclude the description of assemblers, I will only say that the REVIEW presented the best assemblers of 1997, which are strongly recommended for use. We are left to wait for the full version of Zasm 3.10, Masm 2(*AIG*) and Masm 3 (the program that KSA started writing, but apparently will have to be finished by *AIG*). Also, nothing has been heard about the joint project of Rst7 with Stalker. According to the first, Tasm+STS will represent a kind of turbo environment on the PC with the ability to debug by text and more.
The review was prepared by Alex Noman.
Contents of the publication: Oberon #04
- From the Editorial
This editorial discusses the legal 'charges' against the creators of Oberon #4 as a humorous narrative, highlights the challenges faced in publishing this issue, and announces a potential hiatus for the magazine.
- Scroll
Analysis of the game 'Chaos' by Julian Gollop. Simplified gameplay mechanics and strategic elements. Description of creatures, spells, and tactics.
- Scroll - Unbeliever
Description of a mathematical game for ZX Spectrum where players collect formula symbols while navigating gears.
- Scroll - M.M.A
Discussion of 'Doc the Destroyer', a unique fighting and adventure game for ZX Spectrum. The article covers controls, character customization, and game mechanics. Compatibility issues on different ZX Spectrum models are also addressed.
- Overview - M.M.A
The article provides a review of games for ZX Spectrum, including KOMANDO 2, WRESTLING SUPERSTARS, TAG TEAM WRESTLING, and CAPTAIN PLANET. It highlights the features, graphics, and gameplay of each game, noting both strengths and weaknesses. The review concludes with recommendations and comparisons to other platforms and games.
- Overview
Overview of various ZX Spectrum games, highlighting their unique features, gameplay mechanics, and design elements. Includes critique on sound effects, graphics, and technical issues. Discusses games like 'Stryker in the Crypts of Trogan', 'Phileas Fogg's Balloon Battles', and 'Survival'.
- Overview - Alex Noman
The article reviews games for the ZX Spectrum, including BOOVIE, MOTOR MASSACRE, SOCCER PINBALL, and HUXLEY PIG 1 & 2. Each game is detailed in terms of gameplay, graphics, and unique features. The discussion includes comparisons to other games and highlights specific technical aspects.
- Review
A review of various games, including Little Computer People and Lost Caves, highlighting their features and versions. It also discusses 75Occ Grand Prix by Codemasters with its limitations. The article provides insights into game mechanics and versions.
- Review
Detailed review of various assemblers like Alasm 3.8, TASM 4.12, and others, highlighting their features and shortcomings.
- About Everything
Announcement of the creation of the SamZxNet network in Samara and the challenges of setting it up with HAYES modems. Explanation of the modems' power requirements and potential difficulties. Invitation for technical advice from experienced readers.
- About Everything
Description of travel to ENLIGHT'97 and meeting various demoscene participants. Observations of event organization and issues. Insights into participant experiences and scene discussions.
- About Everything
Report on the second day of ENLIGHT'97: events, challenges, and reflections. Describes voting results and organizational difficulties. Highlights future prospects for Spectrum demo parties.
- About Everything
The article features reader feedback on Oberon #04, critiquing design and content choices and discussing issues with software protection and game enhancements.
- About Everything
Discussion of the adventure game KAYLETH with gameplay tips and advice. Includes a game dictionary and suggestions from the author and their team. Calls for a local artist for future RPG development.
- About Everything
Reflection on the closure of the 'ZX-REVIEW' magazine and the adaptation of its article for 'Oberon'. Discussion on the development of ultra-short boot loaders. Optimization techniques for writing one-sector boot loaders on ZX Spectrum.
- About Everything
Exploration of amateur contributions to electronics, music, and computing history, highlighting figures like Faraday and Babbage. The evolution from handmade instruments to personal computers. Discussion on jazz, blues, and rock'n'roll's informal origins.
- About Everything
The story of Lieutenant Edward Roberts' journey from radio kits to creating the first PC, the Altair 8800, overcoming skepticism and challenges.
- About Everything
The article explores the rise and evolution of the computer industry, highlighting the transformation from passionate hobbyists to corporate dominance by giants like IBM and Microsoft.
- About Everything
An exploration of Sir Clive Sinclair's project after selling the Sinclair brand, detailing the features of the Cambridge Computers Z88 laptop.
- About Everything
Discussion of software market problems in 1997 for ZX Spectrum, highlighting lack of new software and user reluctance to pay.
- Announcement - M.M.A
Announcement of 'Black Raven' game by V. Mednonogov, focusing on gameplay, technical challenges, and upcoming features.
- Announcement
Discussion of the decline in ZX Spectrum development, reviews of new games and utilities, and announcements of future projects.
- Educational Program
The article provides an overview of FidoNet, a non-commercial computer network often considered the predecessor of the Internet, detailing its origins, growth, and unique cultural aspects.
- Hardware
Instructions for connecting the 'ALEGRO' modem to computers with normal port #FF, detailing hardware modifications required for proper signal handling.
- Hardware
Connecting Hayes-compatible modems to ZX Spectrum, focusing on Scorpion and Pentagon models, detailing hardware modifications. Specific instructions for internal port blocking and signal alignment provided. Step-by-step process and technical intricacies explained.
- Hardware
Discussion of the transition from 5.25' to 3.5' floppy disks for ZX Spectrum, including installation issues and solutions for compatibility with existing software.
- Let's Feast
A satirical story about a Rabbit who lost his house to a cunning Fox and how a Rooster helped him reclaim it.
- Let's Gourmet
A humorous tale about Malysh and Karlson's adventures with technology, drawing parallels between computers and everyday life, culminating in a comic mishap with an AMIGA computer.
- Advertising
Article discusses free advertising policy of Oberon, catalog of programs and hardware for ZX Spectrum, and adventure game engagement.
- Advertisement - Kano
Promotional campaign by Magic Soft and RPSG in Russia for Amiga multimedia computers, offering exhibitions, sales, and consultations. They highlight Amiga's advantages over other systems, describe various models, and provide price lists. Collaboration with 'Computers for Population' for distribution and services.