modified: pinport.c
modified: pinport.h
-completing implementation of remaining shared_pinport opcodes
modified: ../../shared/shared_pinport.h
-few opcodes deleted because I decided they were stupid when got
around to implementing them. Set user up for errors and not
useful generally.
modified: source/logic.h
-adding IP and OP definitions to use on DDR registers
-ERROR codes denote what function errored out
modified: ../shared/shared_pinport.h
-changing some opcode names for clarity and lowercasing non-recommended ones
modified: source/pinport.c
-fix bug that recreated cur_AHL_addr and cur_AXL_addr
-create opcode with 8bit operand function
modified: firmware/source/pinport.c
modified: firmware/source/pinport.h
-creating shared_pinport.h which is effectively a dictionary for
pinport opcodes
-file gets copied to host and firmware source dirs when compilied.
-hardware macros had to be renamed to include underscore to
differentiate opcode name from hardware macro.
-pinport.c now is a nice clean switch between opcode name and
macro with all literal numbers removed.
-now don't have to manually track/update opcode numbers between
multiple locations.
modified: firmware/source/io.c
modified: firmware/source/main.c
-updates to add underscore pre-fix to hardware macros.
-created from firmware/source/pinport.c
-macros to create opcodes which will get sent as commands over USB
-they will then get interpreted by pinport.c in firmware.
modified: source/pinport.h
-adding some compatibility between boards.
-purple and green should work under final version commands.
-making some commands lower case which aren't recommended.
-defining SUCCESS & ERROR_CODES
new file: pinport.c
-Creation of file with giant switch to decode byte value into
macro call.
-software AXL and AHL clocking of for green boards.
modified: pinport.h
-removed #ifdef for signals, should only be based on board when
possible.
-created macro for AXL/AHL_CLK to call software function
deleted: macro.h
-don't want this old guy around any more...
-modified to caluclate ROM/RAM usage of atmega164a
new file: source/io.h
new file: source/logic.h
-created files
modified: source/io.c
modified: source/main.c
-created io_pullup going to make separate io inits based on cartridge inserted
-modifing for io.h
modified: source/pinport.h
-File mostly complete with all possible pin manipulations
Base line rom/ram usage.
usb read/write functions are enabled, but long transfers are not.
host support only for LED on/off.
2KB of 16KB (12.5%) of program memory are not available due to bootloader.
AVR Memory Usage
----------------
Device: atmega164a
Program: 1620 bytes (9.9% Full) 87.5% is MAX due to bootloader
(.text + .data + .bootloader)
Data: 45 bytes (4.4% Full)
(.data + .bss + .noinit)
-creation of io file
modified: main.c
-moving io setup to io.c
new file: pinport.h
-creation of pinport file, intended to be avr specific code from macro.h
-shared .h files used in both firmware and host app
modified: firmware/Makefile
modified: host/Makefile
-added shared dependency to copy shared files to source prior to
building
modified: host/source/usb_operations.h
modified: firmware/source/main.c
-removing usb commands (now in shared)
modified: host/include/dbg.h
-adding SUCCESS defintion
modified: host/source/inlprog.c
-calling write file if write arg sent
new file: host/source/write_operations.c
new file: host/source/write_operations.h
-creation of write operations files
-opens file and reads header
-some skeleton comments
-lots of work left to do here
new file: roms/nrom_v_test.nes
-adding NROM test rom file
- removing compile errors
- fixing request/command for off (was always sending on copy paste error)
modified: source/usb_operations.c
- Adding checks beyond VID/PID pair
- Now check Manufacturer, Product, and build version
- Give Warnings/Error if device is not supported
- Don't blindly accept and try to write to non-supported devices.
- Cleared up confusion on ENDPOINT direction.
-moved usb device operations into usb_operations module
new file: source/usb_operations.c
new file: source/usb_operations.h
-creation of usb_operations module
-currently handles libusb open/close and retrieving INL retro-prog
usb handle.
-moving returnvalue "rv" declaration/init earlier to ensure initization.
-adding notes to user if LIBUSB_ERROR_ACCESS as it's expected on linux.
modified: udev-rule-help/Readme.txt
-including expected libusb error if user doesn't have access.
host\include\dbg.h: reversing DEBUG logic.
host\source\inlprog.c: working through making code more robust with proper
error checking via "Zed's AWESOME debug macros" ;)
-basic fuctionality in place.
-currently only using setup packet for LED on/off with request field.
-Read and Write functions created but empty for now.
Makefile copied from the Makefile I came up with during Zed Shaw's LCTHW
inlretro.c basic usb functionality using libusb 1.0
-searches through usb devices and opens matching VID/PID
-sends vendor xfr command for LED ON/OFF
-closes out usb device prior to exit
-lots of messy comments as notes while learning libusb
updating usbdrv.h usbdrv.c and main.c so bootloader with const for PROGMEM entires
resolves compiling errors on new versions of avr-gcc.
Still have some warnings to resolve..
If going to use this version of bootloader should prob update V-USB driver code
Also renaming to bootloadHID-master as that's it's "name" when downloaded from:
https://github.com/ajd4096/bootloadHID
May be adding obdev's original bootloader as well so I can tinker with
both versions and make final choice later on.