Ок, как доделаю то что запланировал по мелочи, добавлю поддержку тапков :) Ну а так, чтобы это скомпилировать нужно библиотеки проекта кинуть в Libraries, TZXDuino_V1.0.ino переименовать в TZXDuino.ino
Вид для печати
Ок, как доделаю то что запланировал по мелочи, добавлю поддержку тапков :) Ну а так, чтобы это скомпилировать нужно библиотеки проекта кинуть в Libraries, TZXDuino_V1.0.ino переименовать в TZXDuino.ino
Собрал тестовый стенд
Вложение 59263
Долго не мог запустить, видимо у некоторых такая же проблема была с некоторыми картами.
Выходит, что у некоторых дешевых карт нет поддержки команды STOP при чтении сектора, поэтому чтение подвисало,
Исправил функцию чтения с карты, чтобы не использовалась данная команда и сразу все заработало.
ИСПРАВЛЕНИЯ:
1. Исправлена проблема с некоторыми картами не поддерживающими операцию останова приема данных.
2. Добавлена поддержка нажатой кнопки (т.е. пролистывание идет при нажатой кнопке, не нужно тыкать много раз).
--- Сделан коммит на гитхабе
3. Добавлено отображение кружочка :) если дисковод активен
--- Сделан коммит на гитхабе
4. Подумалось мне, что лучше убрать этот кружочек и сделать включение/отключение подсветки :)
--- Сделан коммит на гитхабе
5. Исправлен глюк с мигающим дисплеем в некоторых кривых приложениях, которые с большой частотой запускают/выключают мотор на реальных дисководах, сделал, чтобы не мигал :)
--- Сделан коммит на гитхабе
PS: проблему с неправильно отображающимся первым файлом пока что воспроизвести не удалось, сколько не пытался
PS2: было предложение отображать сектор, это бессмысленно, т.к. дискета крутится по кругу 300 оборотов и сектор меняется от 1 до 16, вы даже не успеете увидеть его номер :)
Нормально компилится, переименовывать не надо, библиотеки кидать в "arduino-1.8.1\libraries".
А я попробовал скомпилировать ZX_FDD_Emulator под Arduino Pro Mini на ATmega168 5V 16Mhz:
И ведь совсем чуть-чуть не хватило. А под код так и вообще 5КБ свободных осталось. Чего бы такого заоптимизировать? ;)Код:Скетч использует 9258 байт (64%) памяти устройства. Всего доступно 14336 байт.
Глобальные переменные используют 1052 байт (102%) динамической памяти, оставляя -28 байт для локальных переменных. Максимум: 1024 байт.
Можете уменьшить количество дорожек :)
или уровень вложенности каталогов.Цитата:
#define MAX_CYL 82 /// maximal cylinder supported by FDD. More cylinders - more memory used.
#define MAX_DIR_LEVEL 10 /// maximal subfolders support 15 MAX. The higher level the more memory used
Класс! Сделал #define MAX_DIR_LEVEL 5:
Да пофиг, главное влезла, побежал паять, отпишусь о результатах!Код:Скетч использует 9258 байт (64%) памяти устройства. Всего доступно 14336 байт.
Глобальные переменные используют 987 байт (96%) динамической памяти, оставляя 37 байт для локальных переменных. Максимум: 1024 байт.
Недостаточно памяти, программа может работать нестабильно.
процитирую
вот и у мня на Хрюшке все компилиЦЦа, акромя этого проекта. Значит ли это, что у меня руки неправильной кривизны?
На другом компе на 7-ке
Но все же жду от автораЦитата:
Нормально компилится, переименовывать не надо
Попаял-попаял, вроде как оно конечно должно, но я пока что столкнулся вообще с принципиальной неработоспособностью своих комплектующих. Дисплей тупо светит подсветкой, я на нём даже Hello World пока что получить не смог. :v2_dizzy_facepalm: Ковыряю, разбираюсь. Чистое колдунство. А ардуину я вообще через SinaProg шью. :v2_biggr:
Скажите, а .scl пока не получилось прикрутить?
Пока что нет, т.к. для SCL нужно больше памяти или что-то изобретать, т.к. там данные расположены со смещением из-за укороченного заголовка. Попробую конечно еще поколдовать, как время будет...
А подстроечник крутили? Может просто выкручен в 0?
Честно, еще не начинал разбираться, с tap и tzx еще не работал, так что сначала придется разбираться с форматами, так не охота столько времени на это тратить :) но, обещаю, что разберусь, как будет время.