Categories
Review

tniASM v1.0 Beta

Most people in the MSX scene know what an assembler is, so I won’t go into the explanation of what that does and is.

That being said, a few weeks ago I received an update for tniASM. The updates are for the beta test version of this piece of software, so you have to donate and ask for this software to be able to experience the full force of it.

In the past I used several assemblers to try MSX z80 assembly out. Then I went on a small ASCII MSX-C adventure, created a small game engine, and then realised that I had to use assembly for the most efficient ML code, hence more control.

So I started using the freeware cross-assembler tniASM v0.45 on Windows and I found it really comfortable.  After this I donated for tniASM v1.0 beta and I could start using the full force of this assembler.

Now I am using it for about two years and here is my review of it.

This assembler works in a console environment (like most of them). You use your favourite notepad application and you assemble by typing in the executable with certain parameters(even without parameters), pretty straightforward. You can imagine to also create batch files or in some notepad applications, you can assign a short-key to perform the assembling with parameters and also give the output.

The manual is in an html file, it has most basics about how this assembler works and handles certain elements in its syntax.

This assembler comes with the option to adapt to your own syntax. For instance; you want to use hex numbers as follows: A1h or $A1 then you can use a parameter to let tniASM accept this syntax behaviour, there are also other things, which can be made compatible (even hex number starting with # ;-)). Let’s say you were working in WBASS2 assembler before and want to change to tniASM, then you can still use your syntax and do not need to use the default syntax tniASM uses.

The strongest part of tniASM is its use of macro’s. It goes as far as a point if you use them allot, you can visually create a whole own syntax in your own programming style.
Here is an example of a string program without the use of macro’s:

; for MSX-DOS environment
;
; Instruction Label definitions
%INCLUDE “definitions.asm”

; entry point
  org     100H

; Program code

Main:
  ld       de,STRING1
  ld       c,_STROUT  ; print text string to screen
  call    BDOS

  ld       de,STRING2
  ld       c,_STROUT ; print text string to screen
  call    BDOS

; return to DOS
  ret

; Data
STRING1:
  db     “Hello World! $”,0

STRING2:
  db     “I am talking to myself. $”,0

So, for two lines of strings, you need this amount of code. Now let’s look at a version with a macro:

; for MSX-DOS environment
;
; Instruction Label definitions
%INCLUDE “definitions.asm”

; Macro
%macro _print(%n)
  ld       de, #1
  ld       c,_STROUT
  call    BDOS
%endmacro

; entry point
  org     100H

; Program code

Main:
  _print(STRING1)
  _print(STRING2)

; return to DOS
  ret

; Data
STRING1:
  db     “Hello World! $”,0

STRING2:
  db     “I am talking to myself. $”,0

As you can see, it almost has the same amount of lines, because you need to define the macro’s, but you only need to do that once, after that you only have to type the macro with the label or value (you could also include a locate x,y in there as well) and your string will be printed on screen, so that makes the code allot cleaner.

For me this is a big plus, the strongest point tniASM has to offer.

So, do I have something that is not so good about this assembler?
To be honoust, not really about the assembler itself. It is fast, it has a good error report on where problems arrise when trying to assemble something that is faulty.

Other assemblers do offer some basic example code on how to create a.bin or .rom or .com file, but that is nitpicking.

If you don’t want to program on your MSX or do not want to install JAVA to be able to use a cross-assembler, then this is your best option.

If you have question regarding tniASM, please visit the TNI website, or if you are visiting the MSX fair in Beuningen(Nijmegen) in the Netherlands this February 2019, TNI has a stand there.

Categories
Emulation Hardware News

Raspberry Pi MSX Clone first Test

Today we post a first test with the Raspberry Pi MSX Clone, a HAT specially designed to make it possible to use real MSX cartridges with your Raspberry Pi.

Our test setup has the following components:

  • Raspberry Pi 3B+
  • Raspberry Pi MSX Clone (RPMC V9)
  • 16Gb MicroSD Card U1 (Only 1Gb is needed)
  • HDMI Screen
  • USB Keyboard
  • Ghost Cartridge
  • Galaga Cartridge
  • Nemesis2 Cartridge
  • Megaflashrom SD Cartridge

First we have setup a SD-Card with Blueberry MSX, that has been special prepped to be used with the RPMC HAT. This SD-Card Image can be downloaded from this site.

Icon

Raspberry Pi MSX Clone SD Card Image 0.4 98.93 MB 226 downloads

Raspberry Pi MSX Clone SD Card Image 0.4 MSX Emulator based on Blueberry, used for Raspberry...

Then we connect the RPMC Hat to our Raspberry Pi and started testing the cartridges. First we tried Nemesis 2 and after the player select we started in the first level. Unfortunately the game crashed after a minute or so. Then we decided to give the Megaflashrom a try (all tough we already heard that it wouldn’t work). The MSX it self cam into a reboot loop.

After these 2 cartridges we tried Ghost and Galaga. Both games run smooth on the RPMC, as you can see on these video’s.

Galaga on the Raspberry Pi MSX Clone

GHOST on the Raspberry Pi MSX Clone

If your are interested in a Raspberry Pi MSX Clone HAT to use your real cartridges on a Raspberry Pi, MSX Information Network still offers a groupbuy. Please fill in the form on this page: https://www.msxinfo.net/group-order-msx-pi-extension-board/

The groupbuy will close om January 23th, what gives you 10 days to place your order.

Since the groupbuy is already open for 2 weeks, we already had some questions about the RPMC HAT.

1) Is there any known compatibility problem with specific Raspberry-PI boards?

