Commit Graph

49 Commits

Author SHA1 Message Date
paul eeepc 0af7bb3b16 modified: logic.h
modified:   pinport.c
	-started working on 16bit operand function
2016-11-24 05:33:02 -06:00
paul eeepc c984f15f01 modified: source/pinport.h
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
2016-11-24 03:06:34 -06:00
paul eeepc a6a6369226 untested main.hex commit for logging rom/ram use
pinport has opcode only and opcode with 8bit operand complete:
14% used of 87.5% available

avr-size -C --mcu=atmega164a main.elf
AVR Memory Usage
----------------
Device: atmega164a

Program:    2300 bytes (14.0% Full)
(.text + .data + .bootloader)

Data:         45 bytes (4.4% Full)
(.data + .bss + .noinit)
2016-11-24 03:04:00 -06:00
Paul Molloy afb5f6f158 modified: shared_pinport.h
-creating new opcodes with operatnds and return values
	still yet to be implemented elsewhere
2016-11-23 22:53:23 -06:00
Paul Molloy 31678bacfe renamed: host/source/pinport.h -> shared/shared_pinport.h
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.
2016-11-23 18:12:50 -06:00
Paul Molloy 27cca679d5 new file: pinport.h
-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.
2016-11-23 03:05:29 -06:00
Paul Molloy aca6bb8960 modified: source/pinport.c
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.
2016-11-23 02:23:17 -06:00
Paul Molloy b1ba1c4432 modified: logic.h
-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...
2016-11-23 01:19:14 -06:00
paul eeepc b43b3c0756 modified: Makefile
-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
2016-11-22 20:27:52 -06:00
paul eeepc f973d990cd Initial add of firmware hex.
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)
2016-11-22 20:20:30 -06:00
paul eeepc 70e700c7e8 Prepending 'shared' to files in shared folder to make more clear that these files should only be edited from the shared folder as they're copied into source folder at compile time. Any edits from source folder will get stopped, and committing shared files outside of shared folder is not desired. 2016-11-22 00:52:06 -06:00
Paul Molloy ab52b30d8d lowercasing soldermask color denotations for signals. 2016-11-22 00:30:03 -06:00
Paul Molloy 42e8339600 Updating pinport.h with PCB version history and more i/o definitions and
macros
2016-11-22 00:23:22 -06:00
paul eeepc 5620b34a9e new file: io.c
-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
2016-11-21 17:54:29 -06:00
Paul Molloy b8be4b768a new file: shared/usb_commands.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
2016-11-20 23:57:09 -06:00
Paul Molloy 6a370d3893 Moving source code to source folder
Modifing Makefile to support
2016-11-20 20:11:05 -06:00
paul eeepc cfffe554be modified: source/inlprog.c
-introducing getopt to obtain commandline args
modified:   source/usb_operations.c
	-moving USB defn comments in from main
2016-11-20 15:43:11 -06:00
paul eeepc 4cbeff1ecf modified: source/inlprog.c
- 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.
2016-11-19 23:58:47 -06:00
Paul Molloy 49c9876770 modified: source/inlprog.c
modified:   source/usb_operations.c
modified:   source/usb_operations.h
	-moving usb transfer operation to usb_operations
2016-11-19 21:32:54 -06:00
Paul Molloy 782ed343f7 modified: source/inlprog.c
-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.
2016-11-19 19:10:13 -06:00
Paul Molloy 3c09f388ab new file: host/inlretro.exe
initial commit of windows executable.
	turning LED on and off is the only functionality present.
2016-11-19 17:59:16 -06:00
paul eeepc 37c79429ea modified: source/inlprog.c
-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.
2016-11-19 17:38:12 -06:00
Paul Molloy b1e60a35df host\Makefile: fixing make debug, Zed's logic seems backwards to me.
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" ;)
2016-11-19 16:51:50 -06:00
paul eeepc c7f01a4429 Initial commit for firmware main.c
-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.
2016-11-19 01:50:26 -06:00
paul eeepc ad1037b694 First commit for Makefile and main inlretro program.
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
2016-11-19 01:20:20 -06:00
paul eeepc 65e38e8e77 Modifing firmware makefile to work with INL retro-prog 2016-11-18 23:46:02 -06:00
paul eeepc cd0fc116da Adding avr makefile for firmware
As downloaded from V-USB example custom-class device
2016-11-18 22:32:18 -06:00
paul eeepc c4bbfbcd60 Updating fuses. Had issues when erasing/programming NES boards
JTAG being enabled (default setting) caused problems.
Switched back to disabled as it's not intended to be used anyway.
2016-11-18 21:32:21 -06:00
paul eeepc ffe4634210 Initial commit for:
firmware/macro.h
	host/include
	host/libusb-1.0.dll
	host/winlib
