Using NXtelin Zeus

Zeus is a fully-functional development assembler, IDE and emulator geared up to developing for classic Spectrum 48K and 128K models, running on Windows. It has some experimental Next features: in particular the new Z80N opcodes, the enhanced Timex MMU memory management, and sprites.

Crem has generously added NextUART support to Zeus so it can run NXtel.

Setting Up

Download the test version of Zeus from here. This version of Zeus is experimental, and has the latest features that the last public release doesn't yet have.

Copy this file into a directory, anywhere you like on your hard drive. It works better if this directory is not inside C:\Program Files or C:\Program Files (x86).

Clone the NXtel github repository. Using Git clients is beyond the scope of this tutorial, but you may use Git for Windows, or a third-party GUI client. Alternatively, you can go to the NXtel GitHub homepage, click the Clone or Download button, click the Download ZIP button, and unzip the downloaded zip file into a directory of your choice. Whichever way, we will refer to this as the Project Directory throughout the rest of this tutorial.

Open Zeus by running Zeus.exe. Choose the File >> Open menu option, browse to the Project Directory, browse to the src directory inside that, and open the main.asm file inside that.

Installing an ESP

See the this section of the FAQ for suggestion about how to purchase an ESP8266-01 module and a USB adaptor.

Plug the ESP into the adaptor, with the wiggly antenna on the ESP facing towards the adaptor's USB plug. Plug the adaptor into a spare USB socket on your Windows PC.

Open Device Manager, find the section named Ports (COM & LPT), and expand it. You should see an entry similar to ESB-SERIAL CH340 (COMn) Make a note of the COM ports number (n).

In Zeus, click the Config tab, then click the ParaSys tab below it. Set Serial Port to the number of the COM port (n). Set Baud Rate to 115,200. Check the Enable ParaSys and the ParaSys uses Next Protocol rather than my ParaSys interface boxes. Uncheck the Zeus button defaults to ParaSys not Emulate button.

Still in Zeus, click the ParaSys tab (on the top level of tabs, immediately below the menu). Uncheck all the boxes at the bottom of the screen. In the dropdown list, select the (No PS) Drive Hardware option. Exit Zeus.

Setting Up the ESP


Download and install the Termite terminal program, then run it.

Click the settings button, and enter these settings: * Port: * Baud rate: 115200 * Data bits: 8 * Stop bits: 1 * Parity: none * Flow control: none * Forward: none * Transmitted text: Append CR+LF

Click OK, and click the Disconnected button to connect if it doesn't list your COM port setting at the top left of the main window.

In the text box at the bottom of the main window, type Type AT[ENTER]. If it responds OK then the ESP is also defaulting to 115200 baud. This is good. If not, it's a bit of a mare setting a new default and getting it to stick. Hopefully you won't need to do this.

Checking ESP mode


Response is a number from 1-3:

1: Station mode
2: SoftAP mode
3: SoftAP+Station mode

1 and 3 are ok. If it replied 2, type AT+CWMODE=1[ENTER] to switch to station mode.

Listing Wifi Access Points

Type AT+CWLAP[ENTER] to list the wifi access points.

If the screen fills up hit any key to scroll.

I think it only shows 2.5GHz access points, so 5GHz are a no-no.

Joining Wifi Access Point

Type AT+CWJAP="MyAccessPointName","MyPassword"[ENTER] to connect.

Should say OK if joined.

Confiming Your Wifi Connection

Optionally, type AT+CWJAP?[ENTER] to confirm the AP you are connected to.

Optionally, type AT+CIFSR[ENTER] to confirm your new IP and mac address.

Once connected to the AP, you are safe to unplug the ESP USB adaptor, and you should automatically rejoin the AP when you plug it back in.

Assembling NXtel to run in Zeus

Restart Zeus. Click the Assemble button at the bottom the screen. You can always find this button when the Zeus (assembler) tab is selected.

If things go according to plan, you will see the following text at the bottom of the status window:

nErrors = 0 nRedef = 0 nUndef = 0

Running NXtel in Zeus

Just below the Assemble button, you will see the Zeus and ULA checkboxes. Both default to being checked, and any other checkboxes will be unchecked. These are the settings you need to run NXtel inside Zeus.

Click the Assemble then Emulate button.

Zeus should switch to the Emulator tab, and display the NXtel splash screen in monochrome, followed by the main menu.

To connect, type 1 Connect on the main menu, then type 1 NXtel (WENDY). If the ESP is configured properly, you will be rewared by a Welcome screen and a green ONLINE status icon.

Assembling NXtel to run on the Next

Follow the above instructions, but uncheck the Zeus and ULA checkboxes before clicking the Assemble button.

Zeus will create the file bin\NXtel.nex in the Project Directory. Copy this to your Next's SD card and run it from the NextZXOS browser. This version will be in full colour - if it's monochrome then you forgot to uncheck the Zeus and ULA checkboxes before assembling.

See also: Running NXtel on an Emulator