تی آی اس - 100

این مقاله در حال ترجمه از ویکی انگلیسی است لطفا حذف نشود.

***TIS-100*** یک بازی ویدیویی برنامه‌نویسی /معمایی است که توسط Zachtronics Industries توسعه داده شده است. این بازی از بازیکن می‌خواهد که کد زبان اسمبلی ساختگی را برای انجام وظایف خاص روی یک کامپیوتر خیالی و مجازی دهه 1970 که خراب شده است، توسعه دهد. این بازی در ژوئیه 2015 برای رایانه‌های شخصی ویندوز ، OS X و لینوکس منتشر شد. یک پورت موبایل برای iPadOS در ژانویه 2016 منتشر شد.

= گیم‌پلی =
گفته می‌شود که در *TIS-100* ، بازیکن با یک کامپیوتر TIS-100 ("سیستم هوش موزاییکی") و دفترچه راهنمای آن که بر اساس کامپیوترهای اولیه دهه ۱۹۸۰ ساخته شده بود، مواجه شده است. کامپیوتر به صورت دوازده گره پردازشی جداگانه که در یک شبکه چهار در سه قرار گرفته‌اند، به بازیکن ارائه می‌شود. هر گره دارای یک رجیستر پردازنده برای ذخیره یک مقدار عددی و همچنین یک رجیستر پشتیبان است. گره‌ها همچنین برنامه زبان اسمبلی خود را که توسط کاربر وارد می‌شود، نگه می‌دارند. زبان اسمبلی، نسخه ساده‌شده‌ای از زبان‌های اسمبلی دنیای واقعی، به گره اجازه می‌دهد تا ورودی خارجی یا یک مقدار عددی ارسال شده از یک گره مجاور را بپذیرد، عملیات ریاضی و منطقی پایه را انجام دهد، مقدار داده فعلی را ذخیره و پشتیبان‌گیری کند و سپس نتایج را به یک گره مجاور یا به خروجی برنامه ارسال کند. پازل‌های بعدی گره‌های پشته و یک خروجی را به یک صفحه نمایش گرافیکی ساده ۵ رنگ معرفی می‌کنند.
بندانگشتی|رابط کاربری ''TIS-100،'' ۱۲ گره مبتنی بر زبان اسمبلی و گزینه‌های دیگری برای توسعه کد را در اختیار بازیکن قرار می‌دهد. در این پازل، گره بالا سمت راست که با رنگ قرمز مشخص شده، قابل استفاده نیست.
به بازیکن مجموعه‌ای از معماها ارائه می‌شود که از او خواسته می‌شود گره‌ها را برای انجام اقدامات خاص روی مجموعه‌ای از اعداد از یک یا چند ترمینال ورودی برنامه‌ریزی کند تا خروجی از پیش تعیین‌شده‌ای در ترمینال‌های دیگر تولید شود. به عنوان مثال، یک کار از بازیکن می‌خواهد که مقدار ورودی را در ترمینال خروجی دو برابر کند. بازی لیستی از ورودی‌ها و مقادیر خروجی هدف مورد انتظار را ارائه می‌دهد و از بازیکنان می‌خواهد که کد هر گره را برای مطابقت با این موارد توسعه دهند. اگر در حین اجرا، گره‌های خروجی خروجی‌های غیرمنتظره‌ای دریافت کنند، بازیکن باید راه‌حل خود را دوباره پردازش کند. همه گره‌ها در معماهای خاص در دسترس نیستند، بنابراین بازیکن باید در اطراف این گره‌ها مسیریابی کند. بازی به بازیکن این امکان را می‌دهد که اجرای کد را گام به گام انجام دهد و عبارات اشکال‌زدایی را برای تعیین مشکلات منطقی در کد خود وارد کند. پس از برآورده شدن شرایط خروجی هدف، بازیکن معما را حل کرده است. گره‌هایی که در معماها غیرفعال هستند حاوی پیام‌های رمزی مربوط به روایت بازی هستند و حاوی اطلاعات بیشتری هستند که پس از اتمام کل بازی می‌توان به آنها دسترسی داشت. 

همانند بازی‌های قبلی Zachtronics مانند *SpaceChem* و *Infinifactory* ، پس از اینکه بازیکن یک پازل را کامل می‌کند، راه‌حل او از طریق جدول امتیازات آنلاین با سایر بازیکنان مقایسه می‌شود. بازیکن بر اساس تعداد گره‌های استفاده شده، تعداد دستورالعمل‌های درون کد خود و تعداد چرخه‌های دستورالعمل استفاده شده رتبه‌بندی می‌شود. این بازی به بازیکن اجازه می‌دهد تا برای بهبود راه‌حل خود به پازل‌های قبلی بازگردد. این بازی در ژوئن 2015 با حدود 25 پازل در بازی به صورت دسترسی زودهنگام منتشر شد،  و 25 پازل دیگر تا زمان انتشار رسمی آن در ماه بعد اضافه شدند. 

### معماری کامپیوتر
یک "ماشین" TIS-100 از 12 گره به هم پیوسته روی یک شبکه، یا یک گره محاسباتی یا یک ماژول حافظه پشته، تشکیل شده است. هر گره محاسباتی می‌تواند 15 دستورالعمل و هر گره حافظه می‌تواند 15 مقدار را در خود جای دهد. گره‌های بالا یا پایین می‌توانند به ترتیب به منابع خارجی ورودی یا خروجی متصل شوند. 