2016-11-18 03:15:02 -06:00
paul eeepc 998a9ccd1a adding notes about bootloaderHID fork in readme 2016-11-18 03:05:14 -06:00
paul eeepc 4027d3854a Adding HIDBootFlash windows GUI application by Mario Steiner:
http://vusb.wikidot.com/project:hidbootflash
2016-11-18 03:01:51 -06:00
paul eeepc 5024dcc2c5 updating main Readme.txt with build notes. 2016-11-18 03:00:56 -06:00
paul eeepc 09ea0d1fd5 removing object/bin files as they don't belong.
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
2016-11-18 02:57:10 -06:00
paul eeepc d47071779c Adding bootloaderHID.2012-12-08 folder as downloaded from:
https://www.obdev.at/products/vusb/bootloadhid.html
commandline folder excluded as it's in it's own separate dir
	INL-retro-progdump/bootloader/commandline
commit includes files unchanged as downloaded.
2016-11-18 02:45:38 -06:00
paul eeepc d820f6ea0a Creating udev-rule-help folder with readme and example rule file.
This gives default user write permission to INL retro-prog on unix systems.
2016-11-18 02:23:04 -06:00
paul eeepc 315ce9c083 Readme.txt adding more build notes mostly for linux.
bootloader Makefile: correcting bootloader lock fuses.
firmware/usbdrv/usbconfig.h making small note about file origin.
2016-11-18 00:35:10 -06:00
paul eeepc 3b0a7a4dde deleting libusb-compat as it wasn't needed to build bootloaderHID host app.
Just needed a simple sudo apt-get install libusb-dev to build properly.
2016-11-18 00:28:56 -06:00
paul eeepc 1fb967726a moving all bootloader folders into a base bootloader directory.
moving bootloader host commandline dir down to base bootloader dir.
adding libusb-compat-0.1.5 in attempt to build bootloader host app on linux
2016-11-17 23:39:55 -06:00
Paul Molloy 4b8c80876c moving bootloadHID out of firmware folder as it doesn't make sense there.
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.
2016-11-17 22:28:43 -06:00
paul eeepc 965979025c adding main readme with build instructions 2016-11-12 00:05:12 -06:00
paul eeepc e8e5bbfffc removing double .txt from Readme 2016-11-12 00:04:11 -06:00
Paul Molloy 6879b4239b Creating hardware folder with datasheets and schematic. 2016-11-11 21:21:23 -06:00
Paul Molloy 60eb00bec2 commiting built bootloader files 2016-11-11 21:20:03 -06:00
Paul Molloy 38e51a91c5 bootloadHID/firmware/Makefile modified to atmega164a
bootloadHID/firmware/bootloader.h modified to use BL/RUN switch to detect
bootload mode.
2016-11-11 21:17:02 -06:00
Paul Molloy 1be25c4434 rename bootloadHID-master dir to bootloadHID 2016-11-11 21:16:15 -06:00
Paul Molloy 3538801e8f adding note to V-USB usbdrv Readme.txt to include download location. 2016-11-11 14:33:12 -06:00
Paul Molloy f0c3fb5ad6 Adding bootloadHID as downloaded from:
https://github.com/ajd4096/bootloadHID
2016-11-11 14:31:00 -06:00
Paul Molloy 9054a41137 creation of usbconfig.h
Set POWER to 300mA, while typically less than 100mA it depends on
		cartridge inserted and number of cartridges.
	Set impementations of read and write functions to true.
	Set device version to v2.0 for this rebuild of INL Retro-Prog
	Set vendor and device name InfiniteNesLives.com INL Retro-Prog
2016-11-11 13:53:44 -06:00
Paul Molloy 93be432c14 adding usbdrv directory as downloaded from:
https://www.obdev.at/products/vusb/download.html

no changes made, as-is released from obdev.
2016-11-11 13:28:54 -06:00