Project

General

Profile

Bug #20

Bugs in DAS OMEN Demo

Added by ndary over 4 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Start date:
05/30/2017
Due date:
% Done:

0%


Description

tested the DAS OMEN Demo

1. the speech (DAS OMEN) at the 3rd part does not play
2. Music stops after a while and the DEMO Crash

dasomen2.xex (50.1 KB) ndary, 05/30/2017 03:39 PM

$boot.bin (512 Bytes) ndary, 05/30/2017 11:36 PM

picodos.sys (4.83 KB) ndary, 05/30/2017 11:36 PM


Related issues

Related to Feature #28: XEX boot loader replacement Closed 05/31/2017

History

#1 Updated by foft over 4 years ago

  • Assignee deleted (foft)

#2 Updated by foft over 4 years ago

Uh-oh, good spot. Did you check it with aspeqt too? I find that the .xex support (sdrive port) can be a bit iffy at times. I'm not sure if there are better xex loaders we can switch to?

Can someone pick this up and look into the root cause please? Then I can fix the issue with the core.

#3 Updated by ndary over 4 years ago

i just confirmed that the problem is with the XEX loader of EclairXL, can you use the PICODOS loader from HIASOFT? from my experience it works well with most files.

#4 Updated by foft over 4 years ago

We can try it. Do you know c? There is atari_drive_emulator.c in the firmware which has a copy of the xex loader. Its an sdrive port and I didn't ever look into the xex side much.

#5 Updated by ndary over 4 years ago

6502 assembly only here :)

XXL posted that he can do a loader and PICODOS source is on Github

https://github.com/Masq666/PicoDOS/blob/master/picodos.asm

Nir

#6 Updated by foft over 4 years ago

We could add another 6502 for the firmware to replace the zpu. I'd like that but don't have time to spend on that.

Quite a job though to rewrite the firmware.

It contains sd card access, fat filesystem, file browsing and a usb stack.

#7 Updated by xxl over 4 years ago

foft wrote:

We can try it. Do you know c? There is atari_drive_emulator.c in the firmware which has a copy of the xex loader. Its an sdrive port and I didn't ever look into the xex side much.

Are you using this loader?

#ifdef XEX_IMAGES
// The KBoot loader was written by Ken Siders ()
byte KBOOT_LOADER[] = {
0x00,0x03,0x00,0x07,0x14,0x07,0x4c,0x14,0x07,0xAA,0xBB,0x00,0x00,0xa9,0x46,0x8d,0xc6,0x02,0xd0,0xfe,0xa0,0x00,0xa9,0x6b,
0x91,0x58,0x20,0xd9,0x07,0xb0,0xee,0x20,0xc4,0x07,0xad,0x7a,0x08,0x0d,0x76,0x08,0xd0,0xe3,0xa5,0x80,0x8d,0xe0,0x02,0xa5,
0x81,0x8d,0xe1,0x02,0xa9,0x00,0x8d,0xe2,0x02,0x8d,0xe3,0x02,0x20,0xeb,0x07,0xb0,0xcc,0xa0,0x00,0x91,0x80,0xa5,0x80,0xc5,
0x82,0xd0,0x06,0xa5,0x81,0xc5,0x83,0xf0,0x08,0xe6,0x80,0xd0,0x02,0xe6,0x81,0xd0,0xe3,0xad,0x76,0x08,0xd0,0xaf,0xad,0xe2,
0x02,0x8d,0x70,0x07,0x0d,0xe3,0x02,0xf0,0x0e,0xad,0xe3,0x02,0x8d,0x71,0x07,0x20,0xff,0xff,0xad,0x7a,0x08,0xd0,0x13,0xa9,
0x00,0x8d,0xe2,0x02,0x8d,0xe3,0x02,0x20,0xae,0x07,0xad,0x7a,0x08,0xd0,0x03,0x4c,0x3c,0x07,0xa9,0x00,0x85,0x80,0x85,0x81,
0x85,0x82,0x85,0x83,0xad,0xe0,0x02,0x85,0x0a,0x85,0x0c,0xad,0xe1,0x02,0x85,0x0b,0x85,0x0d,0xa9,0x01,0x85,0x09,0xa9,0x00,
0x8d,0x44,0x02,0x6c,0xe0,0x02,0x20,0xeb,0x07,0x85,0x80,0x20,0xeb,0x07,0x85,0x81,0xa5,0x80,0xc9,0xff,0xd0,0x10,0xa5,0x81,
0xc9,0xff,0xd0,0x0a,0x20,0xeb,0x07,0x85,0x80,0x20,0xeb,0x07,0x85,0x81,0x20,0xeb,0x07,0x85,0x82,0x20,0xeb,0x07,0x85,0x83,
0x60,0x20,0xeb,0x07,0xc9,0xff,0xd0,0x09,0x20,0xeb,0x07,0xc9,0xff,0xd0,0x02,0x18,0x60,0x38,0x60,0xad,0x09,0x07,0x0d,0x0a,
0x07,0x0d,0x0b,0x07,0xf0,0x79,0xac,0x79,0x08,0x10,0x50,0xee,0x77,0x08,0xd0,0x03,0xee,0x78,0x08,0xa9,0x31,0x8d,0x00,0x03,
0xa9,0x01,0x8d,0x01,0x03,0xa9,0x52,0x8d,0x02,0x03,0xa9,0x40,0x8d,0x03,0x03,0xa9,0x80,0x8d,0x04,0x03,0xa9,0x08,0x8d,0x05,
0x03,0xa9,0x1f,0x8d,0x06,0x03,0xa9,0x80,0x8d,0x08,0x03,0xa9,0x00,0x8d,0x09,0x03,0xad,0x77,0x08,0x8d,0x0a,0x03,0xad,0x78,
0x08,0x8d,0x0b,0x03,0x20,0x59,0xe4,0xad,0x03,0x03,0xc9,0x02,0xb0,0x22,0xa0,0x00,0x8c,0x79,0x08,0xb9,0x80,0x08,0xaa,0xad,
0x09,0x07,0xd0,0x0b,0xad,0x0a,0x07,0xd0,0x03,0xce,0x0b,0x07,0xce,0x0a,0x07,0xce,0x09,0x07,0xee,0x79,0x08,0x8a,0x18,0x60,
0xa0,0x01,0x8c,0x76,0x08,0x38,0x60,0xa0,0x01,0x8c,0x7a,0x08,0x38,0x60,0x00,0x03,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00
};
#endif

