Rev 352 | Rev 467 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 352 | Rev 373 | ||
---|---|---|---|
1 | @echo off |
1 | @echo off |
2 | 2 | ||
3 | set languages=en ru ge et |
3 | set languages=en ru ge et |
4 | set drivers=sound sis infinity ati2d |
4 | set drivers=sound sis infinity ati2d |
5 | set targets=all kernel drivers skins clean |
5 | set targets=all kernel drivers skins clean |
6 | 6 | ||
7 | call :Check_Target %1 |
7 | call :Check_Target %1 |
8 | for %%a in (all kernel) do if %%a==%target% call :Check_Lang %2 |
8 | for %%a in (all kernel) do if %%a==%target% call :Check_Lang %2 |
9 | call :Target_%target% |
9 | call :Target_%target% |
10 | 10 | ||
11 | if ERRORLEVEL 0 goto Exit_OK |
11 | if ERRORLEVEL 0 goto Exit_OK |
12 | 12 | ||
13 | echo Probably at runing has been created error |
13 | echo Probably at runing has been created error |
14 | echo For help send a report... |
14 | echo For help send a report... |
15 | pause |
15 | pause |
16 | goto :eof |
16 | goto :eof |
17 | 17 | ||
18 | 18 | ||
19 | 19 | ||
20 | 20 | ||
21 | :Check_Lang |
21 | :Check_Lang |
22 | set res=%1 |
22 | set res=%1 |
23 | :Check_Lang_loop |
23 | :Check_Lang_loop |
24 | for %%a in (%languages%) do if %%a==%res% set lang=%res% |
24 | for %%a in (%languages%) do if %%a==%res% set lang=%res% |
25 | if defined lang goto :eof |
25 | if defined lang goto :eof |
26 | 26 | ||
27 | echo Language "%res%" is not founded |
27 | echo Language "%res%" is not founded |
28 | echo Enter valide languege |
28 | echo Enter valide languege |
29 | echo [%languages%] |
29 | echo [%languages%] |
30 | 30 | ||
31 | set /P res="> |
31 | set /P res="> |
32 | goto Check_Lang_loop |
32 | goto Check_Lang_loop |
33 | goto :eof |
33 | goto :eof |
34 | 34 | ||
35 | :Check_Target |
35 | :Check_Target |
36 | set res=%1 |
36 | set res=%1 |
37 | :Check_Target_loop |
37 | :Check_Target_loop |
38 | for %%a in (%targets%) do if %%a==%res% set target=%res% |
38 | for %%a in (%targets%) do if %%a==%res% set target=%res% |
39 | if defined target goto :eof |
39 | if defined target goto :eof |
40 | 40 | ||
41 | echo Target "%res%" is not valide |
41 | echo Target "%res%" is not valide |
42 | echo Enter valide target |
42 | echo Enter valide target |
43 | echo [%targets%] |
43 | echo [%targets%] |
44 | 44 | ||
45 | set /P res="> |
45 | set /P res="> |
46 | goto Check_Target_loop |
46 | goto Check_Target_loop |
47 | goto :eof |
47 | goto :eof |
48 | 48 | ||
49 | 49 | ||
50 | :Target_kernel |
50 | :Target_kernel |
51 | echo building kernel with language %lang% ... |
51 | echo building kernel with language %lang% ... |
52 | 52 | ||
53 | if not exist bin mkdir bin |
53 | if not exist bin mkdir bin |
54 | echo lang fix %lang% > lang.inc |
54 | echo lang fix %lang% > lang.inc |
55 | fasm kernel.asm bin\kernel.mnt |
55 | fasm -m 65536 kernel.asm bin\kernel.mnt |
56 | if not %errorlevel%==0 goto :Error_FasmFailed |
56 | if not %errorlevel%==0 goto :Error_FasmFailed |
57 | erase lang.inc |
57 | erase lang.inc |
58 | goto :eof |
58 | goto :eof |
59 | 59 | ||
60 | 60 | ||
61 | :Target_all |
61 | :Target_all |
62 | echo building all ... |
62 | echo building all ... |
63 | call :Target_kernel |
63 | call :Target_kernel |
64 | call :Target_drivers |
64 | call :Target_drivers |
65 | call :Target_skins |
65 | call :Target_skins |
66 | goto :eof |
66 | goto :eof |
67 | 67 | ||
68 | 68 | ||
69 | :Target_drivers |
69 | :Target_drivers |
70 | echo building drivers ... |
70 | echo building drivers ... |
71 | 71 | ||
72 | if not exist bin\drivers mkdir bin\drivers |
72 | if not exist bin\drivers mkdir bin\drivers |
73 | cd drivers |
73 | cd drivers |
74 | for %%a in (%drivers%) do ( |
74 | for %%a in (%drivers%) do ( |
75 | fasm %%a.asm ..\bin\drivers\%%a.obj |
75 | fasm -m 65536 %%a.asm ..\bin\drivers\%%a.obj |
76 | if not %errorlevel%==0 goto :Error_FasmFailed |
76 | if not %errorlevel%==0 goto :Error_FasmFailed |
77 | ) |
77 | ) |
78 | cd .. |
78 | cd .. |
79 | goto :eof |
79 | goto :eof |
80 | 80 | ||
81 | 81 | ||
82 | :Target_skins |
82 | :Target_skins |
83 | echo building skins ... |
83 | echo building skins ... |
84 | 84 | ||
85 | if not exist bin\skins mkdir bin\skins |
85 | if not exist bin\skins mkdir bin\skins |
86 | cd skin |
86 | cd skin |
87 | fasm default.asm ..\bin\skins\default.skn |
87 | fasm -m 65536 default.asm ..\bin\skins\default.skn |
88 | if not %errorlevel%==0 goto :Error_FasmFailed |
88 | if not %errorlevel%==0 goto :Error_FasmFailed |
89 | cd .. |
89 | cd .. |
90 | goto :eof |
90 | goto :eof |
91 | 91 | ||
92 | 92 | ||
93 | :Target_clean |
93 | :Target_clean |
94 | echo cleaning ... |
94 | echo cleaning ... |
95 | 95 | ||
96 | del /Q bin\drivers\*.* |
96 | del /Q bin\drivers\*.* |
97 | del /Q bin\skins\*.* |
97 | del /Q bin\skins\*.* |
98 | del /Q bin\*.* |
98 | del /Q bin\*.* |
99 | rmdir bin\drivers |
99 | rmdir bin\drivers |
100 | rmdir bin\skins |
100 | rmdir bin\skins |
101 | rmdir bin |
101 | rmdir bin |
102 | goto :Exit_OK |
102 | goto :Exit_OK |
103 | 103 | ||
104 | 104 | ||
105 | :Error_FasmFailed |
105 | :Error_FasmFailed |
106 | echo error: fasm execution failed |
106 | echo error: fasm execution failed |
107 | erase lang.inc |
107 | erase lang.inc |
108 | pause |
108 | pause |
109 | exit 1 |
109 | exit 1 |
110 | 110 | ||
111 | :Exit_OK |
111 | :Exit_OK |
112 | echo all operations has been done |
112 | echo all operations has been done |
113 | pause |
113 | pause |
114 | exit 0 |
114 | exit 0 |