{"id":303280,"date":"2020-05-09T09:00:25","date_gmt":"2020-05-09T09:00:25","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=303280"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=303280","title":{"rendered":"\u0410\u043d\u0430\u043b\u0438\u0437 \u043a\u043e\u0434\u0430 \u0434\u0435\u043c\u043e Second Reality"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/501030\/\">\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/second_reality.png\"\/><\/div>\n<p>  23 \u0438\u044e\u043b\u044f 2013 \u0433\u043e\u0434\u0430 <a href=\"https:\/\/github.com\/mtuomi\/SecondReality\" rel=\"nofollow\">\u0431\u044b\u043b \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d<\/a> \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0434\u0435\u043c\u043e Second Reality (1993 \u0433\u043e\u0434). \u041a\u0430\u043a \u0438 \u043c\u043d\u043e\u0433\u0438\u043c, \u043c\u043d\u0435 \u043d\u0435 \u0442\u0435\u0440\u043f\u0435\u043b\u043e\u0441\u044c \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0434\u0435\u043c\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0442\u0430\u043a \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u043b\u044f\u043b\u043e \u043d\u0430\u0441 \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 \u0432\u0441\u0435\u0445 \u044d\u0442\u0438\u0445 \u043b\u0435\u0442.<\/p>\n<p>  \u042f \u043e\u0436\u0438\u0434\u0430\u043b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043c\u043e\u043d\u043e\u043b\u0438\u0442\u043d\u044b\u0439 \u0445\u0430\u043e\u0441 \u0438\u0437 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430, \u043d\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u043d\u0435\u0433\u043e \u044f, \u043a \u0443\u0434\u0438\u0432\u043b\u0435\u043d\u0438\u044e \u0441\u0432\u043e\u0435\u043c\u0443, \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b \u0441\u043b\u043e\u0436\u043d\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443, \u0438\u0437\u044f\u0449\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u044e\u0449\u0443\u044e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044f\u0437\u044b\u043a\u043e\u0432. \u041d\u0438\u043a\u043e\u0433\u0434\u0430 \u0440\u0430\u043d\u044c\u0448\u0435 \u043d\u0435 \u0432\u0438\u0434\u0435\u043b \u044f \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0434\u0432\u0430 \u043d\u0435\u043e\u0442\u044a\u0435\u043c\u043b\u0435\u043c\u044b\u0445 \u0430\u0441\u043f\u0435\u043a\u0442\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0435\u043c\u043e:<\/p>\n<ul>\n<li>\u041a\u043e\u043c\u0430\u043d\u0434\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430.<\/li>\n<li>\u041e\u0431\u0444\u0443\u0441\u043a\u0430\u0446\u0438\u044f.<\/li>\n<\/ul>\n<p>  \u041a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e, \u0441\u0432\u043e\u0438 \u0437\u0430\u043c\u0435\u0442\u043a\u0438 \u044f \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u044e: \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u043a\u043e\u043c\u0443-\u043d\u0438\u0431\u0443\u0434\u044c \u044d\u0442\u043e \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u043e\u0432, \u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0438\u0442 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0447\u0438\u0442\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0431\u043e\u043b\u0435\u0435 \u043e\u043f\u044b\u0442\u043d\u044b\u043c\u0438 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c\u0438.<\/p>\n<h2>\u0427\u0430\u0441\u0442\u044c 1: \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h2>\n<p>  <\/p>\n<h3>\u0414\u0435\u043c\u043e<\/h3>\n<p>  \u041f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043a\u043e\u0434\u0443, \u0434\u0430\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0437\u0430\u0445\u0432\u0430\u0442 \u043b\u0435\u0433\u0435\u043d\u0434\u0430\u0440\u043d\u043e\u0433\u043e \u0434\u0435\u043c\u043e \u0432 HD-\u0432\u0438\u0434\u0435\u043e (\u041c\u0430\u0439\u043a\u043b\u0430 \u0425\u0430\u0442\u0430). \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u044d\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u0434\u0435\u043c\u043e \u0431\u0435\u0437 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0433\u043b\u0438\u0442\u0447\u0435\u0439 (\u0434\u0430\u0436\u0435 DOSBox \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c).<\/p>\n<div class=\"oembed\">\n<div>\n<div style=\"left: 0; width: 100%; height: 0; position: relative; padding-bottom: 56.25%;\"><iframe src=\"https:\/\/www.youtube.com\/embed\/KTjnt_WSJu8?rel=0&amp;showinfo=1&amp;hl=en-US\" style=\"border: 0; top: 0; left: 0; width: 100%; height: 100%; position: absolute;\" allowfullscreen scrolling=\"no\" allow=\"encrypted-media; accelerometer; gyroscope; picture-in-picture\"><\/iframe><\/div>\n<\/div>\n<\/div>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<h3>\u041f\u0435\u0440\u0432\u044b\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442 \u0441 \u043a\u043e\u0434\u043e\u043c<\/h3>\n<p>  \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0432\u044b\u043b\u043e\u0436\u0435\u043d \u043d\u0430 GitHub. \u0414\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u043e\u0434\u043d\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>git<\/code>:<\/p>\n<blockquote><p><code> git clone git@github.com:mtuomi\/SecondReality.git<\/code><\/p><\/blockquote>\n<p>  \u041f\u043e\u043d\u0430\u0447\u0430\u043b\u0443 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0441\u0431\u0438\u0432\u0430\u0435\u0442 \u0441 \u0442\u043e\u043b\u043a\u0443: 32 \u043f\u0430\u043f\u043a\u0438 \u0438 \u0437\u0430\u0433\u0430\u0434\u043e\u0447\u043d\u044b\u0439 <code>U2.EXE<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0432 DosBox.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/first_contact.png\"\/><\/div>\n<p>  \u0414\u0435\u043c\u043e \u0438\u043c\u0435\u043b\u043e \u0440\u0430\u0431\u043e\u0447\u0435\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u00abUnreal 2\u00bb (\u043f\u0435\u0440\u0432\u044b\u043c \u00abUnreal\u00bb \u0441\u0442\u0430\u043b\u043e \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0435 \u0434\u0435\u043c\u043e Future Crew, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0435 \u0434\u043b\u044f \u043f\u0435\u0440\u0432\u043e\u0439 Assembly \u0432 1992 \u0433\u043e\u0434\u0443). \u0418 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u043c\u0435\u043d\u0438\u043b\u0438 \u043d\u0430 \u00abSecond Reality\u00bb. \u042d\u0442\u043e \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u0435\u0442 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u00abU2.EXE\u00bb, \u043d\u043e \u043d\u0435 \u043f\u043e\u0447\u0435\u043c\u0443 \u0444\u0430\u0439\u043b \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\u2026<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c <a href=\"http:\/\/cloc.sourceforge.net\/\" rel=\"nofollow\">CLOC<\/a>, \u0442\u043e \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0435 \u043c\u0435\u0442\u0440\u0438\u043a\u0438:<\/p>\n<pre>     -------------------------------------------------------------------------------     \u042f\u0437\u044b\u043a                          \u0444\u0430\u0439\u043b\u044b        \u043f\u0440\u043e\u0431\u0435\u043b\u044b       \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438      \u043a\u043e\u0434     -------------------------------------------------------------------------------     Assembly                        99           3029           1947          33350     C++                            121           1977            915          24551     C\/C++ Header                     8             86            240            654     make                            17            159             25            294     DOS Batch                       71              3              1            253     -------------------------------------------------------------------------------     SUM:                           316           5254           3128          59102     ------------------------------------------------------------------------------- <\/pre>\n<p>  <\/p>\n<ul>\n<li>\u041a\u043e\u0434\u043e\u0432\u0430\u044f \u0431\u0430\u0437\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u00ab\u0432\u0441\u0435\u0433\u043e\u00bb \u0438\u0437 50% \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430.<\/li>\n<li>\u041a\u043e\u0434\u043e\u0432\u0430\u044f \u0431\u0430\u0437\u0430 \u043f\u043e\u0447\u0442\u0438 \u0432\u0434\u0432\u043e\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0432\u0438\u0436\u043a\u0430 Doom.<\/li>\n<li>\u0412 \u043d\u0435\u0439 \u0435\u0441\u0442\u044c \u0441\u0435\u043c\u043d\u0430\u0434\u0446\u0430\u0442\u044c makefile. \u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435 \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u0438\u043d?<\/li>\n<\/ul>\n<p>  <\/p>\n<h3>\u0417\u0430\u043f\u0443\u0441\u043a \u0434\u0435\u043c\u043e<\/h3>\n<p>  \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u043d\u043e \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0435 \u0434\u0435\u043c\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432 DosBox: \u043d\u0430\u0434\u043e \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c <code>U2.EXE<\/code> \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0438\u0437 \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0441\u0442\u0430.<\/p>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u044f \u0443\u0437\u043d\u0430\u043b \u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u043a\u043e\u0434\u0430, \u044d\u0442\u043e \u0441\u0442\u0430\u043b\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u043b\u043e\u0433\u0438\u0447\u043d\u043e:<\/p>\n<pre>         CD MAIN         MOVE U2.EXE DATA\/SECOND.EXE         CD DATA         SECOND.EXE<\/pre>\n<p>  \u0418 \u0432\u0443\u0430\u043b\u044f!<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/demo.png\"\/><\/div>\n<p>  <\/p>\n<h3>\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430<\/h3>\n<p>  \u0412 90-\u0445 \u0434\u0435\u043c\u043e \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u043b\u0438\u0441\u044c \u0434\u0430 \u0433\u0438\u0431\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u0430\u0445. \u041f\u043e\u0441\u043b\u0435 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0438 \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0434\u0432\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0444\u0430\u0439\u043b\u0430: <code>SECOND.EXE<\/code> \u0438 <code>REALITY.FC<\/code>:<\/p>\n<pre>     .               &lt;DIR&gt;         01-08-2013 16:40     ..              &lt;DIR&gt;         01-08-2013 16:40     FCINFO10 TXT           48,462 04-10-1993 11:48     FILE_ID  DIZ              378 04-10-1993 11:30     README   1ST            4,222 04-10-1993 12:59     REALITY  FC           992,188 07-10-1993 12:59      SECOND   EXE        1,451,093 07-10-1993 13:35         5 Files(s)     2.496,343 Bytes.         2 Dir(s)     262,111,744 Bytes free.<\/pre>\n<p>  \u0418\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u0441\u0432\u043e\u0435\u0433\u043e \u043e\u043f\u044b\u0442\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u0433\u0440, \u044f \u0432\u0441\u0435\u0433\u0434\u0430 \u043e\u0436\u0438\u0434\u0430\u044e, \u0447\u0442\u043e \u043a\u0430\u0440\u0442\u0438\u043d\u0430 \u0432 \u0446\u0435\u043b\u043e\u043c \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:<\/p>\n<ul>\n<li><code>SECOND.EXE<\/code>: \u0434\u0432\u0438\u0436\u043e\u043a \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0430\u043c\u0438 \u0432 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u043c \u0444\u0430\u0439\u043b\u0435.<\/li>\n<li><code>REALITY.FC<\/code>: \u0430\u0441\u0441\u0435\u0442\u044b (\u043c\u0443\u0437\u044b\u043a\u0430, \u0437\u0432\u0443\u043a\u043e\u0432\u044b\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u044b, \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f) \u0432 \u043f\u0440\u043e\u043f\u0440\u0438\u0435\u0442\u0430\u0440\u043d\u043e\u043c\/\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u0430-\u043b\u044f <code>WAD<\/code> \u0438\u0433\u0440\u044b Doom.<\/li>\n<\/ul>\n<p>  \u041d\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044f <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/PACK.C\" rel=\"nofollow\"><code>MAIN\/PACK.C<\/code><\/a> \u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b, \u0447\u0442\u043e \u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0448\u0438\u0431\u0430\u043b\u0441\u044f: \u0434\u0432\u0438\u0436\u043e\u043a \u00abSecond Reality\u00bb \u2014 \u044d\u0442\u043e \u0432\u0441\u0435\u0433\u043e \u043b\u0438\u0448\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a (Loader) \u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 (Interrupt server) (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f DIS). \u041a\u0430\u0436\u0434\u0430\u044f \u0441\u0446\u0435\u043d\u0430 (\u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u0430\u044f \u0442\u0430\u043a\u0436\u0435 \u00abPART\u00bb) \u0434\u0435\u043c\u043e \u2014 \u044d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0444\u0430\u0439\u043b DOS. \u041a\u0430\u0436\u0434\u0430\u044f part (\u0447\u0430\u0441\u0442\u044c) \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u043e\u043c Loader \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0437\u0430 \u0434\u0440\u0443\u0433\u043e\u0439. \u0427\u0430\u0441\u0442\u0438 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0432\u0438\u0434\u0435 \u0432 \u043a\u043e\u043d\u0446\u0435 <code>SECOND.EXE<\/code>:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/architecture.png\"\/><\/div>\n<p>  <\/p>\n<ul>\n<li><code>REALITY.FC<\/code> \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u0432\u0435 \u043c\u0443\u0437\u044b\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0446\u0438\u0438, \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u044b\u0435 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0434\u0435\u043c\u043e (\u0434\u043b\u044f \u043e\u0431\u0444\u0443\u0441\u043a\u0430\u0446\u0438\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0438 \u043c\u0430\u0440\u043a\u0435\u0440 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435).<\/li>\n<li><code>SECOND.EXE<\/code> \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0438 Demo Interrupt Server (DIS).<\/li>\n<li>\u041f\u043e\u0441\u043b\u0435 \u043a\u043e\u043d\u0446\u0430 <code>SECOND.EXE<\/code> \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b 32 \u0447\u0430\u0441\u0442\u0435\u0439 (PART) \u0434\u0435\u043c\u043e \u0432 \u0432\u0438\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 DOS (\u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445).<\/li>\n<\/ul>\n<p>  \u0422\u0430\u043a\u0430\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432:<\/p>\n<ul>\n<li>\u0411\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u0430\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0435: \u043a\u0430\u0436\u0434\u044b\u0439 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430\u0434 \u0441\u0432\u043e\u0435\u0439 PART \u043f\u0440\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u0438, \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c <code>_start<\/code> \u0438 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (450 \u041a\u0411).<\/li>\n<li>\u0417\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 EXE \u0432 \u043a\u043e\u043d\u0435\u0446 <code>SECOND.EXE<\/code> \u0438 \u0438\u0445 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0443\u0441\u043b\u043e\u0436\u043d\u044f\u044e\u0442 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433.<\/li>\n<li>\u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a: Loader \u0438 DIS \u0438\u043c\u0435\u044e\u0442 \u0440\u0430\u0437\u043c\u0435\u0440 \u0432\u0441\u0435\u0433\u043e 20 \u041a\u0411. DOS \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0438\u0445 \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e.<\/li>\n<li>\u041f\u0440\u043e\u0441\u0442\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e: \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f PART \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442 \u0435\u0451 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 PART \u0438 \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0435\u0442 \u0412\u0421\u042e \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c. <\/li>\n<li>\u041d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0435\/\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0435 \u0430\u0441\u0441\u0435\u0442\u043e\u0432: \u043a\u0430\u043a \u043c\u044b \u0443\u0432\u0438\u0434\u0438\u043c \u043f\u043e\u0437\u0436\u0435, \u043a\u0430\u0436\u0434\u0430\u044f PART \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432 \u0441\u0435\u0431\u0435 \u0441\u0432\u043e\u0438 \u0430\u0441\u0441\u0435\u0442\u044b (\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f), \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0432 \u043a\u043e\u0434\u0435: \u043f\u0440\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 EXE \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u044e\u0442\u0441\u044f \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f, \u043a\u0430\u043a \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u043c \u043f\u0430\u043a\u0435\u0442\u0435.<\/li>\n<li>\u0414\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f PART \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u044f\u0437\u044b\u043a: \u0432 \u043a\u043e\u0434\u0435 \u043c\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u043c C, Assembly\u2026 \u0438 Pascal.<\/li>\n<\/ul>\n<p>  <\/p>\n<h3>\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u043e\u0435 \u0447\u0442\u0435\u043d\u0438\u0435<\/h3>\n<p>  \u0422\u0440\u0438 \u0441\u0442\u043e\u043b\u043f\u0430 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 Second Reality \u2014 \u044d\u0442\u043e VGA, \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 PC (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 PIC \u0438 PIT). \u0412\u043e\u0442 \u043d\u0435\u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0441\u0441\u044b\u043b\u043a\u0438:<\/p>\n<ul>\n<li>\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 VGA: <a href=\"http:\/\/www.stanford.edu\/class\/cs140\/projects\/pintos\/specs\/freevga\/home.htm\" rel=\"nofollow\">FreeVGA Project<\/a><\/li>\n<li><a href=\"http:\/\/cs.smith.edu\/~thiebaut\/ArtOfAssembly\/artofasm.html\" rel=\"nofollow\">The Art of Assembly<\/a> (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e <a href=\"http:\/\/cs.smith.edu\/~thiebaut\/ArtOfAssembly\/CH17\/CH17-1.html\" rel=\"nofollow\">\u0433\u043b\u0430\u0432\u0430 17<\/a> \u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\u0445 \u0438 ISR).<\/li>\n<li><a href=\"http:\/\/wiki.osdev.org\/PIT\" rel=\"nofollow\">\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 PIT 8254<\/a><\/li>\n<li>\u0422\u0430\u043a \u043a\u0430\u043a \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c \u043a\u043e\u0434\u0435 \u043f\u043e\u043b\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u00abFAR\u00bb \u0438 \u00abNEAR\u00bb, \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"http:\/\/download.intel.com\/products\/processor\/manual\/253665.pdf\" rel=\"nofollow\">Basic Architecture Documentation<\/a> \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Intel, \u0438 \u0432 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0433\u043b\u0430\u0432\u0443 4.3 \u043e \u0442\u0438\u043f\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439.<\/li>\n<li>\u0412\u0441\u0435\u043e\u0431\u044a\u0435\u043c\u043b\u044e\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u041c\u0430\u0439\u043a\u043b\u0430 \u0410\u0431\u0440\u0430\u0448\u0430 \u0438\u0437 <a href=\"http:\/\/www.gamedev.net\/page\/resources\/_\/technical\/graphics-programming-and-theory\/graphics-programming-black-book-r1698\" rel=\"nofollow\">Graphic Programming Black Book<\/a>: <a href=\"http:\/\/downloads.gamedev.net\/pdf\/gpbb\/gpbb3.pdf\" rel=\"nofollow\">\u0433\u043b\u0430\u0432\u0430 3<\/a>: (Zen Timer and PIT), <a href=\"http:\/\/downloads.gamedev.net\/pdf\/gpbb\/gpbb24.pdf\" rel=\"nofollow\">\u0433\u043b\u0430\u0432\u0430 24<\/a>: VGA tour, \u0433\u043b\u0430\u0432\u044b <a href=\"http:\/\/downloads.gamedev.net\/pdf\/gpbb\/gpbb47.pdf\" rel=\"nofollow\">47<\/a>,<a href=\"http:\/\/downloads.gamedev.net\/pdf\/gpbb\/gpbb48.pdf\" rel=\"nofollow\">48<\/a> \u0438 <a href=\"http:\/\/downloads.gamedev.net\/pdf\/gpbb\/gpbb49.pdf\" rel=\"nofollow\">49<\/a>: (Mode X).<\/li>\n<\/ul>\n<p>  <\/p>\n<h2>\u0427\u0430\u0441\u0442\u044c 2: \u0434\u0432\u0438\u0436\u043e\u043a Second Reality<\/h2>\n<p>  \u041a\u0430\u043a \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u043e\u0441\u044c \u0432 \u0447\u0430\u0441\u0442\u0438 1, \u043e\u0441\u043d\u043e\u0432\u0430 Second Reality \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437:<\/p>\n<ul>\n<li>\u0417\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 DOS.<\/li>\n<li>\u0414\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440\u0430 \u043f\u0430\u043c\u044f\u0442\u0438 (\u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043f\u0443\u043b\u0430 \u0441\u0442\u0435\u043a\u043e\u0432)<\/li>\n<li>\u0421\u0435\u0440\u0432\u0435\u0440\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0434\u0435\u043c\u043e (Demo Interrupt Server, DIS).<\/li>\n<\/ul>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u0434\u0430\u043c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0445\u043e\u0442\u044f\u0442 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0432\u0438\u0436\u043e\u043a \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a (DIS \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438).<\/p>\n<h3>\u041a\u043e\u0434 \u0434\u0432\u0438\u0436\u043a\u0430<\/h3>\n<p>  \u041a\u043e\u0434 \u0434\u0432\u0438\u0436\u043a\u0430 \u043d\u0430 100% \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 ASM, \u043d\u043e \u043e\u043d \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0440\u043e\u0448\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043d\u0435\u043f\u043b\u043e\u0445\u043e \u0437\u0430\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/U2.ASM\" rel=\"nofollow\"><code>MAIN\/U2.ASM<\/code><\/a> (\u044f\u0434\u0440\u043e).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/U2A.ASM\" rel=\"nofollow\"><code>MAIN\/U2A.ASM<\/code><\/a> (\u0443\u0442\u0438\u043b\u0438\u0442\u044b).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/VMODE.ASM\" rel=\"nofollow\"><code>MAIN\/VMODE.ASM<\/code><\/a> (\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b VGA).<\/li>\n<\/ul>\n<p>  \u0412 \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434\u0435 \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<pre><code class=\"cpp\">    exemus  db 'STARTMUS.EXE',0     exe0    db 'START.EXE',0     ...     exe23   db 'ENDSCRL.EXE',0      start:        cli                         ; Disable all interrupts        mov     ah,4ah              ; Deallocate all memory        call checkall               ; Check for 570,000 bytes of mem, 386 CPU and VGA        call file_getexepath                call dis_setint             ; Install Demo Interrupt Server on Interrupt 0fch        call file_initpacking       ; Check exe signature (no tempering) !        call file_setint            ; Replace DOS routines (only OPENFILE, SEEK and READ) on Interrupt 021h        call flushkbd               ; Flush the keyboard buffer                call  checkcmdline          ; check\/process commandline         ;======== Here we go! ========        call vmode_init             ; Init VGA (not necessarly Mode13h or ModeX), each PARTs had its own resolution         mov si,OFFSET exe0        call executehigh            ; loaded to high in memory. Used for loading music loaders and stuff.            call  _zinit ; Start music        call  restartmus         mov   si,OFFSET exe1     ;Parameter for partexecute: Offset to exec name        call  partexecute        ; Execute all parts until exe23         call fademusic        ;======== And Done! (or fatal exit) ========      fatalexit:        mov cs:notextmode,0        call vmode_deinit<\/code><\/pre>\n<p>  \u0412\u0441\u0435 \u044d\u0442\u0430\u043f\u044b \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e:<\/p>\n<ol>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 DIS \u043a\u0430\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f <code>0fch<\/code>.<\/li>\n<li>\u0417\u0430\u043c\u0435\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 DOS \u043f\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044e <code>021h<\/code> (\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e\u0431 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0432 \u0447\u0430\u0441\u0442\u0438 <a href=\"http:\/\/fabiensanglard.net\/second_reality\/second_reality_dev_Vs_Prod.php\" rel=\"nofollow\">\u00ab\u0420\u0435\u0436\u0438\u043c\u044b Dev \u0438 Prod\u00bb<\/a>).<\/li>\n<li>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043c\u0443\u0437\u044b\u043a\u0438 \u0432 \u0437\u0432\u0443\u043a\u043e\u0432\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u0447\u0435\u0440\u0435\u0437 \u043f\u0430\u043c\u044f\u0442\u044c EMS.<\/li>\n<li>\u0417\u0430\u043f\u0443\u0441\u043a \u043c\u0443\u0437\u044b\u043a\u0438.<\/li>\n<li>\u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0434\u0435\u043c\u043e.<\/li>\n<li>\u0413\u043e\u0442\u043e\u0432\u043e!<\/li>\n<\/ol>\n<p>  \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440 <code>execute<\/code>:<\/p>\n<pre><code class=\"cpp\"> execute:       cld       call  openfile ; Open the DOS executable for this PART       call  loadexe  ; loads the specified exe file to memory, does relocations and creates psp       call  closefile       call  runexe   ;runs the exe file loaded previously with loadexe.                      ; returns after exe executed, and frees the memory                      ; it uses.<\/code><\/pre>\n<p>  <\/p>\n<h3>\u0414\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440 \u043f\u0430\u043c\u044f\u0442\u0438<\/h3>\n<p>  \u0411\u044b\u043b\u043e \u043c\u043d\u043e\u0433\u043e \u043b\u0435\u0433\u0435\u043d\u0434 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e Second Reality \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u0434\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440 \u043f\u0430\u043c\u044f\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 MMU, \u0432 \u0434\u0432\u0438\u0436\u043a\u0435 \u0435\u0433\u043e \u0441\u043b\u0435\u0434\u043e\u0432 \u043d\u0435 \u043d\u0430\u0448\u043b\u043e\u0441\u044c. \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043e DOS: \u0434\u0432\u0438\u0436\u043e\u043a \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/U2.ASM#L644\" rel=\"nofollow\">\u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0439 \u041e\u0417\u0423<\/a> \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043c \u0435\u0451 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/U2A.ASM#L81\" rel=\"nofollow\">\u043f\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0443<\/a>. \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0445\u0438\u0442\u0440\u044b\u0439 \u0442\u0440\u044e\u043a \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u041e\u0417\u0423 \u0438\u0437 \u043a\u043e\u043d\u0446\u0430 \u043a\u0443\u0447\u0438: \u043e\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f malloc DOS, <a href=\"http:\/\/cs.smith.edu\/~thiebaut\/ArtOfAssembly\/CH13\/CH13-5.html#HEADING5-10\" rel=\"nofollow\">\u043a\u043e\u0433\u0434\u0430 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043c\u043d\u043e\u0433\u043e \u041e\u0417\u0423<\/a>.<\/p>\n<h2>\u0427\u0430\u0441\u0442\u044c 3: DIS<\/h2>\n<p>  Demo Interrupt Server (DIS) \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0448\u0438\u0440\u043e\u043a\u0438\u0439 \u043d\u0430\u0431\u043e\u0440 \u0443\u0441\u043b\u0443\u0433 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 PART: \u043e\u0442 \u043e\u0431\u043c\u0435\u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 PART \u0434\u043e \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 VGA.<\/p>\n<h3>\u0423\u0441\u043b\u0443\u0433\u0438 DIS<\/h3>\n<p>  \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f PART \u0441\u0435\u0440\u0432\u0435\u0440 DIS \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0439 \u0443\u0441\u043b\u0443\u0433\u0438. \u0421\u043f\u0438\u0441\u043e\u043a \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DIS\/DIS.H\" rel=\"nofollow\"><code>DIS\/DIS.H<\/code><\/a>.<\/p>\n<p>  \u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u0443\u0441\u043b\u0443\u0433\u0438:<\/p>\n<ul>\n<li>\u041e\u0431\u043c\u0435\u043d \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 PART (<code>dis_msgarea<\/code>): DIS \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0442\u0440\u0438 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u043e 64 \u0431\u0430\u0439\u0442, \u0447\u0442\u043e\u0431\u044b PART \u043c\u043e\u0433\u043b\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438\u0437 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 PART.<\/li>\n<li>\u042d\u043c\u0443\u043b\u044f\u0446\u0438\u044f Copper (<code>dis_setcopper<\/code>): \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440 Amiga Copper, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438, \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c VGA.<\/li>\n<li>\u0420\u0435\u0436\u0438\u043c Dev\/Prod (<code>dis_indemo<\/code>): \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 PART \u0443\u0437\u043d\u0430\u0442\u044c, \u0447\u0442\u043e \u043e\u043d\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 DEV (\u0430 \u0437\u043d\u0430\u0447\u0438\u0442, \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0432\u0438\u0434\u0435\u043e) \u0438\u043b\u0438 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u0430 \u0438\u0437 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 PROD.<\/li>\n<li>\u041f\u043e\u0434\u0441\u0447\u0451\u0442 \u043a\u0430\u0434\u0440\u043e\u0432 VGA (<code>_dis_getmframe<\/code>)<\/li>\n<li>\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0445\u043e\u0434\u0430 \u043b\u0443\u0447\u0430 VGA (<code>dis_waitb<\/code>).<\/li>\n<\/ul>\n<p>  <\/p>\n<h3>\u041a\u043e\u0434 Demo Interrupt Server<\/h3>\n<p>  \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 DIS \u0442\u043e\u0436\u0435 \u043d\u0430 100% \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 ASM\u2026 \u0438 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043d\u0435\u043f\u043b\u043e\u0445\u043e \u043f\u0440\u043e\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DIS\/DIS.ASM\" rel=\"nofollow\"><code>DIS\/DIS.ASM<\/code><\/a> (\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043d\u0430 int <code>0fch<\/code>).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DIS\/DISINT.ASM\" rel=\"nofollow\"><code>DIS\/DISINT.ASM<\/code><\/a> (\u0441\u0430\u043c\u0438 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b DIS).<\/li>\n<li>\u0422\u0430\u043a \u043a\u0430\u043a Second Reality \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0438 \u043d\u0430 C, \u0432 \u043a\u043e\u0434\u0435 \u0435\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f C: <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DIS\/DISC.H\" rel=\"nofollow\"><code>DIS\/DIS.H<\/code><\/a> \u0438 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DIS\/DISC.ASM\" rel=\"nofollow\"><code>DIS\/DISC.ASM<\/code><\/a>.<\/li>\n<\/ul>\n<p>  <\/p>\n<h3>\u041a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442<\/h3>\n<p>  DIS \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e int <code>0fch<\/code>. \u0417\u0434\u043e\u0440\u043e\u0432\u043e \u0437\u0434\u0435\u0441\u044c \u0442\u043e, \u0447\u0442\u043e \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 <code>SECOND.EXE<\/code>, \u043a\u043e\u0433\u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0434\u0435\u043c\u043e, \u0438\u043b\u0438 \u043a\u0430\u043a \u0440\u0435\u0437\u0438\u0434\u0435\u043d\u0442\u043d\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 (<a href=\"http:\/\/en.wikipedia.org\/wiki\/Terminate_and_Stay_Resident\" rel=\"nofollow\">TSR<\/a>) \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Dev. \u0422\u0430\u043a\u0430\u044f \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 PART \u0434\u0435\u043c\u043e \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438:<\/p>\n<pre>                          \/\/ Let's pretend we are a FC developer and want to start the STAR part directly.   C:\\&gt;CD DDSTARS               C:\\DDSTARS&gt;K    ERROR: DIS not loaded.                             \/\/ Oops, the PART could not find the DIS at int 0fch.   C:\\DDSTARS&gt;CD ..\\DIS   C:\\DIS&gt;DIS    Demo Int Server (DIS) V1.0   Copyright (C) 1993 The Future Crew   BETA VERSION - Compiled: 07\/26\/93 03:15:53    Installed (int fc).   NOTE: This DIS server doesn't support copper or music synchronization!                           \/\/ DIS is installed, let's try again.    C:\\DIS&gt;CD ..\/DDSTARS   C:\\DDSTARS&gt;K<\/pre>\n<p>  \u0418 \u0432\u0443\u0430\u043b\u044f!<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/DDSTARTS.EXE.png\"\/><\/div>\n<p>  <\/p>\n<h3>Copper<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/copper_emu.png\"\/><\/div>\n<p>  \u00abCopper\u00bb \u2014 \u044d\u0442\u043e \u0441\u043e\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043b\u044e\u0431\u0438\u043b\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0434\u0435\u043c\u043e \u0434\u043b\u044f Amiga. \u041e\u043d \u044f\u0432\u043b\u044f\u043b\u0441\u044f \u0447\u0430\u0441\u0442\u044c\u044e <a href=\"http:\/\/en.wikipedia.org\/wiki\/Original_Chip_Set\" rel=\"nofollow\">Original Chip Set<\/a> \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u043f\u043e\u0442\u043e\u043a \u043a\u043e\u043c\u0430\u043d\u0434, \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441 \u0432\u0438\u0434\u0435\u043e\u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435\u043c. \u041d\u0430 PC \u043d\u0435 \u0431\u044b\u043b\u043e \u0442\u0430\u043a\u043e\u0433\u043e \u0441\u043e\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430, \u0438 Future Crew \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440 Copper, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0432\u043d\u0443\u0442\u0440\u0438 DIS.<\/p>\n<p>  \u0414\u043b\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 Copper \u043a\u043e\u043c\u0430\u043d\u0434\u0430 FC \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430 \u0447\u0438\u043f\u0441\u0435\u0442 8254-PIT \u0438 8259-PIC \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f PC. \u041e\u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u043b\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0443, <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/COPPER.ASM#L96\" rel=\"nofollow\">\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 VGA<\/a>, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0443\u044e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b \u0432 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DIS\/DIS.H#L53\" rel=\"nofollow\">\u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u0442\u0430\u0445 \u0432\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0445\u043e\u0434\u0430 \u043b\u0443\u0447\u0430<\/a>:<\/p>\n<ul>\n<li>\u041c\u0435\u0441\u0442\u043e 0: \u043f\u043e\u0441\u043b\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0434\u0438\u0441\u043f\u043b\u0435\u044f (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0435 \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u043a\u0438 25)<\/li>\n<li>\u041c\u0435\u0441\u0442\u043e 1: \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0445\u043e\u0434\u0430 \u043b\u0443\u0447\u0430 \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u043a\u0438 (\u041f\u041e \u0412\u041e\u0417\u041c\u041e\u0416\u041d\u041e\u0421\u0422\u0418 \u0421\u0422\u041e\u0418\u0422 \u042d\u0422\u041e\u0413\u041e \u0418\u0417\u0411\u0415\u0413\u0410\u0422\u042c)<\/li>\n<li>\u041c\u0435\u0441\u0442\u043e 2: \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u0445\u043e\u0434\u0435 \u043b\u0443\u0447\u0430 \u0440\u0430\u0437\u0432\u0451\u0440\u0442\u043a\u0438<\/li>\n<\/ul>\n<p>  \u041e \u0442\u043e\u043c, \u043a\u0430\u043a \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0432 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/COPPER.ASM#L94\" rel=\"nofollow\"><code>MAIN\/COPPER.ASM<\/code><\/a> (\u0438 \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043d\u0438\u0436\u0435):<\/p>\n<ol>\n<li>\u0422\u0430\u0439\u043c\u0435\u0440 \u0447\u0438\u043f\u0430 8254 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 IRQ0 \u0441 \u043d\u0443\u0436\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439.<\/li>\n<li>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f 8h (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f 8259 PIC \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f IRQ0) <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/COPPER.ASM#L105\" rel=\"nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a> \u0437\u0430\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 <code>intti8<\/code>.<\/li>\n<\/ol>\n<p>  \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0443\u0441\u043b\u0443\u0433\u0430 \u043f\u043e\u0434\u0441\u0447\u0451\u0442\u0430 \u043a\u0430\u0434\u0440\u043e\u0432 DIS \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u043c copper.<\/p>\n<h2>\u0427\u0430\u0441\u0442\u044c 4: \u0440\u0435\u0436\u0438\u043c\u044b Dev \u0438 Prod<\/h2>\n<p>  \u0427\u0438\u0442\u0430\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 Second Reality, \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0440\u0430\u0436\u0430\u0435\u0448\u044c\u0441\u044f \u0442\u043e\u043c\u0443, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0443\u0434\u0435\u043b\u0438\u043b\u0430 \u0431\u0435\u0441\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u043e\u043c\u0443 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044e \u0438\u0437 DEV \u0432 PROD.<\/p>\n<h3>\u0420\u0435\u0436\u0438\u043c Development<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/sc_dev.png\"\/><\/div>\n<p>  \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Development \u043a\u0430\u0436\u0434\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0434\u0435\u043c\u043e \u044f\u0432\u043b\u044f\u043b\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c \u0444\u0430\u0439\u043b\u043e\u043c.<\/p>\n<ul>\n<li>DIS \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u043b\u0441\u044f \u0432 \u0440\u0435\u0437\u0438\u0434\u0435\u043d\u0442\u043d\u0443\u044e TSR \u0438 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043d\u0435\u043c\u0443 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u043b\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 <code>0cfh<\/code>.<\/li>\n<li>\u0417\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0432\u044b\u0437\u044b\u0432\u0430\u043b \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 DOS <code>21h<\/code> \u0434\u043b\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f, \u0447\u0442\u0435\u043d\u0438\u044f, \u043f\u043e\u0438\u0441\u043a\u0430 \u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432.<\/li>\n<\/ul>\n<p>  \u0422\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f DEV \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430:<\/p>\n<ul>\n<li>\u041a\u0430\u0436\u0434\u044b\u0439 \u043a\u043e\u0434\u0435\u0440 \u0438 \u0445\u0443\u0434\u043e\u0436\u043d\u0438\u043a \u043c\u043e\u0433 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430\u0434 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c \u0444\u0430\u0439\u043b\u043e\u043c \u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e, \u043d\u0435 \u0432\u043b\u0438\u044f\u044f \u043d\u0430 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b.<\/li>\n<li>\u041f\u043e\u043b\u043d\u043e\u0435 \u0434\u0435\u043c\u043e \u0432 \u043b\u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e <code>SECOND.EXE<\/code> (\u0431\u0435\u0437 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 EXE \u0432 \u043a\u043e\u043d\u0435\u0446). \u0418\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0444\u0430\u0439\u043b \u043a\u0430\u0436\u0434\u043e\u0439 PART \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u043b\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f DOS <code>021h<\/code> \u0438\u0437 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430.<\/li>\n<\/ul>\n<p>  <\/p>\n<h3>Production (\u0440\u0435\u0436\u0438\u043c \u0434\u0435\u043c\u043e)<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/sc_prod.png\"\/><\/div>\n<p>  \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Production \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 <code>SECOND.EXE<\/code> (\u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a), DIS \u0438 \u0447\u0430\u0441\u0442\u0438 \u0434\u0435\u043c\u043e \u0432 \u0432\u0438\u0434\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 EXE \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u043b\u0438\u0441\u044c \u0432 \u043e\u0434\u0438\u043d \u0442\u043e\u043b\u0441\u0442\u044b\u0439 <code>SECOND.EXE<\/code>.<\/p>\n<ul>\n<li>\u0414\u043e\u0441\u0442\u0443\u043f \u043a DIS \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u043b\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 <code>0fch<\/code>.<\/li>\n<li>API \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f DOS 21h \u0431\u044b\u043b \u043f\u0440\u043e\u043f\u0430\u0442\u0447\u0435\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430\u043c\u0438 Future Crew, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e\u0442 \u0444\u0430\u0439\u043b\u044b \u0438\u0437 \u043a\u043e\u043d\u0446\u0430 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 <code>SECOND.EXE<\/code>.<\/li>\n<\/ul>\n<p>  \u0422\u0430\u043a\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f PROD \u0438\u043c\u0435\u0435\u0442 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u043e \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0438 \u0437\u0430\u0449\u0438\u0442\u044b \u043e\u0442 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433\u0430\u2026 \u043d\u043e \u0441\u0430\u043c\u043e\u0435 \u0432\u0430\u0436\u043d\u043e\u0435 \u2014 \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 PART, \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u0441 DEV \u043d\u0430 PROD \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u041d\u0418\u0427\u0415\u0413\u041e.<\/p>\n<h2>\u0427\u0430\u0441\u0442\u044c 5: \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 PART<\/h2>\n<p>  \u041a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u044d\u0444\u0444\u0435\u043a\u0442\u043e\u0432 Second Reality \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u043d\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u043c \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c \u0444\u0430\u0439\u043b\u043e\u043c DOS. \u041e\u043d\u0438 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f PART \u0438 \u0432\u0441\u0435\u0433\u043e \u0438\u0445 23. \u0422\u0430\u043a\u043e\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u043b\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u043e\u0435 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u0443\u044e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 (\u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0443 FC, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439) \u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0432\u044b\u0431\u043e\u0440 \u044f\u0437\u044b\u043a\u043e\u0432 (\u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u0445 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f ASM, C \u0438 \u0434\u0430\u0436\u0435 Pascal).<\/p>\n<h3>\u041e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 PART<\/h3>\n<p>  \u0421\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 PART\/EXE \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c \u043a\u043e\u0434\u0435 \u0434\u0432\u0438\u0436\u043a\u0430: <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/U2.ASM#L56\" rel=\"nofollow\">U2.ASM<\/a>. \u0412\u043e\u0442 \u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u043e\u0435 \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 23 \u0447\u0430\u0441\u0442\u0435\u0439 (\u0441 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0445\u043e\u0442\u044f \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u0441\u0438\u043b\u044c\u043d\u043e \u0441\u0431\u0438\u0432\u0430\u0442\u044c \u0441 \u0442\u043e\u043b\u043a\u0443):<\/p>\n<div class=\"scrollable-table\">\n<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">\n<tr>\n<td>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435<\/td>\n<td>\u0418\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0444\u0430\u0439\u043b<\/td>\n<td>\u041a\u043e\u0434\u0435\u0440<\/td>\n<td>\u0421\u043a\u0440\u0438\u043d\u0448\u043e\u0442<\/td>\n<td>\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434<\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>STARTMUS.EXE<\/td>\n<td><\/td>\n<td><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/MAIN\/STARTMUS.C\" rel=\"nofollow\">MAIN\/STARTMUS.C<\/a><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>START.EXE<\/td>\n<td>WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/02-START.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/02-START_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/START\/MAIN.C\" rel=\"nofollow\">START\/MAIN.c<\/a><\/td>\n<\/tr>\n<tr>\n<td>Hidden part<\/td>\n<td>DDSTARS.EXE<\/td>\n<td>WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/03-DDSTARS.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/03-DDSTARS_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/DDSTARS\/STARS.ASM\" rel=\"nofollow\">DDSTARS\/STARS.ASM<\/a><\/td>\n<\/tr>\n<tr>\n<td>Alkutekstit I<\/td>\n<td>ALKU.EXE<\/td>\n<td>WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/04-ALKU.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/04-ALKU_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/ALKU\/MAIN.C\" rel=\"nofollow\">ALKU\/MAIN.C<\/a><\/td>\n<\/tr>\n<tr>\n<td>Alkutekstit II<\/td>\n<td>U2A.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/05-U2A.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/05-U2A_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/C\/CPLAY.C\" rel=\"nofollow\">VISU\/C\/CPLAY.C<\/a><\/td>\n<\/tr>\n<tr>\n<td>Alkutekstit III<\/td>\n<td>PAM.EXE<\/td>\n<td>TRUG\/WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/06-PAM.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/06-PAM_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/PAM\" rel=\"nofollow\">PAM\/<\/a><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>BEGLOGO.EXE<\/td>\n<td><\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/07-BEGLOGO.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/07-BEGLOGO_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/BEG\/BEG.C\" rel=\"nofollow\">BEG\/BEG.C<\/a><\/td>\n<\/tr>\n<tr>\n<td>Glenz<\/td>\n<td>GLENZ.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/08-GLENZ.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/08-GLENZ_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/GLENZ\/\" rel=\"nofollow\">GLENZ\/<\/a><\/td>\n<\/tr>\n<tr>\n<td>Dottitunneli<\/td>\n<td>TUNNELI.EXE<\/td>\n<td>TRUG<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/09-TUNNELI.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/09-TUNNELI_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/TUNNELI\/TUN10.PAS\" rel=\"nofollow\">TUNNELI\/TUN10.PAS<\/a><\/td>\n<\/tr>\n<tr>\n<td>Techno<\/td>\n<td>TECHNO.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/10-TECHNO.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/10-TECHNO_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/TECHNO\/KOEA.ASM\" rel=\"nofollow\">TECHNO\/KOEA.ASM<\/a><\/td>\n<\/tr>\n<tr>\n<td>Panicfake<\/td>\n<td>PANICEND.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/11-PANICEND.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/11-PANICEND_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/PANIC\" rel=\"nofollow\">PANIC<\/a><\/td>\n<\/tr>\n<tr>\n<td>Vuori-Scrolli<\/td>\n<td>MNTSCRL.EXE<\/td>\n<td><\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/12-MNTSCRL.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/12-MNTSCRL_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/FOREST\/READ2.PAS\" rel=\"nofollow\">FOREST\/READ2.PAS<\/a><\/td>\n<\/tr>\n<tr>\n<td>Desert Dream Stars<\/td>\n<td>DDSTARS.EXE<\/td>\n<td>TRUG<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/13-DDSTARS.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/13-DDSTARS_thumb.png\"\/><\/a><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Lens<\/td>\n<td><\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/14-LNS&amp;ZOOM.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/14-LNS&amp;ZOOM_thumb.png\"\/><\/a><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Rotazoomer<\/td>\n<td>LNS&#038;ZOOM.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/14-LNS&amp;ZOOM-2.png.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/14-LNS&amp;ZOOM-2_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/LENS\" rel=\"nofollow\">LENS\/<\/a><\/td>\n<\/tr>\n<tr>\n<td>Plasma<\/td>\n<td><\/td>\n<td>WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/15-PLZPART.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/15-PLZPART_thumb.png\"\/><\/a><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Plasmacube<\/td>\n<td>PLZPART.EXE<\/td>\n<td>WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/15-PLZPART-2.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/15-PLZPART-2_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/PLZPART\" rel=\"nofollow\">PLZPART\/<\/a><\/td>\n<\/tr>\n<tr>\n<td>MiniVectorBalls<\/td>\n<td>MINVBALL.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/16-MINVBALL.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/16-MINVBALL_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/DOTS\" rel=\"nofollow\">DOTS\/<\/a><\/td>\n<\/tr>\n<tr>\n<td>Peilipalloscroll<\/td>\n<td>RAYSCRL.EXE<\/td>\n<td>TRUG<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/17-RAYSCRL.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/17-RAYSCRL_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/WATER\/DEMO.PAS\" rel=\"nofollow\">WATER\/DEMO.PAS<\/a><\/td>\n<\/tr>\n<tr>\n<td>3D-Sinusfield<\/td>\n<td>3DSINFLD.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/18-3DSINFLD.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/18-3DSINFLD_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/COMAN\/DOLOOP.C\" rel=\"nofollow\">COMAN\/DOLOOP.C<\/a><\/td>\n<\/tr>\n<tr>\n<td>Jellypic<\/td>\n<td>JPLOGO.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/19-JPLOGO.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/19-JPLOGO_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/JPLOGO\/JP.C\" rel=\"nofollow\">JPLOGO\/JP.C<\/a><\/td>\n<\/tr>\n<tr>\n<td>Vector Part II&#8217;<\/td>\n<td>U2E.EXE<\/td>\n<td>PSI<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/20-U2E.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/20-U2E_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/C\/CPLAY.C\" rel=\"nofollow\">VISU\/C\/CPLAY.C<\/a><\/td>\n<\/tr>\n<tr>\n<td>\u0422\u0438\u0442\u0440\u044b\/\u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u0438<\/td>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>ENDLOGO.EXE<\/td>\n<td><\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/21-ENDLOGO.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/21-ENDLOGO_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/END\/END.C\" rel=\"nofollow\">END\/END.C<\/a><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>CRED.EXE<\/td>\n<td>WILDFIRE<\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/22-CRED.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/22-CRED_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/CREDITS\/MAIN.C\" rel=\"nofollow\">CREDITS\/MAIN.C<\/a><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td>ENDSCRL.EXE<\/td>\n<td><\/td>\n<td align=\"center\"><a href=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/23-ENDSCRL.png\" rel=\"nofollow\"><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/23-ENDSCRL_thumb.png\"\/><\/a><\/td>\n<td><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/ENDSCRL\/MAIN.C\" rel=\"nofollow\">ENDSCRL\/MAIN.C<\/a><\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>  \u041f\u043e\u0445\u043e\u0436\u0435, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0431\u044b\u043b\u0430 \u0441\u0432\u043e\u044f \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u043b\u0438 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u044d\u0442\u043e \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0446\u0435\u043d\u0435 \u0441\u043e \u0441\u043a\u0440\u043e\u043b\u043b\u0438\u043d\u0433\u043e\u043c, \u043a\u043e\u0440\u0430\u0431\u043b\u044f\u043c\u0438 \u0438 \u0432\u0437\u0440\u044b\u0432\u0430\u043c\u0438 (Alkutekstit). \u0425\u043e\u0442\u044f \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a \u043e\u0434\u0438\u043d \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u044b\u0439 \u044d\u0444\u0444\u0435\u043a\u0442, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u044d\u0442\u043e \u0442\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0445 \u0444\u0430\u0439\u043b\u0430, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u0442\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u043b\u044e\u0434\u044c\u043c\u0438:<\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td colspan=\"3\"><b>Alkutekstit (Credits) sequence<\/b><\/td>\n<\/tr>\n<tr>\n<td><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/04-ALKU_seq.png\"\/><\/td>\n<td><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/05-U2A_seq.png\"\/><\/td>\n<td><img decoding=\"async\" src=\"http:\/\/fabiensanglard.net\/second_reality\/parts\/06-PAM_seq.png\"\/><\/td>\n<\/tr>\n<tr>\n<td>ALKU by WILDFIRE<\/td>\n<td>U2A by PSI<\/td>\n<td>PAM by TRUG\/WILDFIRE<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>  <\/p>\n<h3>\u0410\u0441\u0441\u0435\u0442\u044b<\/h3>\n<p>  \u0410\u0441\u0441\u0435\u0442\u044b \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 (<code>.LBM<\/code>) \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <a href=\"http:\/\/en.wikipedia.org\/wiki\/Deluxe_Paint\" rel=\"nofollow\">Deluxe Paint<\/a> \u2014 \u0447\u0440\u0435\u0437\u0432\u044b\u0447\u0430\u0439\u043d\u043e \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432 90-\u0445 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430 \u0431\u0438\u0442\u043e\u0432\u044b\u0445 \u043a\u0430\u0440\u0442. \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e, \u0447\u0442\u043e \u043e\u043d\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u044b \u0432 \u043c\u0430\u0441\u0441\u0438\u0432 \u0431\u0430\u0439\u0442\u043e\u0432 \u0438 \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0432\u043d\u0443\u0442\u0440\u0438 PART. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u044d\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b exe \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0432\u0441\u0435 \u0430\u0441\u0441\u0435\u0442\u044b. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u044d\u0442\u043e \u0443\u0441\u043b\u043e\u0436\u043d\u044f\u0435\u0442 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433.<\/p>\n<p>  \u0421\u0440\u0435\u0434\u0438 \u043a\u0440\u0443\u0442\u044b\u0445 \u043d\u0430\u0431\u043e\u0440\u043e\u0432 \u0430\u0441\u0441\u0435\u0442\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u0437\u043d\u0430\u043c\u0435\u043d\u0438\u0442\u044b\u0439 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/VISU\/C\/CITY.3DS\" rel=\"nofollow\">CITY<\/a> \u0438 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/tree\/master\/3DS\/PXLSHIP3.3DS\" rel=\"nofollow\">SHIP<\/a> \u0438\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 3D-\u0441\u0446\u0435\u043d\u044b:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/second%20reality%20city.png\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/second%20reality%20ship.png\"\/><\/div>\n<p>  <\/p>\n<h3>\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e PART<\/h3>\n<p>  \u0422\u0430\u043a \u043a\u0430\u043a \u0432\u0441\u0435 \u043e\u043d\u0438 \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0432 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b DOS, \u0432 PART \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u044f\u0437\u044b\u043a:<\/p>\n<ul>\n<li>ASM.<\/li>\n<li>C.<\/li>\n<li>PASCAL: <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/FOREST\/READ2.PAS\" rel=\"nofollow\">Brass knuckles monster (MNTSCRL.EXE)<\/a>, <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/TUNNELI\/TUN10.PAS\" rel=\"nofollow\">Dotted Tunnel (TUNNELI.EXE)<\/a> \u0438 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/WATER\/DEMO.PAS\" rel=\"nofollow\">Raytracing sword (RAYSCRL.EXE)<\/a>.<\/li>\n<li>\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 PART \u0437\u0430\u0448\u043b\u0438 \u0435\u0449\u0451 \u0434\u0430\u043b\u044c\u0448\u0435 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 C \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043e\u0434\u0430 \u043d\u0430 ASM: <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/GLENZ\/DOLOOP.C\" rel=\"nofollow\">GLENZ\/DOLOOP.C<\/a> (\u0441\u043a\u0430\u0447\u0443\u0449\u0438\u0439 \u043c\u043d\u043e\u0433\u043e\u0433\u0440\u0430\u043d\u043d\u0438\u043a) \u0438 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/COMAN\/DOLOOP.C\" rel=\"nofollow\">Water effect (3DSINFLD.EXE)<\/a>.<\/li>\n<\/ul>\n<p>  \u0427\u0442\u043e \u043a\u0430\u0441\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438, \u0442\u043e \u044f \u043c\u043d\u043e\u0433\u043e \u0447\u0438\u0442\u0430\u043b \u043e MMU \u043d\u0430 \u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u0438 \u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u0432\u0435\u0431-\u0441\u0430\u0439\u0442\u0430\u0445\u2026 \u043d\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435, \u043a\u0430\u0436\u0434\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043c\u043e\u0433\u043b\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u043d\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0432\u044b\u0433\u0440\u0443\u0436\u0430\u043b\u0430\u0441\u044c \u0438\u0437 \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<p>  \u041f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 VGA \u043a\u0430\u0436\u0434\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0442\u0440\u044e\u043a\u043e\u0432 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0430 \u0432 \u0441\u0432\u043e\u0451\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438. \u0412\u043e \u0432\u0441\u0435\u0445 \u043d\u0438\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u043d\u0435 Mode 13h \u0438 \u043d\u0435 ModeX, \u0430 \u0441\u043a\u043e\u0440\u0435\u0435 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c mode 13h \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c. \u0412 \u0444\u0430\u0439\u043b\u0435 <a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/SCRIPT\" rel=\"nofollow\">SCRIPT<\/a> \u0447\u0430\u0441\u0442\u043e \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u044e\u0442\u0441\u044f 320&#215;200 \u0438 320&#215;400.<\/p>\n<p>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043f\u0440\u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0435 PART \u0447\u0442\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0441\u043b\u043e\u0436\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0435\u0439: \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u0434\u0430 \u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432 \u0441\u0438\u043b\u044c\u043d\u043e \u043f\u0430\u0434\u0430\u0435\u0442. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0442\u0430\u043a \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e \u0438\u0437-\u0437\u0430 \u0441\u043f\u0435\u0448\u043a\u0438 \u0438\u043b\u0438 \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430\u0434 \u043a\u0430\u0436\u0434\u043e\u0439 PART \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0441\u0432\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a (\u0442\u043e \u0435\u0441\u0442\u044c \u00ab\u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439\u00bb \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445 \u0438\u043b\u0438 \u043f\u043e\u043d\u044f\u0442\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0434\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e), \u043d\u043e \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043d\u0435\u0447\u0442\u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u043e\u0435:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/PANIC\/SHUTDOWN.C#L61\" rel=\"nofollow\">PANIC<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/GLENZ\/DOLOOP.C#L38\" rel=\"nofollow\">GLENZ<\/a><\/li>\n<\/ul>\n<p>  \u0421\u043b\u043e\u0436\u043d\u044b \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b, \u0442\u0440\u0443\u0434\u043d\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u0434\u0430\u0436\u0435 \u0441 \u0438\u043c\u0435\u043d\u0430\u043c\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 (<code>a<\/code>, <code>b<\/code>, <code>co[]<\/code>,\u2026 ). \u041a\u043e\u0434 \u0431\u044b\u043b \u0431\u044b \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u0435\u0435 \u0447\u0438\u0442\u0430\u0435\u043c\u044b\u043c, \u0435\u0441\u043b\u0438 \u0431\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u043d\u0430\u043c \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0438 \u0432 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f\u0445 \u043a \u0440\u0435\u043b\u0438\u0437\u0443. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u044f \u043d\u0435 \u0443\u0434\u0435\u043b\u044f\u043b \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044e \u043a\u0430\u0436\u0434\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u0441\u043e\u0431\u043e \u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438; \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b 3D-\u0434\u0432\u0438\u0436\u043e\u043a, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0439 \u0437\u0430 U2A.EXE \u0438 U2E.EXE.<\/p>\n<h3>3D-\u0434\u0432\u0438\u0436\u043e\u043a Second Reality<\/h3>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/3d_end.png\"\/><\/div>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/3d_end2.png\"\/><\/div>\n<p>  \u042f \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0438\u0437\u0443\u0447\u0438\u0442\u044c 3D-\u0434\u0432\u0438\u0436\u043e\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0432 \u0434\u0432\u0443\u0445 \u0447\u0430\u0441\u0442\u044f\u0445: <code>U2A.EXE<\/code> \u0438 <code>U2E.EXE<\/code>.<\/p>\n<p>  \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 C \u0441 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430\u043c\u0438 (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0437\u0430\u043b\u0438\u0432\u043a\u0430 \u0438 \u0437\u0430\u0442\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0413\u0443\u0440\u043e):<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/C\/CITY.C\" rel=\"nofollow\">CITY.C<\/a> (\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043a\u043e\u0434).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/VISU.C\" rel=\"nofollow\">VISU.C<\/a> (\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 <code>visu.lib<\/code>).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/AVID.ASM\" rel=\"nofollow\">AVID.ASM<\/a> (\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0432\u0438\u0434\u0435\u043e (\u043e\u0447\u0438\u0441\u0442\u043a\u0430, \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0438 \u0442.\u043f.)).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/ADRAW.ASM\" rel=\"nofollow\">ADRAW.ASM<\/a> (\u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u0443\u0441\u0435\u0447\u0435\u043d\u0438\u0435).<\/li>\n<li><a href=\"https:\/\/github.com\/fabiensanglard\/SecondReality\/blob\/master\/VISU\/ACALC.ASM\" rel=\"nofollow\">ACALC.ASM<\/a> (\u043c\u0430\u0442\u0440\u0438\u0446\u044b \u0438 \u0431\u044b\u0441\u0442\u0440\u044b\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f sin\/cos).<\/li>\n<\/ul>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/sr_3d_engine.png\"\/><\/div>\n<p>  \u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 \u044d\u0442\u0438\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u0430: \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 <code>VISU<\/code> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0432\u0441\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0430\u0441\u0441\u0435\u0442\u043e\u0432: 3DS-\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0438 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 (\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0439 \u043a\u0430\u043c\u0435\u0440\u044b \u0438 \u043a\u043e\u0440\u0430\u0431\u043b\u0435\u0439).<\/p>\n<p>  \u0414\u0432\u0438\u0436\u043e\u043a \u0441\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u044b\u0432\u0430\u0442\u044c, \u0438 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u0442 \u0438\u0445 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0445\u0443\u0434\u043e\u0436\u043d\u0438\u043a\u0430. \u042d\u0442\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0431\u043e\u043b\u044c\u0448\u043e\u043c\u0443 \u043e\u0431\u044a\u0451\u043c\u0443 \u043f\u0435\u0440\u0435\u0440\u0438\u0441\u043e\u0432\u043a\u0438, \u043d\u043e \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0437\u0430\u0449\u0451\u043b\u043a\u0438 VGA \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c 4 \u043f\u0438\u043a\u0441\u0435\u043b\u044f, \u0432\u0441\u0451 \u043d\u0435 \u0442\u0430\u043a \u0443\u0436 \u043f\u043b\u043e\u0445\u043e.<\/p>\n<p>  <u><b>\u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439 \u0444\u0430\u043a\u0442:<\/b><\/u> \u0434\u0432\u0438\u0436\u043e\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u00ab\u043e\u043b\u0434\u0441\u043a\u0443\u043b\u044c\u043d\u044b\u043c\u00bb \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c: \u0432\u043c\u0435\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u0449\u0438\u0445 \u043e\u0434\u043d\u043e\u0440\u043e\u0434\u043d\u044b\u0445 \u043c\u0430\u0442\u0440\u0438\u0446 4&#215;4 \u043e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043c\u0430\u0442\u0440\u0438\u0446\u044b \u043f\u043e\u0432\u043e\u0440\u043e\u0442\u0430 3*3 \u0438 \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f.<\/p>\n<p>  \u0412\u043e\u0442 \u043a\u0440\u0430\u0442\u043a\u043e\u0435 \u0438\u0437\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434\u0435:<\/p>\n<pre><code class=\"cpp\">      main(){              scenem=readfile(tmpname);  \/\/ Load materials             scene0=readfile(tmpname);  \/\/ Load animation              for(f=-1,c=1;c&lt;d;c++){  \/\/Load objects               sprintf(tmpname,&quot;%s.%03i&quot;,scene,e);               co[c].o=vis_loadobject(tmpname);             }              vid_init(1);             vid_setpal(cp);              for(;;){                  vid_switch();                 _asm mov bx,1   _asm int 0fch \/\/ waitb for retrace via copper simulator interrupt call                  vid_clear();                                  \/\/ parse animation stream, update objects                 for(;;){}                  vid_cameraangle(fov); \/\/ Field of vision                  \/\/ Calc matrices and add to order list (only enabled objects)                 for(a=1;ac&lt;conum;a++) if(co[a].on) \/* start at 1 to skip camera *\/                     calc_applyrmatrix(o-&gt;r,&cam);                  \/\/ Zsort via Bubble Sort                 for(a=0;ac&lt;ordernum;a++)                     for(b=a-1;b&gt;=0 && dis&gt;co[order[b]].dist;b--)                  \/\/ Draw                 for(a=0;ac&lt;ordernum;a++)                     vis_drawobject(o);               }             }             return(0);      }<\/code><\/pre>\n<p>  <\/p>\n<h3>\u041f\u043e\u0440\u0442\u044b \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b<\/h3>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u043d\u043e\u0433\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043d\u0430\u0447\u0430\u043b\u0438 \u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c Second Reality \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041a\u043b\u0430\u0443\u0434\u0438\u043e \u041c\u0430\u0446\u0443\u043e\u043a\u0430 \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043b \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e <a href=\"https:\/\/github.com\/cmatsuoka\/sr-port\" rel=\"nofollow\">sr-port<\/a> \u2014 \u043f\u043e\u0440\u0442\u0430 \u043d\u0430 C \u0434\u043b\u044f Linux \u0438 OpenGL ES 2.0, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043a\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0432\u043f\u0435\u0447\u0430\u0442\u043b\u044f\u044e\u0449\u0435. \u041d\u0438\u043a \u041a\u043e\u0432\u0430\u0447 \u043f\u0440\u043e\u0434\u0435\u043b\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0430\u0434 PART PLZ, \u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0432 \u0435\u0451 \u043d\u0430 C (\u0442\u0435\u043f\u0435\u0440\u044c \u043e\u043d\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0430\u0441\u0442\u044c\u044e \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 sr-port), \u0430 \u0442\u0430\u043a\u0436\u0435 <a href=\"http:\/\/ndkovac.tumblr.com\/\" rel=\"nofollow\">\u043d\u0430 javascript<\/a>:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"https:\/\/habrastorage.org\/webt\/iw\/l9\/jm\/iwl9jmypg-njcygljgtgi3zaxdg.png\"\/><\/div>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/501030\/\"> https:\/\/habr.com\/ru\/post\/501030\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/501030\/\">\n<div style=\"text-align:center;\"><img decoding=\"async\"  src=\"http:\/\/fabiensanglard.net\/second_reality\/second_reality.png\"\/><\/div>\n<p>  23 \u0438\u044e\u043b\u044f 2013 \u0433\u043e\u0434\u0430 <a href=\"https:\/\/github.com\/mtuomi\/SecondReality\" rel=\"nofollow\">\u0431\u044b\u043b \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d<\/a> \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0434\u0435\u043c\u043e Second Reality (1993 \u0433\u043e\u0434). \u041a\u0430\u043a \u0438 \u043c\u043d\u043e\u0433\u0438\u043c, \u043c\u043d\u0435 \u043d\u0435 \u0442\u0435\u0440\u043f\u0435\u043b\u043e\u0441\u044c \u0432\u0437\u0433\u043b\u044f\u043d\u0443\u0442\u044c \u043d\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0434\u0435\u043c\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0442\u0430\u043a \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u043b\u044f\u043b\u043e \u043d\u0430\u0441 \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 \u0432\u0441\u0435\u0445 \u044d\u0442\u0438\u0445 \u043b\u0435\u0442.<\/p>\n<p>  \u042f \u043e\u0436\u0438\u0434\u0430\u043b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u043c\u043e\u043d\u043e\u043b\u0438\u0442\u043d\u044b\u0439 \u0445\u0430\u043e\u0441 \u0438\u0437 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430, \u043d\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u043d\u0435\u0433\u043e \u044f, \u043a \u0443\u0434\u0438\u0432\u043b\u0435\u043d\u0438\u044e \u0441\u0432\u043e\u0435\u043c\u0443, \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b \u0441\u043b\u043e\u0436\u043d\u0443\u044e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443, \u0438\u0437\u044f\u0449\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u044e\u0449\u0443\u044e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044f\u0437\u044b\u043a\u043e\u0432. \u041d\u0438\u043a\u043e\u0433\u0434\u0430 \u0440\u0430\u043d\u044c\u0448\u0435 \u043d\u0435 \u0432\u0438\u0434\u0435\u043b \u044f \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430, \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0434\u0432\u0430 \u043d\u0435\u043e\u0442\u044a\u0435\u043c\u043b\u0435\u043c\u044b\u0445 \u0430\u0441\u043f\u0435\u043a\u0442\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0435\u043c\u043e:<\/p>\n<ul>\n<li>\u041a\u043e\u043c\u0430\u043d\u0434\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430.<\/li>\n<li>\u041e\u0431\u0444\u0443\u0441\u043a\u0430\u0446\u0438\u044f.<\/li>\n<\/ul>\n<p>  \u041a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e, \u0441\u0432\u043e\u0438 \u0437\u0430\u043c\u0435\u0442\u043a\u0438 \u044f \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u044e: \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u043a\u043e\u043c\u0443-\u043d\u0438\u0431\u0443\u0434\u044c \u044d\u0442\u043e \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0447\u0430\u0441\u043e\u0432, \u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0438\u0442 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0447\u0438\u0442\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0431\u043e\u043b\u0435\u0435 \u043e\u043f\u044b\u0442\u043d\u044b\u043c\u0438 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c\u0438.<\/p>\n<h2>\u0427\u0430\u0441\u0442\u044c 1: \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h2>\n<p>  <\/p>\n<h3>\u0414\u0435\u043c\u043e<\/h3>\n<p>  \u041f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u043a\u043e\u0434\u0443, \u0434\u0430\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0437\u0430\u0445\u0432\u0430\u0442 \u043b\u0435\u0433\u0435\u043d\u0434\u0430\u0440\u043d\u043e\u0433\u043e \u0434\u0435\u043c\u043e \u0432 HD-\u0432\u0438\u0434\u0435\u043e (\u041c\u0430\u0439\u043a\u043b\u0430 \u0425\u0430\u0442\u0430). \u0421\u0435\u0433\u043e\u0434\u043d\u044f \u044d\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u043e\u0446\u0435\u043d\u0438\u0442\u044c \u0434\u0435\u043c\u043e \u0431\u0435\u0437 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0433\u043b\u0438\u0442\u0447\u0435\u0439 (\u0434\u0430\u0436\u0435 DOSBox \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c).<\/p>\n<div class=\"oembed\">\n<div>\n<div style=\"left: 0; width: 100%; height: 0; position: relative; padding-bottom: 56.25%;\"><iframe src=\"https:\/\/www.youtube.com\/embed\/KTjnt_WSJu8?rel=0&amp;showinfo=1&amp;hl=en-US\" style=\"border: 0; top: 0; left: 0; width: 100%; height: 100%; position: absolute;\" allowfullscreen scrolling=\"no\" allow=\"encrypted-media; accelerometer; gyroscope; picture-in-picture\"><\/iframe><\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-303280","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/303280","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=303280"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/303280\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=303280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=303280"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=303280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}