It may not work properly. I wrote a similar loader for the SIO2WiFi project, I can share it.

#8 Updated by foft over 4 years ago

Using this one:
uint8_t boot_xex_loader179 = {
0x72,0x02,0x5f,0x07,0xf8,0x07,0xa9,0x00,0x8d,0x04,0x03,0x8d,0x44,0x02,0xa9,0x07,
0x8d,0x05,0x03,0xa9,0x70,0x8d,0x0a,0x03,0xa9,0x01,0x8d,0x0b,0x03,0x85,0x09,0x60,
0x7d,0x8a,0x48,0x20,0x53,0xe4,0x88,0xd0,0xfa,0x68,0xaa,0x8c,0x8e,0x07,0xad,0x7d,
0x07,0xee,0x8e,0x07,0x60,0xa9,0x93,0x8d,0xe2,0x02,0xa9,0x07,0x8d,0xe3,0x02,0xa2,
0x02,0x20,0xda,0x07,0x95,0x43,0x20,0xda,0x07,0x95,0x44,0x35,0x43,0xc9,0xff,0xf0,
0xf0,0xca,0xca,0x10,0xec,0x30,0x06,0xe6,0x45,0xd0,0x02,0xe6,0x46,0x20,0xda,0x07,
0xa2,0x01,0x81,0x44,0xb5,0x45,0xd5,0x43,0xd0,0xed,0xca,0x10,0xf7,0x20,0xd2,0x07,
0x4c,0x94,0x07,0xa9,0x03,0x8d,0x0f,0xd2,0x6c,0xe2,0x02,0xad,0x8e,0x07,0xcd,0x7f,
0x07,0xd0,0xab,0xee,0x0a,0x03,0xd0,0x03,0xee,0x0b,0x03,0xad,0x7d,0x07,0x0d,0x7e,
0x07,0xd0,0x8e,0x20,0xd2,0x07,0x6c,0xe0,0x02,0x20,0xda,0x07,0x8d,0xe0,0x02,0x20,
0xda,0x07,0x8d,0xe1,0x02,0x2d,0xe0,0x02,0xc9,0xff,0xf0,0xed,0xa9,0x00,0x8d,0x8e,
0x07,0xf0,0x82 };
// relokacni tabulka neni potreba, meni se vsechny hodnoty 0x07
// (melo by byt PRESNE 20 vyskytu! pokud je jich vic, pak bacha!!!)

This (http://www.64kib.com/atarixlfpga_svn/trunk/atari_800xl/firmware/atari_drive_emulator.c) is not the latest code (need the svn branch, this is easier for me to link...), but it shows how it does the xex access.

#9 Updated by foft over 4 years ago

I'm wondering about splitting the firmware up and running on more smaller cpus (such as 6503). e.g. one instance for drive emulation, one for the screen stuff, one for USB access. Using a single CPU there are latency concerns which got quit fiddly after USB introduction. Though I guess that is mostly solved now by the fifo setup for SIO.

#10 Updated by foft over 4 years ago

  • Related to Feature #28: XEX boot loader replacement added

#11 Updated by foft over 4 years ago

  • Assignee set to ndary

So is the one a basic on/off issue?

#12 Updated by foft over 4 years ago

  • Status changed from New to Closed

Also available in: Atom PDF