Skip to content

Commit a1bea69

Browse files
committedJan 4, 2022
Fix: ToString for real number symbols results in proper value (e.g. 1.5 instead of 1)
1 parent f289e72 commit a1bea69

File tree

14 files changed

+47
-25
lines changed

14 files changed

+47
-25
lines changed
 

‎.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -99,3 +99,4 @@
9999
/Sample Projects/Atari 2600/Step 12 - Add the Missile Objects/collect.bin
100100
/Sample Projects/Atari 2600/Step 11 - Add the Ball Object/collect.bin
101101
/Sample Projects/Mega65/Text Screen RRB Parallax/Text Screen RRB Parallax.prg
102+
/Sample Projects/MacroTest/realnumber_case1.prg

‎C64Models/Formats/D64.cs

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System;
1+
using RetroDevStudio;
2+
using System;
23
using System.Collections.Generic;
34
using System.Text;
45

@@ -939,9 +940,9 @@ public override GR.Memory.ByteBuffer Title
939940
{
940941
GR.Memory.ByteBuffer title = new GR.Memory.ByteBuffer();
941942

942-
title.Append( C64Studio.Util.ToPETSCII( "0 \"" ) );
943+
title.Append( Util.ToPETSCII( "0 \"" ) );
943944
title.Append( DiskName );
944-
title.Append( C64Studio.Util.ToPETSCII( "\" " ) );
945+
title.Append( Util.ToPETSCII( "\" " ) );
945946
title.AppendU16NetworkOrder( DiskID );
946947
return title;
947948
}

‎C64Models/Formats/D71.cs

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System;
1+
using RetroDevStudio;
2+
using System;
23
using System.Collections.Generic;
34
using System.Text;
45

@@ -963,9 +964,9 @@ public override GR.Memory.ByteBuffer Title
963964
{
964965
GR.Memory.ByteBuffer title = new GR.Memory.ByteBuffer();
965966

966-
title.Append( C64Studio.Util.ToPETSCII( "0 \"" ) );
967+
title.Append( Util.ToPETSCII( "0 \"" ) );
967968
title.Append( DiskName );
968-
title.Append( C64Studio.Util.ToPETSCII( "\" " ) );
969+
title.Append( Util.ToPETSCII( "\" " ) );
969970
title.AppendU16NetworkOrder( DiskID );
970971
return title;
971972
}

‎C64Models/Formats/D81.cs

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System;
1+
using RetroDevStudio;
2+
using System;
23
using System.Collections.Generic;
34
using System.Text;
45

@@ -954,9 +955,9 @@ public override GR.Memory.ByteBuffer Title
954955
{
955956
GR.Memory.ByteBuffer title = new GR.Memory.ByteBuffer();
956957

957-
title.Append( C64Studio.Util.ToPETSCII( "0 \"" ) );
958+
title.Append( Util.ToPETSCII( "0 \"" ) );
958959
title.Append( DiskName );
959-
title.Append( C64Studio.Util.ToPETSCII( "\" " ) );
960+
title.Append( Util.ToPETSCII( "\" " ) );
960961
title.AppendU16NetworkOrder( DiskID );
961962
return title;
962963
}

‎C64Models/Formats/Disk.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using C64Studio.Types;
2+
using RetroDevStudio;
23
using System;
34
using System.Collections.Generic;
45
using System.Text;
@@ -1278,9 +1279,9 @@ public override GR.Memory.ByteBuffer Title
12781279
{
12791280
GR.Memory.ByteBuffer title = new GR.Memory.ByteBuffer();
12801281

1281-
title.Append( C64Studio.Util.ToPETSCII( "0 \"" ) );
1282+
title.Append( Util.ToPETSCII( "0 \"" ) );
12821283
title.Append( DiskName );
1283-
title.Append( C64Studio.Util.ToPETSCII( "\" " ) );
1284+
title.Append( Util.ToPETSCII( "\" " ) );
12841285
title.AppendU16NetworkOrder( DiskID );
12851286
return title;
12861287
}

‎C64Models/Formats/PRG.cs

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System;
1+
using RetroDevStudio;
2+
using System;
23
using System.Collections.Generic;
34
using System.Text;
45

@@ -77,7 +78,7 @@ public override bool Load( string Filename )
7778
}
7879
LoadAddress = data.UInt16At( 0 );
7980
Data = new GR.Memory.ByteBuffer( data );
80-
this.Filename = C64Studio.Util.ToFilename( System.IO.Path.GetFileNameWithoutExtension( Filename ).ToUpper() );
81+
this.Filename = Util.ToFilename( System.IO.Path.GetFileNameWithoutExtension( Filename ).ToUpper() );
8182
return true;
8283
}
8384

‎C64Models/Types/SymbolInfo.cs

+8
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,14 @@ public enum Types
4040

4141
public override string ToString()
4242
{
43+
if ( Type == Types.CONSTANT_REAL_NUMBER )
44+
{
45+
return Util.DoubleToString( RealValue );
46+
}
47+
else if ( IsInteger() )
48+
{
49+
return AddressOrValue.ToString();
50+
}
4351
return Name;
4452
}
4553

‎C64Models/Types/Util.cs

