Quantcast
Channel: Emulators - World of Spectrum
Viewing all 477 articles
Browse latest View live

Any way to Vsync Spectaculator 8?

$
0
0
I am using Spectaculator 8 for the Demoscene mostly, and have discovered that my monitor supports 50Hz, like a real Speccy. Unfortunately, the tearing in the screen due to vsync not being active (I believe) is more noticeable.

Are there options in Spectaculator to enable vsync, or could the Nvidia graphics settings do the job?

PS. My account here was created in 2004 when I was ignorant of the ZX Spectrum, but over the years I've really grown to appreciate the Speccy Demoscene and I love the imagination and colour in those prods. If I could change my username, I would - maybe an Admin can help me?

Retro Virtual Machine v1.1.6

writing an emulator-newbie needs help

$
0
0
Hi, this is my first post here. I decided to write a minimalistic emulator of ZX Spectrum-no emulation of advanced peripherals, no emulation of sound etc. All I hope to achieve is to successfully load a game into my emulator and be able to play it. I work under Windows, I'm going to write my application in C or C++. I have the basic understanding of Z80 microprocessor architecture and Z80 assembly, but it doesn't seem enough for me to start my task. I have some questions. I believe they're really basic to most of you and you most likely read them hundreds of times before, but for me, a beginner, answers to them are crucial. I also realize answers to most of my questions are probably spread around different parts of "World of Spectrum" page, but I'd like to have them in one place. Here's what I need to know:

1. Probably the most important one. Assume I work with a particular file containing the game data (.tzx, .z80, whatever). How should I handle them (i.e. interpret their contents in my program)? I should execute consecutive instructions, but "rom" files have some meaningless ASCII characters in them. No big surprise here, I guess they contain binary data produced from asm files by assembler. Still, I don't know how to treat them. An emulator should operate on assembly or machine code, right? Should I disassemble them? Or should I work directly on "roms", read them byte by byte and interpret each value as an opcode or operand?

2. I don't expect my emulator to work with all or even most of the file formats available. I'll be glad if it works with any of them. Which of them would you say is the easiest to handle? .z80 snapshots?

3. How do I emulate I/O? When it comes to Spectrum emulation, most pages I've seen so far usually give detailed information about emulation of Z80 microprocessor/memory, they give full list of instructions/opcodes etc., but they say nothing about emulating peripherals. Where can I find some useful information about emulation of input (keyboard/joystick) and output (screen)? Which asm instructions and memory regions are responsible for it? Simply, how should I do it?

4. I'm afraid to ask this one, because I think it's something really basic. I looked at a few emulator packages found here and there. All of them contained, among other files, a file with "rom" extension-what does it contain? ZX Spectrum bios, operating system, some sort of emulator core? Is this file necessary for an emulator to work? I used nes and snes emulators in the past and they didn't use anything like that (name "rom" was reserved for files with games).

5. Let's say my emulator is ready and I want to test it with some simple programs written by myself, like "hello world". Since emulator operates on files such as .tzx and .z80, how do I produce them from my asm file?

6. I read about special applications for checking correctness of microprocessor/memory emulation. They perform a series of tests to check if all instructions are emulated properly. They probably would be helpful, can you recommend me any?


Thanks in advance.

Using a Mayflash MD USB Adapter with Spectaculator on Windows 10

$
0
0
Using a Mayflash MD USB Adapter with Spectaculator on Windows 10

First, plug the Mayflash MD USB Adapter into a USB port and let Windows do it's thing...

Then plug a Atari 9 pin D connector joystick into the left hand port on the Mayflash MD USB Adapter.

33098164062_e0e4d9ba67_b.jpg
Mayflash MD USB Adapter

Go to Control Panel - then Hardware and Sound - then Devices and Printers.
32444606823_4cba73d590_o.png
001 Control Panel - Hardware and Sound - Devices and Printers

And it should show up :-)

Check the settings...

33103276722_ecd6875964_o.png
002 Settings 1

33103276592_73334bc3b5_o.png
003 Mayflash MD USB Adapter properties

Operate the joystick...

33103275652_e6237fa492_o.png
004 Settings - fire pressed

33103275472_84d6fbb230_o.png
005 Settings - left

33103275352_99a22589a8_o.png
006 Settings - right

33103275162_820a4bc61f_o.png
007 Settings - up

32444605643_c267e86f97_o.png
008 Settings - down

Now open Spectaculator and select Kempston as the wanted Joystick.

33103274892_96fbfc857e_o.png
009 Select Kempston Joystick

From the Tools menu, select Options.

