version 0.37.1CFIXPALTURBO 16 feb 2021 (Alone Coder) -турбо-режим реагировал на 0xeffd bit 4, даже если он был замаскирован Turbo mode reacted to 0xeffd bit 4 even if masked version 0.37.1CFIXPAL 11 jun 2020 (Alone Coder) +при сохранении снапшота также сохраняется файл pal.pal с текущей палитрой в формате gg0rr0bb When saving a snapshot, a file pal.pal is created with the current palette in gg0rr0bb format version 0.37.1CFIX 2 nov 2015 (Alone Coder) +добавлен ключ -sPPAAAA filename для постоянной записи куска памяти и выхода по di:halt (PP=номер страницы ОЗУ, AAAA=адрес внутри страницы, длина лежит в [AAAA](младший байт) и [AAAA+1](старший байт), фактические данные начиная с [AAAA+2]). Added new key in commandline: "-sPPAAAA filename" periodically saves a piece of code and quits emulator by DI:HALT (PP=RAM page, AAAA=shift in page, size in [AAAA](LSB) and [AAAA+1](MSB), actual data start at [AAAA+2]). version 0.37.1Cfix 16 sep 2015 (Alone Coder) - numlock crash fix - di:halt fix - scorpion nmi fix - debugger menu update fix - max sector size fix - startcrc fix for DOBROTA fake utility (AFRODITA.TRD) + ULA presets for ATM Turbo and Profi * turbo off by default + scorpion turbo (not shown in Shadow Monitor) version 0.37.1C 18 aug 2015 (Alone Coder) -убраны падения при загрузке SNA (модель памяти не меняется - меняйте вручную) и потере синхронизации звука. Removed sudden exits in SNA loading (memory model doesn't change, it's up to user) and sound de-sync. +добавлен ключ -c filename для постоянной загрузки куска памяти (структура файла: +0(1 байт): страница, +1(2 байта): смещение в странице (<0x4000, иначе не грузить), +3(N байт) данные). Added new key in commandline: "-c filename" periodically loads a piece of code (file structure: +0(1 byte): memory page, +1(2 bytes): shift in page (<0x4000, or else don't load), +3(N bytes) data). version 0.37.1fix2 24 jun 2015 (Alone Coder) +добавлена настройка и слайдер относительной громкости чипов TurboSound (только AY, не FM): TurboSlider. New setting and slider for relative volumes of chips in TurboSound (just AY, FM is not touched): TurboSlider. +glukatm.rom fixed version 0.37.1fix 14 feb 2014 (Alone Coder) -в 6912 не работал 8-й цвет палитры ATM Turbo. 8th color in ATM Turbo palette didn't work in 6912 mode version 0.37.1 14 sep 2008+fix (Alone Coder) -в нетурбо-режиме на пентагоне насильно ставилось 71680 тактов. Pentagon noturbo was 71680 t-states no matter what you wrote in settings +клавиатура компьютера Орель БК-08 (Sergey V. Korop). New keyboard for Орель БК-08 *немного пофикшенная версия Глюка (не работал PC128, доктор теперь по reset+G, потом цифра - номер диска, но нужно инициализировать TR-DOS). Mr Gluk Reset Service fixed. +новая палитра от pulsar. New palette from pulsar version 0.37.0 8 feb 2008 (Alone Coder) + General Sound 2MB (Dmitry Demyanenko) - под XP не работало чтение таблицы партиций с CD (выдавало длину 65535), теперь насильно формируется длина 2048. CD partition table under XP returned wrong length of 65535 (fixed to 2048). + NMI в области ПЗУ игнорируются (иначе не работает теневой монитор). NMI is ignored when ROM area is executed (Scorpion shadow monitor wants this). + от турбо-режима зависит число тактов в команде (t=(t+1)>>1), теперь исключены выпадания при частом переключении режима. Turbo mode reduces number of t-stated in every command (t=(t+1)>>1), and shutdowns because of switching turbo frequently are now fixed. + программное переключение турбо-режима на ATM Turbo 7.10. Software turbo mode switching in ATM Turbo 7.10 * соответственно, по умолчанию в кадре снова 71680 тактов, однако включен турбо-режим (выключение - клавишей W в Mr Gluk Reset Service). By default 71680 t-states are in frame again, with turbo on though (switch it off with W key in Mr Gluk Reset Service). + в Mr Gluk Service (6.4) исправлено выключение турбо-режима при выходе в бейсик и др. Mr Gluk Reset Service (6.4) fixed to correctly set turbo mode when in quits to BASIC etc. version 0.36.7 18 nov 2007 (Alone Coder) ! Digital Studio не работало на TurboSound, т.к. по сбросу включался 0-й AY (KYV). Digital Studio did not work with TurboSound enabled because 0th AY was on - заштопал ещё две дыры в показе меток, теперь вроде не вываливается (Elfh). Two more holes fixed in show labels in debugger, so it does not crash any more - эмулятор не компилировался на более новых компиляторах (из-за локальных меток цикла и нетипизированных const и static) (DeathSoft). Emulator sources were incompatible with modern compilers (local loop labels and omission of explicit types for const and static labels) version 0.36.6 17 oct 2007 (Alone Coder) + окно эмулятора возникает в центре рабочего стола (из расчёта размера double). Emulator window appears in the middle of the screen (for "double" size of emulator screen) ! убрано выпадение при показе длинных меток в отладчике. Fixed crash while showing long labels in debugger + неполная дешифрация кэша (для MODPLAYi) (scor). Cache access is decoded by 1 address line (for MODPLAYi) ! определялся TFM, когда есть только TS. TFM was detected by Spectrum software when only TS was present ! звуковой буфер не чистился при вызове хелпа. Sound buffer was not cleared in help window + настройка способа работы колеса мыши в ini. Mouse wheel mode setup in ini * в ini исправлены секции ROM и по умолчанию поставлен DSPrimary=0. ROM sections in ini fixed, and DSPrimary=0 by default version 0.36.5 29 jul 2007 (Alone Coder) ! исправлен глюк прошлой версии с вводом числа тактов в кадре. Fixed framesize bug of previous version ! диалог POKE ругался на что угодно. POKE did not work ! при сохранении trd под другим именем обновляется имя в титуле. When trd disk is saved under another name, that name is shown in emulator window title ! LVD: в z80asm исправлены операции ALU a,r. Fixed ALU a,r operations in assembler/disassembler ! Deathsoft: в modem неправильно ставилось число бит в байте. Fixed wrong number of bits in byte for modem ! PSB: новая версия ПЗУ General Sound. New version of General Sound ROM version 0.36.4 14 jun 2007 (Alone Coder) ! шумопонижающий фильтр можно выключить в меню и в ini. Lowpass filter may be triggered in menu and in .ini-file ! в eff7 (bit 4) вместо Gigascreen работает выключение турбо-режима (ставится 71680 тактов) - в соответствии с реальной машиной (кнопка W в Mr Gluk Reset Service). Звук при каждом переключении переинициализируется. Gigascreen mode (eff7 bit 4) changed to turbo mode off, as in real Pentagon 1024SL 2.x (key W in Mr Gluk Reset Service). Turbo off sets 71680 ticks per frame. The sound is re- initialized when this bit switched ! в eff7 (bit 3) вместо Read only cache работает включение 0-го банка ОЗУ в область 0000-3fff - в соответствии с реальной машиной. Read only cache (eff7 bit 3) changed to "RAM0 in 0000-3fff" mode, as in real Pentagon 1024SL 2.x ! немного исправлена громкость FM. FM volume slightly fixed ! PSB: половина правого канала GS слышна в левом и наоборот. Half of GS right channel is mixed to the left channel and vice versa ! PSB: исправление щелчков громкости в GS. Reduced volume clicks in GS version 0.36.3 28 apr 2007 (Alone Coder) ! исправлена палитра. Palette is fixed ! Z80: в операциях записи в память сама запись (wm()) делается после увеличения счётчика тактов (cpu->t+=) (если два байта, то 2 раза cpu->t+=). Важно для мультиколоров. Z80: memory write procedure (wm()) in memory write operations is called after increasing the tick counter (cpu->t+=) (in two-byte operations cpu->t+= is made twice). Important for multicolors ! исправлена русская буква "м" в anti-text64 - показывалась как "m". Anti-text64: fixed Russian letter "м" ! TurboSound FM: FM часть заглушена в 4 раза в соответствии с реальным устройством. TurboSound FM: FM is 4 times more quiet as in real device ! поставлен шумопонижающий фильтр (нужно для beeper'а). Кто знает как - помогите убрать щелчки на границах 20ms кадров! Если просто заполнять первые 2-4 отсчёта кадра предыдущим значением, то щелчки на бипере исчезают, но появляются щелчки на AY... Noise reduction filter added (for beeper music). Please help to remove that clicks in boundaries of 20ms frames! If I simply fill the first 2 to 4 samples of a frame with preceding value, then the beeper clicks are disappearing, but AY clicks appear... ! звуковой буфер не чистился в меню Save sound. Sound buffer was not cleared in Save sound menu version 0.36.2 28 mar 2007 (Alone Coder) ! клавиши в max speed режиме опрашиваются каждый фрейм: temp.inputblock = 0;//temp.vidblock; а то не всегда реагировало на NumLock в max speed режиме. Keys in max speed mode are scanned every frame, for better responsibility of NumLock in max speed mode. ! звуковой буфер не чистился (sound_stop()) в меню Save disk (main_save(), correct_exit()). Sound buffer was not cleared in Save disk menu ! вываливался при показе меток длиной 10 (sb Elfh). Emulator crashed when tried to display 10 char long labels * 0 не показывается как метка. 0 is no more shown as a label ! что-то исправлено в интерфейсе с BASS.DLL (fb molodcov_alex): if (!BASS_ChannelPlay(hmod, FALSE)) reportError("BASS_ChannelPlay() [music]"); Something fixed in BASS.DLL interface ! порт #7ffd на Скорпионе дешифровался неправильно (теперь с учётом A12, как #1ffd) - не работала листалка ACNews. Port #7ffd in Scorpion mode was deciphered without A12 - ACNews lister failed to work version 0.36.1 10 mar 2007 (Alone Coder) ! буфер на 256 значений YM2203 убран - мешает цифровому звуку через YM2203. Buffer for 256 YM2203 samples is removed - it hampered the digital sound via YM2203 + ввод из клипборда теперь поддерживает и русские символы (кроме двух: заглавная Ё понимается как Е, заглавный Ъ - как апостроф). Paste from clipboard understands Cyrillic letters * убрано окошко, извещающее об изменении файла user.l (sb Elfh). Messagebox "unreal discovered changes in user labels" is removed * дополнен хелп (обязательно посмотрите раздел "несовместимость"!). More info in help (please look "bugs and incompatibilities") * дополнен комплект файлов. File set is filled up version 0.36b 28 feb 2007 (Alone Coder) + поддержка YM2203 (TurboSound FM) интегрирована Dexus'ом с изменениями Alone Coder'а. Теперь исправленная эмуляция (TurboFM Revision C). YM2203 support (TurboSound FM) was integrated by Dexus with Alone Coder's changes. Fixed emulation now (TurboFM Revision C) * исходники теперь компилируются под MSVC6 (было MSVC7). Sources are now compiled by MSVC6 (was MSVC7) - в связи с этим выброшены фильтры AdvMAME, FrameResampler. Because of that the filters AdvMAME and FrameResampler are removed ! цвет на точку по EFF7 bit0, мультиколор перенесён на bit5. Colour-per-pixel mode is set by EFF7 bit0, and hardware multicolour mode is moved to bit5 ! исправлена загрузка 48k снапшотов, если до этого был установлен режим Pentagon 1024k: вместо 0-й ставилась 32-я банка памяти. Fixed loading of 48k snapshots, if Pentagon 1024k mode was before: 32nd bank was set instead of 0th ! сброс в 48k на Pentagon 1024k включал 32-ю банку. Reset to 48k was setting 32nd bank on Pentagon 1024k - убита защита от выгрузки sna в режимах >128k, теперь можно отгружаться в Walker'е. SNA saving protection in >128k modes is now removed, so Walker may be saved ! максимальная длина дорожки увеличена до 7000 байт - теперь работает игра "Шибениця" (gallows.td0). Если какая-то программа перестала работать, СООБЩАЙТЕ! Maximum track length is increased to 7000 bytes, and Gallows game works now. PLEASE REPORT if some program ceases to work! + русская версия хелпа. Russian version of help + название последнего загруженного диска выводится в заголовке окна эмулятора. A name of last loaded disk is shown in a title of emulator window ! вываливалось при обращении к IDE-устройству, если одно из IDE-устройств не было настроено. Crashed while addressing IDE device if one of IDE devices was not set ! CD-ROM не работал под Windows 9x, теперь работает. Сделан обход глюка, который возникает вот здесь, по непонятной мне причине: CD-ROM did not work in Windows 9x, it works now. Walkaround of bug, that appears here, was made: int ATAPI_PASSER::SEND_ASPI_CMD(void *buf, int buf_sz) { SRB_ExecSCSICmd SRB = { 0 }; SRB.SRB_Cmd = SC_EXEC_SCSI_CMD; SRB.SRB_HaId = (unsigned char)dev->adapterid; SRB.SRB_Flags = SRB_DIR_IN | SRB_EVENT_NOTIFY | SRB_ENABLE_RESIDUAL_COUNT; SRB.SRB_Target = (unsigned char)dev->targetid; SRB.SRB_BufPointer = (unsigned char*)buf; SRB.SRB_BufLen = buf_sz; SRB.SRB_SenseLen = sizeof(SRB.SenseArea); SRB.SRB_CDBLen = ATAPI_CDB_SIZE; SRB.SRB_PostProc = hASPICompletionEvent; memcpy(SRB.CDBByte, &cdb, ATAPI_CDB_SIZE); /* DWORD ASPIStatus = */ _SendASPI32Command(&SRB); passed_length = SRB.SRB_BufLen; if (SRB.SRB_Status == SS_PENDING) { DWORD ASPIEventStatus = WaitForSingleObject(hASPICompletionEvent, 10000); // timeout 10sec if (ASPIEventStatus == WAIT_OBJECT_0) ResetEvent(hASPICompletionEvent); } if (senselen = SRB.SRB_SenseLen) memcpy(sense, SRB.SenseArea, senselen); if (temp.win9x) senselen = 0; //Alone Coder //makes possible to read one CD sector in win9x if ((temp.win9x)&&(passed_length >= 0xffff)) passed_length = 2048; //Alone Coder //was >=0xffff in win9x //makes possible to work in win9x (HDDoct, WDC, Time Gal)