Skip to content

Commit d998f00

Browse files
Release candidate; From now on, resources can be attached to the main program or loaded from a file; New LOADER directory - Loader to the main program; Added scripts to compile individual parts of the program and scripts to assemble the program into an ATR format disk image; New BIN directory with binary content; A number of customizations, changes and optimizations
1 parent e76951a commit d998f00

68 files changed

Lines changed: 1225 additions & 211 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

SFXMM.pas

Lines changed: 35 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,11 @@
1111
const
1212
{$i memory.inc}
1313
{$i const.inc}
14+
{$ifdef INCLUDE_RESOURCES}
1415
{$r resources.rc}
16+
{$endif}
1517

1618
var
17-
CHBAS:byte absolute 756;
18-
KRPDEL:byte absolute $2d9;
19-
KEYREP:byte absolute $2da;
20-
2119
// buffers
2220

2321
listBuf:array[0..0] of byte absolute LIST_BUFFER_ADDR; // universal list buffer array
@@ -27,7 +25,7 @@
2725
// UI color themes
2826

2927
themesNames:array[0..0] of byte; // list of themes names
30-
currentTheme:byte;
28+
currentTheme:byte = 0;
3129

3230
// heap
3331

@@ -66,6 +64,8 @@
6664
note_names:array[0..0] of byte;
6765
octShift:array[0..0] of byte;
6866

67+
IO_preventSFX:boolean = false;
68+
IO_messages:boolean = false;
6969
f:file;
7070

7171
// global access function and procedures
@@ -89,11 +89,21 @@
8989

9090
procedure init();
9191
begin
92-
initGraph(DLIST_ADDR,VIDEO_ADDR,SCREEN_BUFFER_ADDR); CHBAS:=CHARSET_PAGE;
93-
PMGInit(PMG_BASE);
92+
{$ifndef INCLUDE_RESOURCES}
93+
Resources_Load();
94+
{$endif}
9495
Init_UI(RESOURCES_ADDR);
9596

96-
getTheme(0,PFCOLS); // set default theme color
97+
// load defaults
98+
IO_messages:=false;
99+
100+
themesNames:=resptr[themes_names_list];
101+
if not IOLoadDefaultTheme() then
102+
moveRes(app_color_schemas,DLI_COLOR_TABLE_ADDR,5);
103+
104+
IO_clearAllData();
105+
106+
IOLoadDefaultNoteTable();
97107

98108
// keyboard set
99109
KRPDEL:=20; KEYREP:=3;
@@ -105,26 +115,32 @@ procedure init();
105115

106116
// other resources set
107117
note_names:=resptr[str_NoteNames];
108-
themesNames:=resptr[themes_names_list];
109118
octShift:=resptr[octaveShifts];
110119

111-
IO_clearAllData();
112-
113-
reset_pianoVis();
114-
updatePiano();
115-
SFX_Start();
120+
currentMenu:=0;
116121

117-
// load defaults
118-
setFilename(defaultThemeFile,otherFile);
119-
IOLoadTheme();
120-
IOLoadDefaultNoteTable();
122+
timer:=0; repeat until timer>100;
121123

122124
// set defaults files
123125
clearFilename(otherFile);
124126
setFilename(defaultFileName,currentFile);
125127
setFilename(defaultSearchPath,searchPath);
128+
moveRes(app_vis_tables,VIS_TABLE_ADDR,58);
129+
reset_pianoVis();
126130

127-
currentMenu:=0;
131+
moveRes(app_charset,CHARSET_ADDR,512);
132+
moveRes(app_dlist,DLIST_ADDR,$18);
133+
initGraph(DLIST_ADDR,VIDEO_ADDR,SCREEN_BUFFER_ADDR); CHBAS:=CHARSET_PAGE;
134+
PMGInit(PMG_BASE);
135+
getTheme(currentTheme,PFCOLS); // set default theme color
136+
137+
showAppSplash();
138+
moveRes(app_virtual_piano,VIDEO_PIANO_ADDR,40);
139+
updatePiano();
140+
141+
SFX_Start();
142+
IO_preventSFX:=true;
143+
IO_messages:=true;
128144
end;
129145

130146
begin

TEST.SMM

-672 Bytes
Binary file not shown.

bin/DOS25/DOS.SYS

4.52 KB
Binary file not shown.

bin/DOS25/DUP.SYS

5.01 KB
Binary file not shown.

bin/SFXMM.ATR

130 KB
Binary file not shown.

bin/SFXMM/AUTORUN.SYS

35.8 KB
Binary file not shown.
File renamed without changes.
Binary file not shown.

bin/SFXMM/SFXMM.RES

2.42 KB
Binary file not shown.
File renamed without changes.

0 commit comments

Comments
 (0)