32444605273_97f4ce71b2_o.png
010 From the Tools menu, select Options

32444605143_4112d16f60_o.png
011 Options

Click Joystick.

32444605063_8583d9fde1_o.png
012 Options click Joystick

Click Change Button Mappings.

33103274032_4b9e50238c_o.png
013 Click Change Button Mappings

Operate each joystick function.

33103273702_0ac0a4bbc8_o.png
014 Operate the joystick function, in this case the Fire button

If the function is not correctly displayed, operate the function again until the correct details are shown.

33217716126_2ba8c766a6_o.png
015 Operate the joystick function continued, if the function is not correctly displayed, operate the function again

Note that in the button settings, the system treats the joystick directions as buttons.
If the same function is listed twice, the virtual Spectrum will receive the wrong joystick information. So instead, program the unwanted function as a key on the keyboard.

This is a simple test program. It prints the value returned from the (virtual) joystick interface on screen. Check the returned values are correct.

33217715966_1433e6963c_o.png
016 Simple Kempston Joystick Tester

This is a more complex test program. By using the joystick, you can move the asterisk around the screen. The fire button changes the border colour to red when pressed.

Note that there is no error handling if you try to go off screen!

33103272852_2cc5eb121c_o.png
017 Kempston Joystick Test program part 1

33103272512_566fd5fec3_o.png
018 Kempston Joystick Test program part 2

I hope this helps. If not, you know what to do (i.e. use the default error handing routine - bash head against nearest wall :P )

Mark

New disc image format: LDBS

$
0
0
... Yes, I'm doing exactly the same thing that XKCD 927 portrays. Don't worry, I have my reasons.

LDBS is an attempt to develop a disc image format that's more or less got the same feature set as EDSK, but is:
a) more easily rewritable in-place
b) extensible, allowing things like comment fields

Originally, I wrote it for internal use in LibDsk. But I thought it would be as well to put out a proper definition in case anyone wants to point out things I've missed or could do better.

The format definition is here. It comes with an X11-licensed reference implementation in C, utilities to convert to/from DSK and EDSK, and a dump utility to display the contents of an LDBS disc image.

The current development version of LibDsk (1.5.0) can also generate / access LDBS disc images, using the same code.

I'm certainly not expecting everyone to switch over to LDBS tomorrow -- in fact, please don't, until the format's finalised -- but I'd be interested in any comments on the format from emulator or utility authors.

Fuse 1.3.2 released

$
0
0
A new release of Fuse, the Free Unix Spectrum Emulator, is now available at the SourceForge project:

https://sourceforge.net/projects/fuse-emulator/

Highlights of this release include:
  • Allow keyboard arrow keys to be used as a cursor joystick
  • Limit sound generation to less than 500% speed
  • WidgetUI: Fix order of Z80 flags in debugger
  • Win32: Limit sound generation from 50% to 300% to work around bugs in the DirectSound driver

Many thanks to everyone who's contributed to this release. Source code and binaries for Windows are currently available on the SourceForge site; compiled binaries for various other platforms should become available in the next few days.

Fuse 1.3.4 released

$
0
0
A new release of Fuse, the Free Unix Spectrum Emulator, is now available at the SourceForge project:

https://sourceforge.net/projects/fuse-emulator/

Highlights of this release include:
  • Fix syntax for "breakpoint read" debugger command
  • Fix Z80 unit test 39 to test the right opcode
  • Win32: Fix joystick initialisation
  • FreeBSD: Use power-of-2 sound buffers

Many thanks to everyone who's contributed to this release. Source code and binaries for Windows are currenly available on the SourceForge site; compiled binaries for various other platforms should become available in the next few days.

Debugging on ZEsarUX by reading the source code

$
0
0
HI

New feature for ZEsarUX:

image

With that you can associate an assembler source code to a program in memory so it will debug it showing the source code. The trick works by finding labels on the source code with format LXXXX where XXXX is the memory address. This is helping me to debug the QL rom because the source code has labels in this format

And that's all (by now ;) )

Cheers
Cesar

Diagonal movement in emulators on mobile devices... how?

$
0
0
I can't seem to find an easy way to play games where diagonal movement is necessary. This is only a problem when using ZXDS or emulators on my Android mobile phone. I looked at a few gaming pads but the buttons on the left don't have diagonal movement. Is there an easy way around this problem? Do gaming pads support assigning two keys to one button?

Multiface + Opus in an emulator?

$
0
0
Is there an emulator that emulates both the multiface and the opus discovery?

