Setting active ROM vs. Choosing ROM at boot with ESC

Responder
Avatar de Usuario
SevenFFF
Mensajes: 43
Registrado: 23 Dic 2017, 22:50

Setting active ROM vs. Choosing ROM at boot with ESC

Mensaje por SevenFFF » 23 Dic 2017, 23:53

I've noticed an odd quirk.

I'm fiddling with a TR-DOS app on the Pentagon 128 ROM. I have a TRD disk with a basic "boot" loader that runs an asm menu. Picking one of the menu options makes some TR-DOS $3D13 calls - a $12 delete, a $0B save and a bunch of $0E loads. The loads run in a loop from Bank 7 with interrupts disabled throughout. After each one they call an initialialiser in the code that's just been loaded, which does a bank switch, copies it somewhere else, switches back to back 7 then carries on with the loop.

When I have Pentagon set as the active ROM in the Uno BIOS, everything works as expected.

When I have ZX Spectrum +2 set as the active ROM, then use ESC during the boot sequence to switch to the Pentagon 128 ROM, My program fails during one of the $3D13 load calls. I'm not quite sure yet what fails. It probably tries to jump to an initialiser routine that didn't get loaded. I need to find a way of debugging this further I guess.

Is there any obvious reason why using ESC during the boot sequence would cause things to behave differently?

Here for what it's worth, is the .TRD image. To reproduce: boot the image with exsDOS, wait for the animated menu to appear, then press "0". When it works, the border alternates between green and black when the progress bar reaches 100%. When it fails, it hangs without the green and black border.

Thanks! Robin
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
seven-fff.com/blog

azesmbog
Mensajes: 319
Registrado: 17 Feb 2016, 23:07

Re: Setting active ROM vs. Choosing ROM at boot with ESC

Mensaje por azesmbog » 24 Dic 2017, 13:01

из 6 приличных эмуляторов, поддерживающих Pentagon,и попавшихся под руку, этот файл заработал только на одном. (Одном, Карл!!)
Вот когда будет работать на ЛЮБОМ! софтовом эмуляторе, тогда можно будет подумать, что здесь не так.
А пока что это , по моему мнению, кривой код. Сорри.
И да, я уже приводил примеры кода, который КОРРЕКТНО! работает на реальных ZX48 и эмуляторах, но криво работает на FPGA emu из-за не 100% эмуляции Z80 в ядре Т80

Avatar de Usuario
SevenFFF
Mensajes: 43
Registrado: 23 Dic 2017, 22:50

Re: Setting active ROM vs. Choosing ROM at boot with ESC

Mensaje por SevenFFF » 24 Dic 2017, 16:56

Thanks azesmbog. It works on the 2 emulators I am using. Please give me the names of your 6 emulators and I will investigate!

It also works on the Uno apart from this one situation with the ESCAPE boot menu.
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
seven-fff.com/blog

azesmbog
Mensajes: 319
Registrado: 17 Feb 2016, 23:07

Re: Setting active ROM vs. Choosing ROM at boot with ESC

Mensaje por azesmbog » 24 Dic 2017, 18:12

SevenFFF escribió: Please give me the names of your 6 emulators and I will investigate!
1. Z80Stealth - НЕ работает. Один из лучших эмуляторов Pentagon
http://z80.emu-russia.net/
2. Spectaculator 6.25 - не работает.
3. Spectramine - не работает
4.XSpeccy - не работает
5.ZXMAK2 - не работает
6. EmuZGL - не работает

1. Unreal - работает
2. SpecEmu - работает

upd: Наверное понял, почему большинство эмуляторов не работает. Программа видимо что-то на диск записывает??
Ну тогда это может быть причиной при разной инициализации, или из меню или по Esc
Завтра проверю

Avatar de Usuario
SevenFFF
Mensajes: 43
Registrado: 23 Dic 2017, 22:50

Re: Setting active ROM vs. Choosing ROM at boot with ESC

Mensaje por SevenFFF » 29 Dic 2017, 22:32

This is interesting. I just tried Dr Slurp's NMI.SYS 0.0.14, and there is no problem choosing Pentagon ROM at boot with my .TRD.

I am still investigating problems on your emulator list, thanks azesmbog!

You are correct, there is a disk write at the start of the progress bar. This may be causing problems in some emulators (Spectaculator is read-only by default), but they are separate problems from the weird read problem I saw at the end of the progress bar.

I must code my disk writes better! I will program an invisible continuation during option "0 - Старт". Only option "3 - Обнулить рекорды" should give verbose errors for write failures.
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
seven-fff.com/blog

azesmbog
Mensajes: 319
Registrado: 17 Feb 2016, 23:07

Re: Setting active ROM vs. Choosing ROM at boot with ESC

Mensaje por azesmbog » 29 Dic 2017, 22:54

у меня версия bios 0.61, версия ядра Т24-01042017, DivMMC 0.8.6
ни разу нормально не запустилось, хотя режим Pentagon у меня включен по умолчанию.
После нажатия на "0" - сброс

Responder