Any RPi with 40 ways GPIO connector can be used, but Meeso Kim, the original author, recommends the Raspberry Pi 3 because the speed and CPU extra cores. So, even the Zero can be used, but maybe the emulation would not be good enough for some games.

2) I see that the project is in a very early stage, especially in terms of emulation, so I wonder if it is prudent to produce the extension board already. How do you know that unforeseen emulation constraints would not affect current hardware design, rendering produced boards useless?

Actually the board is well settled at this point. The first version of this hardware was published almost 3 years ago when Meeso Kim was satisfied with his initial tests and even “Zemmix Mini” is using the same hardware, with another form factor. From the initial version to this day a few changes were made to simplify the design, but still the same initial hardware. Talking about the “electronic side”, the hat replicate the Z80 address, data and control lines, just like the original “real” MSX slot, so, it will not change in the future.

3) I see that emulation is based on BlueMSX. How does that impact on using real cartridges/SD implementations (e.g. Carnivore2, MegaFlashROM SCC+ SD, and BEER) which are not emulated by BlueMSX)? In other words, are limitations on software emulation impacting on the use of actual hardware?

BlueMSX or OpenMSX can be used.

4) If new features come up after producing the extension board, such as integration with OpenMSX, should we only flash the update into the board or are there other implications?

There are no “upgradable” component in the hat, it’s just TTL logic ICs to make the RPi happy with the MSX voltages. 100% of the emulation runs on the Pi side and the user can always update the SD card with the last emulator, just burning the SD with an updated image.

Categories
News

MSX Information Network organizes a MSX-Pi Group Buy.

Imagine being able to use a Raspberry PI not only for SD card programs, but also for real cartridges!. Victor Trucco has put this into practice, based on Meeso Kim’s work.The project is in an early stage, emulations still have to be adapted to the new hardware, but games of the first MSX generation already run with some slowdowns but without other big problems. BlueberryMSX, a ported BlueMSX by known MRC member uberjack supports the new extension so far, we hope for soon integration of openMSX.

Please check the Group Buy Page at : https://www.msxinfo.net/group-order-msx-pi-extension-board/

Categories
News

GR8cfg version 0.76

Some might have seen GR8cfg version 0.75 come online, but there was a small bug inside it, which I needed to squash ;-). The bug was in the mapper modes 1 to 7. So if you use one of those on a regular basis, please update your version to 0.76.

Now you can also get PSG sound/music from the GR8NET, thanks to Eugeny Brychkov. The PSG settings are added in GR8cfg, as well as the settings for GR8cloud.
If you want to run your own GR8cloud server, it is explained in the updated GR8NET manual.

Here is what was updated since version 0.75.

Updated to v0.76 (22nd of November 2018)

  • Changed layout main menu
  • Added batch file
  • Fixed minor bugs in modes section

Updated from v0.74 to v0.75 (18th of November 2018)

  • Added PSG support
  • Added GR8cloud support
  • Fixed minor bugs

 

 

