newRPL: Alpha demo 0.9 released [UPDATED 2017-10-25]
|
11-21-2017, 04:06 AM
Post: #237
|
|||
|
|||
RE: newRPL: Alpha demo 0.9 released [UPDATED 2017-10-25]
(11-21-2017 03:30 AM)The Shadow Wrote: Any new news, Claudio? I haven't had much time for coding the last couple weeks, so no new bug reports. I know, I went quiet for a while, here's what I've been up to: I decided to try and write a USB driver, which of course didn't work at all. This triggered an obsessive bug hunt that lasted a couple of weeks until I finally got it working this past weekend. Debugging USB is a painful and slow process. Each trial and error involves rebuilding the firmware, copying to SD card, flashing and testing. It also forces me to work only whenever I'm in a desktop setup, so opportunities to work on it are few. My 50g with newRPL is finally recognized well under Windows and Linux, I'm currently testing data transfer from the PC to the calc, once that works well I'm going to work on data from the calc to the PC. The driver I wrote is HID so it doesn't need any custom drivers on any operating system. USB comms will work different from the stock firmware. Upon connecting, the calculator continues to work normally, but will receive data in the background. When the calculator is idle in the stack, any data received will be (compiled if needed and) executed instantly, so you'll be able to control your calc remotely. A flag will allow you to disable remote execution if not wanted. It's something like the old Kermit Server mode, where you could send commands to the calc, except the calc is available to the user while receiving data. Programs will be able to disable this automatic service and wait for data themselves, so coders will have full control to write their own application specific data transfers. As far as commands, in my head there will be a USBON, USBOFF (in case you want to disable USB altogether, for example if you only want to get power from USB, but on second thought since it's all transparent there's no real need to turn it off), USBSEND/USBRECV to transfer arbitrary blocks of data, USBARCHIVE/USBRESTORE taking the place of SDARCHIVE/SDRESTORE on the 39gs/40gs. The PC simulator will be retrofitted with the ability to link to a calculator and send/receive commands or objects straight to the stack, sync directories, etc. In my wishlist is also using this USB mechanism to do firmware updates, independently of the bootloader. Lots of work to do, and until it all works together, there isn't much I can release. |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 21 Guest(s)