mirror of
https://github.com/ksherlock/x65.git
synced 2024-06-08 11:32:33 +00:00
Compare commits
159 Commits
931eeac653
...
9e542033b8
Author | SHA1 | Date | |
---|---|---|---|
|
9e542033b8 | ||
|
842b68b342 | ||
|
c4dff1c872 | ||
|
d4345a2352 | ||
|
3edff374c9 | ||
|
73eaa45daa | ||
|
101e6ed3de | ||
|
5339e5c789 | ||
|
4a88deb989 | ||
|
74d517e9d3 | ||
|
1928206659 | ||
|
bed84e27cf | ||
|
dc53ab5174 | ||
|
3596224b3c | ||
|
e0d3f3c9cd | ||
|
2bbe8aab66 | ||
|
88fc0cbb60 | ||
|
efb99fe9ab | ||
|
779c7af7ed | ||
|
063459efbf | ||
|
f67a920a06 | ||
|
b75a8325ee | ||
|
7df69d5e36 | ||
|
56fb34c64b | ||
|
c1fa69d90f | ||
|
5c98f7c7e8 | ||
|
060be58f41 | ||
|
1d70c9b963 | ||
|
f3b33acf88 | ||
|
98ceceb315 | ||
|
3a33dc7056 | ||
|
87d88265b0 | ||
|
8e95b7ffb9 | ||
|
2a2529f237 | ||
|
45b998fa2b | ||
|
bf6c7b0df9 | ||
|
af8c7ae42d | ||
|
34b3c1edb9 | ||
|
fe924aab14 | ||
|
4a81aafdc7 | ||
|
295129cd6c | ||
|
da6ed1159d | ||
|
06aae43fdd | ||
|
a2d9c5330d | ||
|
c2492ab348 | ||
|
1f6956c1ec | ||
|
45f5d05f54 | ||
|
56b253880e | ||
|
e6a63010f2 | ||
|
b8ef00f811 | ||
|
1f61d948fb | ||
|
17a99e46e7 | ||
|
fd1bc0ba76 | ||
|
b699c1b6f4 | ||
|
c1de91e3f1 | ||
|
53f69edc5a | ||
|
d80f5473a2 | ||
|
6af905353c | ||
|
dda49fda57 | ||
|
846bd5cd63 | ||
|
09796bc6e7 | ||
|
b45da90bce | ||
|
33e7f72d0b | ||
|
5cec8f8309 | ||
|
e3fa7b0c83 | ||
|
b469ceef8c | ||
|
eb3df4de88 | ||
|
4b7e679b20 | ||
|
a535295929 | ||
|
758b4349eb | ||
|
600567a42e | ||
|
385155d5eb | ||
|
b3d9b40563 | ||
|
12e158d637 | ||
|
a3f8a7cf44 | ||
|
66bdac5079 | ||
|
6e4be1504d | ||
|
963d1925cc | ||
|
c234531d69 | ||
|
019e8d7ae9 | ||
|
2243803116 | ||
|
d5080e925d | ||
|
7521d31514 | ||
|
33b229d00a | ||
|
6e8a41acc1 | ||
|
de0bc5120f | ||
|
482470b410 | ||
|
23aedcf686 | ||
|
da015f3e1c | ||
|
4670be0ce1 | ||
|
efacecf701 | ||
|
4c3c1654fb | ||
|
cfb2d1a8d8 | ||
|
ab2015fc3d | ||
|
eae936dd6a | ||
|
4285a14801 | ||
|
b16edcd592 | ||
|
05b7e253c3 | ||
|
efc63864ee | ||
|
2698f08ab9 | ||
|
9c7f413dac | ||
|
49ca89f875 | ||
|
479300eec7 | ||
|
effd8205db | ||
|
adcefe4bff | ||
|
e37bf5ae11 | ||
|
576ec5497d | ||
|
baebdbe096 | ||
|
fe049342bd | ||
|
8f4a00e3ce | ||
|
c226b00dad | ||
|
b4407f7cb5 | ||
|
a0b73db5c8 | ||
|
03f5e5cbfe | ||
|
e452d3ab7e | ||
|
9752c1d8a1 | ||
|
73d67d0657 | ||
|
0fcdc9ca47 | ||
|
d1c9f3aab5 | ||
|
07b1a52bb4 | ||
|
4f6db98637 | ||
|
d9d386a260 | ||
|
273bdcc92d | ||
|
ee53c41776 | ||
|
341cc8f2ad | ||
|
462eaeccf6 | ||
|
0605a1d6d2 | ||
|
7d59943d35 | ||
|
60780a514a | ||
|
5b9e5f6d46 | ||
|
1f50f07c24 | ||
|
e3241c66aa | ||
|
794171d48b | ||
|
7833ddc188 | ||
|
c4921552ba | ||
|
b8362cbb0b | ||
|
ec01fcc6e1 | ||
|
5dbe08b1b3 | ||
|
3b2b0f7778 | ||
|
0f740c25bd | ||
|
c96399d896 | ||
|
214c32931a | ||
|
798b657c70 | ||
|
a674f7f165 | ||
|
0e64a58375 | ||
|
acf26cf7d7 | ||
|
9cdfeeb0ca | ||
|
6cbf7f8754 | ||
|
260f48e126 | ||
|
72b81efc87 | ||
|
2919e0556c | ||
|
6adcdc92b6 | ||
|
65f19b4a47 | ||
|
bdc013350c | ||
|
f6531d3bbc | ||
|
482640fb1e | ||
|
9f8ad61fe2 | ||
|
5459c6c0e0 | ||
|
05bdc73b86 |
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1,3 +1,4 @@
|
||||||
|
./x65.exe
|
||||||
*.suo
|
*.suo
|
||||||
*.ipch
|
*.ipch
|
||||||
*.aps
|
*.aps
|
||||||
|
@ -18,4 +19,5 @@
|
||||||
*.obj.enc
|
*.obj.enc
|
||||||
*.user
|
*.user
|
||||||
*.db*
|
*.db*
|
||||||
|
*.recipe
|
||||||
test/results/*
|
test/results/*
|
|
@ -62,8 +62,7 @@ x65.cpp requires struse.h which is a single file text parsing library that can b
|
||||||
|
|
||||||
### Download Binaries
|
### Download Binaries
|
||||||
|
|
||||||
* [Windows x64 binaries](../..//raw/master/bin/x65_x64.zip)
|
Please note that releases have moved the Github [releases](https://github.com/Sakrac/x65/releases)
|
||||||
* [Windows x86 binaries](../..//raw/master/bin/x65_win32.zip)
|
|
||||||
|
|
||||||
### x65
|
### x65
|
||||||
|
|
||||||
|
@ -102,6 +101,7 @@ Primarily tested with personal archive of sources written for Kick assmebler, DA
|
||||||
* irp (indefinite repeat)
|
* irp (indefinite repeat)
|
||||||
|
|
||||||
**FIXED**
|
**FIXED**
|
||||||
|
* Source Debug output file including linkable object files, C64Debugger format
|
||||||
* Adding MERGE directive, Label Pools rewrite, TEXT data can be indexed from a string symbol
|
* Adding MERGE directive, Label Pools rewrite, TEXT data can be indexed from a string symbol
|
||||||
* Label Pools were destroyed after each scope so they did not work in include files which defeated their purpose. Label pools are now persistent through scopes.
|
* Label Pools were destroyed after each scope so they did not work in include files which defeated their purpose. Label pools are now persistent through scopes.
|
||||||
* Labels reserved from label pools now distinguish between global and local. Use [.!@$] as a prefix to reserve a local label from a label pool (previously always local)
|
* Labels reserved from label pools now distinguish between global and local. Use [.!@$] as a prefix to reserve a local label from a label pool (previously always local)
|
||||||
|
|
Binary file not shown.
BIN
bin/x65_x64.zip
BIN
bin/x65_x64.zip
Binary file not shown.
0
obj/x64Releasex65/x65.vcxproj.FileListAbsolute.txt
Normal file
0
obj/x64Releasex65/x65.vcxproj.FileListAbsolute.txt
Normal file
|
@ -23,32 +23,32 @@
|
||||||
<ProjectGuid>{57EFF4A4-7BF2-43F0-AD62-A79092DA67D1}</ProjectGuid>
|
<ProjectGuid>{57EFF4A4-7BF2-43F0-AD62-A79092DA67D1}</ProjectGuid>
|
||||||
<Keyword>Win32Proj</Keyword>
|
<Keyword>Win32Proj</Keyword>
|
||||||
<RootNamespace>dump_x65</RootNamespace>
|
<RootNamespace>dump_x65</RootNamespace>
|
||||||
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
@ -23,32 +23,32 @@
|
||||||
<ProjectGuid>{2823019A-A423-4A40-BB9C-5CE242019BD0}</ProjectGuid>
|
<ProjectGuid>{2823019A-A423-4A40-BB9C-5CE242019BD0}</ProjectGuid>
|
||||||
<Keyword>Win32Proj</Keyword>
|
<Keyword>Win32Proj</Keyword>
|
||||||
<RootNamespace>x65</RootNamespace>
|
<RootNamespace>x65</RootNamespace>
|
||||||
<WindowsTargetPlatformVersion>10.0.15063.0</WindowsTargetPlatformVersion>
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>true</UseDebugLibraries>
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
<ConfigurationType>Application</ConfigurationType>
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
<UseDebugLibraries>false</UseDebugLibraries>
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
<PlatformToolset>v141</PlatformToolset>
|
<PlatformToolset>v142</PlatformToolset>
|
||||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
<CharacterSet>NotSet</CharacterSet>
|
<CharacterSet>NotSet</CharacterSet>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
21
struse.h
21
struse.h
|
@ -590,6 +590,7 @@ public:
|
||||||
strref split_token_trim(char c);
|
strref split_token_trim(char c);
|
||||||
strref split_token_any_trim(const strref chars);
|
strref split_token_any_trim(const strref chars);
|
||||||
strref split_token_track_parens(char c);
|
strref split_token_track_parens(char c);
|
||||||
|
strref split_token_track_parens_quote(char c);
|
||||||
strref split_token_trim_track_parens(char c);
|
strref split_token_trim_track_parens(char c);
|
||||||
strref split_range(const strref range, strl_t pos=0);
|
strref split_range(const strref range, strl_t pos=0);
|
||||||
strref split_range_trim(const strref range, strl_t pos=0);
|
strref split_range_trim(const strref range, strl_t pos=0);
|
||||||
|
@ -770,7 +771,7 @@ public:
|
||||||
int find_after_last(char a, char b) const { return get_strref().find_after_last(a, b); }
|
int find_after_last(char a, char b) const { return get_strref().find_after_last(a, b); }
|
||||||
int find_after_last(char a1, char a2, char b) const { return get_strref().find_after_last(a1, a2, b); }
|
int find_after_last(char a1, char a2, char b) const { return get_strref().find_after_last(a1, a2, b); }
|
||||||
int find(const strref str) const { return get_strref().find(str); }
|
int find(const strref str) const { return get_strref().find(str); }
|
||||||
int find(const strref str, strl_t pos) const { get_strref().find(str, pos); }
|
int find(const strref str, strl_t pos) const { return get_strref().find(str, pos); }
|
||||||
int find(const char *str, strl_t pos = 0) const { return get_strref().find(str, pos); }
|
int find(const char *str, strl_t pos = 0) const { return get_strref().find(str, pos); }
|
||||||
int find_case(const strref str) const { return get_strref().find_case(str); }
|
int find_case(const strref str) const { return get_strref().find_case(str); }
|
||||||
int find_case(const char *str) const { return get_strref().find_case(str); }
|
int find_case(const char *str) const { return get_strref().find_case(str); }
|
||||||
|
@ -4162,6 +4163,24 @@ strref strref::split_token_track_parens(char c)
|
||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
strref strref::split_token_track_parens_quote(char c)
|
||||||
|
{
|
||||||
|
if (length>=2 && string[0] == '"') {
|
||||||
|
strl_t o = 1;
|
||||||
|
while (o < length && string[o] != '"') { ++o; }
|
||||||
|
if (o < length) {
|
||||||
|
strref r = strref(string, o + 1);
|
||||||
|
*this += o + 1;
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int t = find_skip_parens(c);
|
||||||
|
if (t < 0) t = (int)length;
|
||||||
|
strref r = strref(string, strl_t(t));
|
||||||
|
*this += t + 1;
|
||||||
|
return r;
|
||||||
|
}
|
||||||
|
|
||||||
strref strref::split_token_any( const strref chars )
|
strref strref::split_token_any( const strref chars )
|
||||||
{
|
{
|
||||||
strref r; int t = find_any_char_of( chars );
|
strref r; int t = find_any_char_of( chars );
|
||||||
|
|
8
test/merlin_data.s
Normal file
8
test/merlin_data.s
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
; merlin_data.s
|
||||||
|
db $12,$34,$56,$78
|
||||||
|
ddb $1234,$5678 ; double byte - big endian format.
|
||||||
|
dw $1234
|
||||||
|
da $1234
|
||||||
|
adr $123456
|
||||||
|
adrl $12345678
|
||||||
|
|
Loading…
Reference in New Issue
Block a user