+2-3
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@
33
using System.Text;
44
using System.Linq;
55
using GR.Memory;
6-
using RetroDevStudio;
76

87

98

10-
namespace C64Studio
9+
namespace RetroDevStudio
1110
{
1211
public class Util
1312
{
@@ -444,7 +443,7 @@ internal static ByteBuffer FromBASICHex( string Text )
444443

445444
internal static string DoubleToString( double Value )
446445
{
447-
return Value.ToString( "0.00000000000000000000", System.Globalization.CultureInfo.InvariantCulture );
446+
return Value.ToString( "G", System.Globalization.CultureInfo.InvariantCulture );
448447
}
449448
}
450449
}

‎C64Studio/Documents/BinaryDisplay.cs

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using WeifenLuo.WinFormsUI.Docking;
99
using GR.Image;
1010
using GR.Memory;
11+
using RetroDevStudio;
1112

1213
namespace C64Studio
1314
{

‎C64Studio/Documents/FileManager.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ public void RefreshFileView()
213213

214214
if ( m_Media != null )
215215
{
216-
labelMediaTitle.Text = C64Studio.Util.PETSCIIToUnicode( m_Media.Title );
216+
labelMediaTitle.Text = Util.PETSCIIToUnicode( m_Media.Title );
217217
files = m_Media.Files();
218218
}
219219
else

‎MediaManager/Manager.cs

+9-8
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System;
1+
using RetroDevStudio;
2+
using System;
23
using System.Collections.Generic;
34
using System.Text;
45

@@ -124,15 +125,15 @@ public int Handle( string[] args )
124125

125126
foreach ( C64Studio.Types.FileInfo file in files )
126127
{
127-
string filename = C64Studio.Util.FilenameToReadableUnicode( file.Filename );
128+
string filename = Util.FilenameToReadableUnicode( file.Filename );
128129
filename = filename.PadRight( 16 );
129130
System.Console.WriteLine( "\"" + filename + "\" " + file.Blocks + " blocks " + file.Type.ToString() + " " + file.Filename );
130131
}
131132
System.Console.WriteLine( files.Count + " files" );
132133
}
133134
else if ( methodToUse == "-EXPORT" )
134135
{
135-
C64Studio.Types.FileInfo fileInfo = medium.LoadFile( C64Studio.Util.ToFilename( paramMap["-EXPORT"] ) );
136+
C64Studio.Types.FileInfo fileInfo = medium.LoadFile( Util.ToFilename( paramMap["-EXPORT"] ) );
136137
if ( fileInfo != null )
137138
{
138139
string outputFilename = paramMap["-EXPORT"];
@@ -153,10 +154,10 @@ public int Handle( string[] args )
153154
}
154155
else if ( methodToUse == "-DELETE" )
155156
{
156-
C64Studio.Types.FileInfo fileInfo = medium.LoadFile( C64Studio.Util.ToFilename( paramMap["-DELETE"] ) );
157+
C64Studio.Types.FileInfo fileInfo = medium.LoadFile( Util.ToFilename( paramMap["-DELETE"] ) );
157158
if ( fileInfo != null )
158159
{
159-
if ( !medium.DeleteFile( C64Studio.Util.ToFilename( paramMap["-DELETE"] ) ) )
160+
if ( !medium.DeleteFile( Util.ToFilename( paramMap["-DELETE"] ) ) )
160161
{
161162
System.Console.Error.WriteLine( "File could not be deleted: " + medium.LastError );
162163
}
@@ -231,7 +232,7 @@ public int Handle( string[] args )
231232
{
232233
filenameImport = paramMap["-RENAMETO"];
233234
}
234-
if ( !medium.WriteFile( C64Studio.Util.ToFilename( filenameImport ), data, C64Studio.Types.FileType.PRG ) )
235+
if ( !medium.WriteFile( Util.ToFilename( filenameImport ), data, C64Studio.Types.FileType.PRG ) )
235236
{
236237
System.Console.Error.WriteLine( "Could not write file to medium: " + medium.LastError );
237238
return 1;
@@ -250,9 +251,9 @@ public int Handle( string[] args )
250251
return 1;
251252
}
252253
string origFilename = paramMap["-RENAME"];
253-
GR.Memory.ByteBuffer origFilenameBuffer = C64Studio.Util.ToFilename( origFilename );
254+
GR.Memory.ByteBuffer origFilenameBuffer = Util.ToFilename( origFilename );
254255
string targetFilename = paramMap["-RENAMETO"];
255-
GR.Memory.ByteBuffer targetFilenameBuffer = C64Studio.Util.ToFilename( targetFilename );
256+
GR.Memory.ByteBuffer targetFilenameBuffer = Util.ToFilename( targetFilename );
256257

257258
if ( !medium.RenameFile( origFilenameBuffer, targetFilenameBuffer ) )
258259
{
304 Bytes
Binary file not shown.
30 Bytes
Binary file not shown.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
;test case 1 - support of real numbers during assembly
2+
version = 1.5
3+
!warn version
4+
;expected result, actual result:
5+
;output "1.5", "1"
6+
;tooltip "1.5", "-1"
7+
;version not underlined, version was underlined

0 commit comments

Comments
 (0)
Please sign in to comment.