I was very surprised to find that FUSE doesn't emulate the multiface, given it's probably one of the most purchased hardware addons for the speccy.

Spectaculator does multiface, but not the opus....
Hmm.

Anything that does?

Rare Replay - ZX spectrum emulator.

$
0
0
Rare Replay is released on the XBOX One!

Amongst the 30 games, it contains seven ZX Spectrum titles:
Jetpac
Lunar Jetman
Atic Atac
Sabre Wulf
Underwurlde
Knight Lore
Gunfright

Each is given some serious Rare lurve, each has a rewind feature to go back the last 10 seconds, a retro CRT (if desired!), a save game feature, and each has five brand new mini-games associated with them. These mini-games highlight the main features of the game to show how to play the game, these are amazing fun.

Anyway….
Whilst we were developing the Ultimate Apps last year, I received an email from Rare (I work for MS) asking for some help on the ZX Spectrum side of things, I was fortunate enough to be invited over, not once but twice and they told me their secret. I also got a fantastic tour of Rare and got to see one of Tim Stampers ZX Spectrums which was cool! I then taught a few ‘young’ developers how to reverse engineer Z80 games using IDA Pro and how my emulator worked, whereby I handed over a port of it to get them started. But all that is another story!

Many of you on WoS did help me on the emulator side of things (you know who you are! ), and again I’d like to say thanks!

Cheers to the ZX Spectrum! 33 years old and now on (albeit emulated and only in a small way) a major release on a current generation console, I'm curious how the young snappers today will view our old favourites, well if they can be dragged away from CoD 45 for 10 minutes!

New ZEsarUX beta - RC2

$
0
0
Hi

I have uploaded a new ZEsarUX beta version on the usual url
https://sourceforge.net/projects/zesarux/files/Beta_and_Snapshot_versions/

This version is RC2, so stable version is coming soon ;)

Changes since the last beta:

Added Specdrum emulation
Added RZX playback support
Added Multiface One, 128 and Three emulation
Added hardware debug port to output ascii characters or numbers directly on host console
Added two unused ports from the ZXI pool for some internal ZEsarUX features. See docs/zesarux_zxi_registers.txt
Added Hotswap from 128k to +2A, and +2A to 128k
Added drawn piano for AY Piano menu setting (on all video drivers except text drivers)
Added setting to disable beeper
Added setting to load source code in remote protocol to debug programs viewing the source code
Improved a bit QL keyboard emulation (F1 and F2 handled on menu)
Fixed reading from paging port on 128k and +2 machines: in this case, the same value read from the idle bus port is sent to the paging port
Fixed setting timings changing from Pentagon to non Pentagon machine
Fixed bug mapping real joystick buttons and axes with same number
Updated Z88 OZ V4.7


Cheers
Cesar

To pass a fle MGT to DSK

$
0
0
Hello!

It turns out I have the DAAD parser file in mgt format, and +3 format.

The problem is that the graphic designer(DG) of the file +3(dsk) has an error that prevents drawing well, While the mgt version goes perfectly.

It would be possible to change that correct file to dsk and delete the wrong one from this?

The name of the graphic editor is "DG".

The files:

https://www.dropbox.com/s/hqn3jkph513znh3/DISK26.mgt?dl=0
https://www.dropbox.com/s/yuowjk8zbfz904a/DISK33.DSK?dl=0

I want to convert it to +3 Because the mgt version gives me problems to compile

Thanks!

QL keyboard emulation on ZEsarUX

$
0
0
Hi!

Finally, I have succeeded emulating QL keyboard on ZEsarUX!

image

There are still some keys missing and/or keys combination, but it’s a matter of time… ;)

Cheers
Cesar

Test your emulator with one damn tricky TZX file!

$
0
0
Some time ago I got hold of this tricky TZX file with a custom super turbo-loader. The load time is 18 seconds (!). Until recently, I was unable to load it on any emulator I had (I’m on macOS, so my options are limited). The only emulator that loads it without any issues is Retro Virtual Machine.

So far, the following emulators have failed for me: FUSE, ZEsarUX, and zxsp.

I’m curious to know how your favorite emulators fare in this regard.

(P.S. The author of this file claimed that he could successfully load the original audio file on a real Speccy using an MP3 player.)

Download link: Tricky TZX

Retropie and Recreated ZX Spectrum

