Is there any possible way to change Sonic's speed in Sonic 1? I'm trying to make a simple test hack in which Sonic being slow is the entire gimmick, but is this even possible (I'm using the July 2010 disassembly)? If it is, please respond.
How much assembly coding do you know? If you have no experience, perhaps check out MarkeyJesters' guide on how to code in assembly. If you are prepared to add/edit code, check out this page; it's a great reference for variables used by Sonic 1. Of particular note for your purposes is "Sonic's top speed", "Sonic's acceleration", and "Sonic's deceleration".
Let's think about this for a second, without ever touching a line of code, and assuming you know literally nothing about how to program. Sonic himself has to move, and has a natural limit to what his speed can be, right? Logically speaking, this would have to be implemented somewhere, meaning that Sonic's top speed would have a hard-coded value somewhere in said code. So that would mean you likewise could make that value higher or lower depending on what you wanted to do. Furthermore, the acceleration, top speed, and deceleration would most likely only be declared once for ease of use, and because it'd be unnecessary to do so, so you wouldn't need to change any other instance of the value. How to do so is another matter that would best be asked in the Basic Q&A topic, as Clownacy already posted. And since this question has already been answered well and beyond what was asked by Pacguy, I'm locking this topic.