1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
|
*****************************************************************************
JUST TO MAKE IT CLEAR: THE TEXT BELOW IS NOT LEGAL BINDING, IT'S JUST A
WARNING THAT ECHO ISN'T STABLE, OK? THE PROPER LICENSE IS ZLIB'S AND THAT'S
WHAT YOU SHOULD CONSIDER.
To see the license, check the LICENSE file. (to-do: add the notice to the
source files - license is still relevant!)
*****************************************************************************
_ _ _ _____ _____ _ _ _ _ _ _____
| | | | | | | _ | | _ | | \ | | | | | \ | | | ___|
| | | | | | | |_| | | |_| | | \| | | | | \| | | | __
| | | | | | | _ | | _| | | | | | | | || |
| |_| |_| | | | | | | |\ \ | |\ | | | | |\ | | |_| |
|____.____| |_| |_| |_| \_\ |_| \_| |_| |_| \_| |___._|
This is NOT a final version. This version is quite stable right now, and
conversion tools will cope up with any shenanigans that can happen due to
currently undefined behavior, but don't get surprised if something ends up
being broken.
tl;dr use Echo at your own risk :|
-----------------------------------------------------------------------------
Echo tools are available as part of the mdtools set:
https://github.com/sikthehedgehog/mdtools
Also Oerg made a xm2esf tool, and an ESF optimization tool:
https://github.com/oerg866/xm2esf
-----------------------------------------------------------------------------
Current version: 0.9
And yes, I know the source code is a mess, I need to clean it up severely.
Also I know some stuff could be done better (e.g. buffering PCM instead of
reading each byte from ROM every time), but leaving that for after the
first official release, don't fix what isn't broken -_-'
-----------------------------------------------------------------------------
How to build:
* Make sure the root of this source code tree is the current directory
* Assemble src-z80/build.z80 to bin/prog-z80.bin
* Assemble src-68k/build.68k to bin/prog-68k.bin
Sorry for not providing a build script but my current setup is a mess and
needs to be changed x_x; Currently using z80-asm to build the Z80 code and
asm68k to build the 68000 code, I need to find good replacements for both
(z80-asm for being crappy, asm68k for not being free).
Also no source for the data blobs yet, for similar reasons, although I
have more control over those tools at least so I may come up with good
replacements (or even just rebuild the current tools, pretty sure one of
them (mdtiler) already has a replacement) :/
-----------------------------------------------------------------------------
Available builds:
built/prog-z80.bin
Current build of Echo.
built/echo-timer-version-a.bin
Timer test. Both timers get reloaded each time they're fired.
built/echo-timer-version-b.bin
Timer test. Only timer B is reloaded when it fires, timer A is left to
loop on its own.
built/echo-timer-version-c.bin
Timer test. Both timers are left to loop on their own. Code for
initializing timer B is wrong so it doesn't work properly.
built/echo-timer-version-d.bin
What the previous ROM should have been, fixed timer B :|
-----------------------------------------------------------------------------
Credits:
- Sik (main programmer)
- Oerg866 (bug hunter)
Testing: TµEE, Eke Eke, MarkeyJester, John Springer, Flygon
|