Categories
Hardware Howto Multimedia Cartridges Music

FM-Pac English translation built-in

In the 90’s I used to have a FM-Pac, to add great sound to my MSX. The built-in menu was Japanese, and since there was no Google Translate, it was pretty useless to me.

FMPAC Japanese Menu

 

 

 

 

 

 

 

Thanks to MSX Translations there is a patch available to patch the ROM to English. This patch can be applied at runtime, but I used it to patch the original ROM and burn the patched ROM on a new Eprom and place it inside the original FM-Pac.

To accomplish this I removed IC2 from the original FM-Pac and replaced it with a 27C512 Eprom (150nS), with the English Patched Rom.

FMPAC PCB with Original ROM

FMPAC PCB with Patched ROM

 

 

 

 

 

 

 

 

 

 

 

 

I have dumped the original ROM and patched it with the English patch, they are available as download on msxinfo.net:

Icon

FM Pana Amusement Cartridge ROMs (Japanese - English) 49.78 KB 110 downloads

This archive contains the original Japanese ROM and the translated English ROM Japanese...

 

After replacing the ROM, this is the result:

FMPAC with English Menu

Categories
News Review

Review – UMJA the MSX USB Mouse and Joystick adapter

MSX Information Network has tested the MSX USB Mouse and Joystick Adapter, in short UMJA, produced by TMTLOGIC.
There is always a reason to buy one of these handy devices, either you need it to use a graphical interface like SymbOS uses or you want to draw with it in AGE. Let’s get to our review!

 

The facts

The core of the UMJA is a powerful ARM® 32-bit Cortex-M4 210 DMIPS microcontroller. The USB port is a high speed USB 2.0.
It is also possible to upgrade the firmware yourself, with the included male-male USB cable and Windows Software (STmicroelectronics DfuSe Demo 3.0.5).

The Umja is not only to be used with PS/2 compatible mice, but also for a several types of USB HID mice.
(Source: TMTLOGIC website)

 

First impression

At first this device looks well constructed and has good firm connectors and plug with cable, they also provide a male-male USB 2.0 cable. Their website gives you the basics and what it can do and how it basically works.

 

Pro’s

  • There is allot of good things to say about it. The joystick-port makes sure you keep the functionality of the joystick, plus it keeps you from plugging and unplugging your joystick too much, which is always bad for the durability of your original joy-port pins.
  • The casing is made of a nice sturdy plastic and transparent with a gloss printed label on it. The connector cable that comes out of the back is long enough to position your UMJA anyway you like to.
  • Once you have your mouse connected, you can change to speed with the middle mouse button, the sensitivity is always 200dpi though.
  • The price is right, it isn’t something that is worth 100 euros, but 35 is a good value for it. Plus you get a small wireless mouse with your device that works 100% with UMJA.

 

Cons

  • Like with everything, it also has some points that could be improved in the future.
  • The upgrade sofware isn’t included on a DVD or small pendrive, you need to download it here
  • They do not mention which PS2/USB mice they tested to 100% work with it.
  • The power on/off function seems very cheap, if your nails are too thick or your finger aren’t small enough, you need a pen to press the switch, the left-mouse power switch doesn’t always work.

 

The verdict

For 35 euro’s it is well worth it, it does what you want when using a mouse on MSX. The mouse resolution of 200dpi is enough for your MSX screen resolution to properly work and feel smooth.
The fact that you are not sure if a certain PS2/USB mouse works with your UMJA, makes this a uncertain buy, if you don’t want to use the small wireless mouse they provide with the device.

Be aware which version to order. There is a Turbo-R version and a regular version. The only difference is the connector. The connector of a regular version doesn’t fit the Panasonic Turbo-R and MSX2+ (because of the construction of the Turbo-R’s and MSX2+ Panasonic joystick ports), if you question if your MSX has room for the regular version, choose the Turbo-R version, then you know for certain it fits.

Special Offer!!!

In association with TMTLOGIC and MSX-Shop.nl we can offer a € 3,- refund on all orders of the UMJA placed between Februari 23th and March 31th 2018.
Just order your UMJA at this link : http://www.msx-shop.nl/product-categorie/hardware-modules/ and mention this deal in the ‘Order Notes’, you will get a € 3,- refund.

 

Erik and George