Kalidomra / AdamNet-Drive-Emulator

Arduino Mega ColecoVision Adam Disk Drive Emulator
GNU General Public License v3.0
27 stars 6 forks source link

Add support for rotary encoder? #29

Closed plasticuser closed 1 year ago

plasticuser commented 4 years ago

Would it be possible to add support for a rotary encoder? This would allow quick and intuitive scrolling through the mountable images list far more quickly than pressing up and down buttons - especially when there are several tens or 100s of images. People intuitively know where most of their images are, and can quickly scroll to them - far faster than pressing a button 10s or 100s of times.

There are standard Arduino rotary encoders that would cheaply and elegantly fit this project.

I am interested in using the KY-040 or similar. Would you be interested in supporting this?

Kalidomra commented 4 years ago

I like the idea of having this as an option. However, I have no plans to add it. The existing buttons work fine and you don't need to press them 100's of times. You can hold them down.

plasticuser commented 4 years ago

This was just an idea that I thought would improve the user interface a little. Rotary encoders are a nice way to scroll through long lists. It was merely a suggestion to increase people's choices about how to interact with it. It goes with the other request of offering support for a different display type like TFT or OLED which has a much quicker response time, as 1602 displays have very variable update speeds depending on temperature and they blur horribly with fast changing data if they're cold.

All of these ideas have a common theme - Adam owners are getting older and so are the computers. I shouldn't have to pick up a box to mount an image, and I shouldn't have to reach over and press on a computer. Things like better displays, and remote controls, are all about increasing mounting options and how to interact with the ADE. They would need very small additions to the input routine adding just a few bytes and maybe a single library.

Given the SRAM limit is your main restraint, it might be fun to target a different device that costs the same, like the SAM38Xe (Due)?