هر گره محاسباتی TIS-100 دارای دو رجیستر به نام‌های ACC و BAK است. ACC توسط اکثر دستورالعمل‌ها استفاده می‌شود، در حالی که BAK فقط توسط دو دستورالعمل، یکی برای تعویض و دیگری برای کپی کردن، قابل دسترسی است. مجموعه دستورالعمل‌ها شامل ۱۳ دستورالعمل مستند برای محاسبات، کنترل جریان پایه (پرش شرطی)، عدم عملیات و ارسال داده به گره‌های مجاور است. این بازی همچنین شامل دستورالعمل‌های مستند نشده است، که HCF (بازی راه‌اندازی مجدد) اولین دستورالعمل مستند نشده شناخته شده است. 

معماری TIS-100 همچنین در خارج از بازی در یک شبیه‌ساز پیاده‌سازی شده است که قرار است به عنوان یک زبان برنامه‌نویسی محرمانه مورد استفاده قرار گیرد. 

= توسعه =
*TIS-100* بر اساس ایده‌ای بود که زک بارت ، بنیانگذار و طراح ارشد بازی Zachtronics، سال‌ها قبل داشت. این مفهوم *«عصر طلایی دوم»* نام داشت که در خاورمیانه در آینده‌ای نزدیک اتفاق می‌افتاد و در آن بازیکن نانوبات‌هایی را برنامه‌ریزی می‌کرد که به خون شخصیت بازیکن تزریق شوند تا بتوانند انواع معماهای مشابه *Myst* را حل کنند. یکی از جنبه‌های بازی این بود که شخصیت بازیکن به یک فروشگاه لوازم الکترونیکی دست دوم برخورد می‌کند و یک کامپیوتر قدیمی با قسمت‌های خراب پیدا می‌کند که هنگام تلاش برای پاکسازی، متوجه می‌شود که این قسمت‌های خراب حاوی هسته یک هوش مصنوعی هستند. بارت در حین توسعه *Infinifactory* می‌خواست کار روی *«عصر طلایی دوم»* را شروع کند، اما متوجه شد که این تلاش، همزمان با *Infinifactory* ، بسیار دشوار است. با این حال، او جنبه معمای زبان اسمبلی را تکمیل کرده بود و تصمیم گرفت فقط آن بخش را به عنوان یک بازی کامل اصلاح کند.  برای تکمیل بازی، او با کیث هولمن برای نوشتن راهنمای زبان با الهام از راهنماهای رایانه‌ای مشابه آن زمان و با متیو برنز برای خلق داستانی ساده پیرامون بازی همکاری کرد. آنها از مفاهیم یک اینفوگرافیک *Mondo 2000* مبتنی بر مدهای فناوری سایبری برای نوشتن روایت طنزآمیز بازی و راهنما استفاده کردند. 

*TIS-100* در تاریخ ۱ ژوئن ۲۰۱۵ در Steam Early Access منتشر شد. بارت اظهار داشت که رویکردی مشابه *Infinifactory* را در Early Access اتخاذ کرده است و بازی‌ای تقریباً کامل ارائه داده است تا پیشنهادات و بهبودها و امکان اضافه کردن محتوای بیشتر را قبل از انتشار محصول نهایی دریافت کند. بارت تخمین زد که مرحله Early Access 1 تا 2 ماه طول بکشد.  نسخه نهایی در ۲۰ ژوئیه ۲۰۱۵ منتشر شد  یک پورت موبایل منتشر شده توسط Metaversal Studios با بیست مرحله با عنوان *TIS-100P* به طور انحصاری برای iPadOS در ۸ ژانویه ۲۰۱۶ منتشر شد. 

= پذیرش =
در مقاله خود با عنوان «آیا بازی‌های ویدیویی می‌توانند به شما برنامه‌نویسی یاد بدهند؟»، *Rock Paper Shotgun* فناوری بازی را «مرتبط» خواند و گفت: «اگر بتوانید از چالش سخت آن جان سالم به در ببرید، آماده کدنویسی هستید». 

= همچنین ببینید =

* *جنگ هسته‌ای* ، یک بازی برنامه‌نویسی با زبان اسمبلی
* ماشین اتصال ، یک خانواده ابررایانه واقعی با معماری مشابه
* ترانسپیوتر ، یک پردازنده مرکزی واقعی با معماری مشابه
* کنسول فانتزی ، گروهی از شبیه‌سازهای کنسول تخیلی با محدودیت‌های مشابه

## منابع

= پیوندهای خارجی =

* 

رده:مقاله‌های ایجادشده توسط ایجادگر
رده:بازی‌های ویدئویی ۲۰۱۵ (میلادی)
رده:زبان‌های اسمبلی
رده:بازی‌های ویدئویی دسترسی زودهنگام
رده:بازی‌های ویدئویی مستقل
رده:بازی‌های لینوکس
رده:بازی‌های اواس ده
رده:بازی‌های ویدئویی فکری
رده:بازی‌های ویدئویی تک‌نفره
رده:بازی‌های تولیدشده در ایالات متحده آمریکا
رده:بازی‌های ویندوز