# BasePC 2.0 ### [>>>Крутейший видеообзор<<<](https://www.youtube.com/watch?v=Alctdpfj5jI) Ðаиболее приближенный к реальноÑти ÑмулÑтор БÐÐ’Ðœ Ñделанный [по вот Ñтой книге](https://books.ifmo.ru/file/pdf/761.pdf) ОтличаетÑÑ Ð¾Ñ‚ других реализацией кол-вом полезных фич и близоÑтью к "наÑтоÑщей" БÐÐ’Ðœ, легковеÑноÑтью и портированноÑтью под вÑе платформы. ![img.png](full_preview.png) ## УÑтановка ### [Скачивать тут](https://github.com/JustAGod1/bevm/releases) Ðрхивы и образы Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ платформы находÑÑ‚ÑÑ Ð² [разделе релизов](https://github.com/JustAGod1/bevm/releases) ### Windows 1. Скачайте архив 2. РаÑпакуйте полноÑтью 3. Ð’ раÑпакованной папке запуÑтите БÐÐ’Ðœ ### MacOS 1. Скачайте образ 2. Откройте образ 3. ПеремеÑтите BasePC 2.0 в Applications #### Ð’ Ñлучае ошибки Ñ Ð½ÐµÐ´Ð¾Ñтатком привилегий Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка 1. Откройте терминал 2. Введите `cd /Applications`. Затем Enter 3. Введите `xattr -rd com.apple.quarantine "BasePC 2.0.app"`. Затем Enter. Ðто вÑе нужно потому что, Ñ Ð½Ðµ хочу платить Apple 99 bucks за Ñертификат. ### Linux 1. УÑтановите пакет sdl2 2. Скачайте бÑвм Ð´Ð»Ñ Ð»Ð¸Ð½ÑƒÐºÑа 3. ЗапуÑтите Уверен вам линукÑоидам больше объÑÑнений не требуетÑÑ. Ð”Ð»Ñ Ð°Ñ€Ñ‡ÐµÐ²Ð¾Ð´Ð¾Ð² @Iamnotagenius подготовил [aur package](https://aur.archlinux.org/packages/bevm/) ## Редактирование мнемоники Ð’ Ñтой реализации БÐÐ’Ðœ можно пиÑать не только хекÑом, но и мнемоникой напрÑмую. То еÑÑ‚ÑŒ текÑтом. ![img_1.png](asm_preview.png) ## Таблицы траÑировки Ðто уже клаÑÑика но тем не менее Ð½ÐµÐ»ÑŒÐ·Ñ Ð½Ðµ упомÑнуть. Ð’ Ñтом ÑмулÑторе БÐÐ’Ðœ конечно же еÑÑ‚ÑŒ возможноÑÑ‚ÑŒ автоматичеÑкого ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ† траÑÑировки. ![img.png](tracing_preview.png) ## Поддержка переменных ИмеетÑÑ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ° очень проÑтого ASM подобного Ñзыка. Ðапример: ```asm $pos 10 CLA $start BMI %then BR %start $pos 15 ISZ 2 $then BR %start ``` ЕÑли загрузить Ñто в памÑÑ‚ÑŒ ÐÐ’Ðœ получитÑÑ ![img_2.png](load_preview.png) Подробнее опиÑано во внутренней Ñправке БÐÐ’Ðœ. КÑтати... ## Ð’ÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ Ñправка Ð’Ñе понимают что Ñмотреть в методичку вÑем лень, потому в Ñтой БÐÐ’Ðœ еÑÑ‚ÑŒ вÑÑ‚Ñ€Ð¾ÐµÐ½Ð½Ð°Ñ Ñправка. Можно поÑмотреть на Ñправку по отдельной команде: ![img_1.png](command_highlight_preview.png) Или же на вÑе команды в целом: ![img_1.png](cheatsheet_preview.png) Ð’ окне Ñо Ñправкой еÑÑ‚ÑŒ еще пару отделов и в дополнение к тому практичеÑки вÑе компоненты БÐÐ’Ðœ риÑуют попап Ñ ÐºÑ€Ð°Ñ‚ÐºÐ¾Ð¹ информацией о них. ## Лог Ð’ нижней панели БÐÐ’Ðœ вы можете увидеть лог выполнÑемых командами дейÑтвий. ![img_1.png](log_preview.png) Считаю, очень удобно когда вам нужно понÑÑ‚ÑŒ, что проиÑходит в программе. ## СоÑтоÑние ÐÐ’Ðœ Ð’ Ñтой БÐÐ’Ðœ нет принципиально ничего неизменÑемого. Ð’Ñе флаги, которые работают в "каноничной" БÐÐ’Ðœ работают и в Ñтой. У каждого флага имеетÑÑ Ñвой Ñффект и подробное опиÑание. Кнопки отладки придерживаютÑÑ Ñ‚Ð¾Ð³Ð¾ же принципа, что и пульт отладки "каноничной" БÐÐ’Ðœ, но при Ñтом ÑохранÑÑŽÑ‚ Ñвою интуитивноÑÑ‚ÑŒ.