$
0
0
It's been over 30 years since I had a Spectrum but I want to get back into it. Partly for some nostalgic game playing but also to hopefully do some coding, and to have a platform for my daughter to learn coding the "proper" way.
My options seem to be:
1. Buy a refurbished Spectrum;
2. Buy a Recreated ZX Spectrum and rely on their app and any other (probably) Android based emulators that I can use with it;
3. Option 2 plus buy a Raspberry Pi 2 and install RetroPie onto it.
I think that option 1 would be too restrictive and non-portable. So, currently, I am thinking that I should start off with 2 and then get the Pi 2 and setup option 3. This would then give me a portable Android based solution plus a hardware based system which I could use for other things (by having a second OS image on another SD card).
Has anyone tried the Recreated ZX Spectrum with the RetroPie? If so, which emulator(s) would you recommend? Also, are there any other Android emulators which work with the Recreated ZX Spectrum?

Emulators banned on Windows Store

West Bank only running with Kempston Joystick on ZX Spin

$
0
0
I can get West Bank worldofspectrum.org/infoseekid.cgi?id=0005664 only to run with Kempston working under ZX Spin on PC
or USP ZX Spectrum Emulator on Android Phone.

I tried other Emus on PC: SpecEmu, Fuse and Unreal Spectrum but with them I can´t get Westbank to work with Kempston-Joystick...

New ZEsarUX 5.0

$
0
0
Hi!

ZEsarUX 5.0 is out! :)

You can download it from the URL:
https://sourceforge.net/projects/zesarux/

Finally I have succeded emulating Sinclair QL. I dedicated a lot of hours trying to guess how the keyboard work.
There is little documentation and I had to do lots of dissassemblies of the ROM and testing keyboard to know how it work...
So, hard work, this is a Quantum Leap, so this is a new major version, 5.0!
Complete changelog:

Added Sinclair QL emulation
Added remote command protocol. You can do enhanced debugging on ZEsarUX by using a telnet client.
There are a lot of commands, even many commands exclusive to this protocol and not found on the GUI, like:
* load-source-code
* hexdump-internal
* set-register

Added Easter Egg ;)
Added Specdrum emulation
Added RZX playback support
Added Multiface One, 128 and Three emulation
Added setting to write configuration file
Added menu item to reload IDE and MMC contents from file. You can now modify a used file outside the emulator and reload its contents
Added autosave snapshot at fixed interval
Added hardware debug port to output ascii characters or numbers directly on host console
Added two unused ports from the ZXI pool for some internal ZEsarUX features. See docs/zesarux_zxi_registers.txt
Added Hotswap from 128k to +2A, and +2A to 128k
Added File Viewer
Added support for drag&drop on Mac OS X, SDL2
Added support for OpenGL rendering on Mac OS X Cocoa driver
Added drawn piano for AY Piano menu setting (on all video drivers except text drivers)
Added Man Software GUI Style
Added setting to change DivIDE/DivMMC eprom firmware file
Added setting to allow writing to DivIDE/DivMMC eprom firmware
Added setting to disable autoframeskip
Added setting to set breakpoints from command line
Added setting to deny changing turbo mode when booting ZX-Uno and on bios
Added setting to disable beeper
Improved Debug CPU Window: now you can switch between different views:
1) 1 opcode, cpu registers, other internal registers
2) 9 opcodes, other internal registers
3) 15 opcodes
4) 9 hexdump lines, other internal registers
5) 15 hexdump lines
Fixed text to speech routine when sending non-ascii character
Fixed bug reading ULAplus register 64
Fixed bugs paging DivIDE/DivMMC
Fixed starting display row on ZX80/81/ACE, with border disabled and realvideo mode (was broken since 4.0)
Fixed reading from paging port on 128k and +2 machines: in this case, the same value read from the idle bus port is sent to the paging port
Fixed setting timings changing from Pentagon to non Pentagon machine
Fixed bug mapping real joystick buttons and axes with same number
Fixed bug when Jupiter Ace machine and border disabled
Updated Z88 OZ V4.7
Some other minor bugfixes and improvements

ZXDS 1.3.4

$
0
0
Hello,

to celebrate the 35th Spectrum (and 10th ZXDS) anniversary, I have prepared new ZXDS release. It fixes just one very subtle contention bug in HALT emulation, which no one will ever likely notice, but as there has been no release to fix it in for couple of years now and this imperfection kept bugging me, today felt like a good occasion to finally fix it. And as I had to bump the multiplayer compatibility version just because of that, I thought it might be a good idea if ZXDS detected and reported incompatible multiplayer version, instead of ignoring them entirely, to give anyone who might try 1.3.4 connect to 1.3.3 a clue.

Not the biggest release ever, but it might still be a good excuse to find your DS again and give it a whirl.

Enjoy,

Patrik
Viewing all 477 articles
Browse latest View live