Commit graph

250 commits

Author SHA1 Message Date
penfold42
d08e5e781a Move hightlight to last row 2018-08-07 19:54:57 +10:00
penfold42
680a4a5b03 dont try to insert ".." 2018-08-07 19:46:27 +10:00
penfold42
3152d4efd5 Browser: can <Insert> a directory - all d64 in it are loaded into caddy 2018-08-07 18:57:21 +10:00
penfold42
93985e46c0 PopDir now hightlights the folder you were in 2018-08-05 23:51:24 +10:00
penfold42
a7cf8107d2 removed keyboard.h from filebrowser
remove len>0 check from FileBrowser::UpdateInputFolders()
removed NumberKeys table
2018-08-05 21:22:21 +10:00
penfold42
c42f4d3643 move button rom and device code to inputmappings
remove a temp buffer
add defines for button numbers
2018-08-05 20:20:48 +10:00
penfold42
807cee02d2 InputMapping: merge letters and numbers 2018-08-05 18:26:33 +10:00
Stephen White
4ee11949fe
Merge pull request #61 from penfold42/buttonsfix
Browser: bugfix out by 1 in rom and device change buttons
2018-08-05 17:13:12 +10:00
penfold42
f0f58879cf Browser: bugfix out by 1 in rmo and device change buttons 2018-08-05 16:12:28 +10:00
Stephen White
52b4658db3 Incremented build version number. 2018-08-05 16:11:40 +10:00
Stephen White
2819392170
Merge pull request #60 from penfold42/i2cdelta
Oled display optimisations and small things
2018-08-04 17:16:53 +10:00
Stephen White
4adbe3f560 Fixed bug where the drive could incorrectly write to the disk just after a reset. 2018-08-04 17:15:11 +10:00
penfold42
457293c091 IEC graph: vertical black line at update position 2018-08-03 23:18:44 +10:00
penfold42
48eaa18163 re-init display at emulation exit 2018-08-03 22:55:32 +10:00
penfold42
52a74a6f5c Browse: Some directories werent show as directories. fixed 2018-08-03 22:37:39 +10:00
penfold42
550677cc93 OLED Emulator - dont highlight entire row 2018-08-03 16:46:14 +10:00
penfold42
98961a9421 LCtrl+LAlt+Delete = reboot 2018-08-03 15:39:48 +10:00
penfold42
c55c5169dd OLED dont highlight entire row 2018-08-03 15:39:25 +10:00
penfold42
94040fa5c7 Optimise OLED display updates 2018-08-03 15:38:07 +10:00
Stephen White
bae47c0157
Merge pull request #59 from penfold42/a-z
In browse, pressing a-z,0-9 jumps to the next entry with matching 1st letter
2018-08-02 12:22:24 +10:00
penfold42
016b9ce285 Browse: can use 0-9 like a-z 2018-08-01 21:42:17 +10:00
penfold42
c080a8cb0c Browse mode - MUST use F1..F11 for rom and device ID changes
numbers have been removed
2018-08-01 21:24:33 +10:00
penfold42
313ad5a978 Fix caddy column width... 6?? 2018-08-01 18:38:40 +10:00
penfold42
792c259714 Browse: Home and End move to 1st and last entry 2018-08-01 17:57:01 +10:00
penfold42
a6e6a01b26 Cleanup deviceID change code 2018-08-01 14:57:11 +10:00
penfold42
b3cdf92238 Oops... a-z code was in BrowsableListView::CheckNavigation.
With 2 screens it was running ttwwiiccee
Moved to BrowsableList::CheckNavigation
2018-08-01 00:53:31 +10:00
penfold42
df58673e65 pressing a-z will jump to the next list entry starting with that letter 2018-08-01 00:43:52 +10:00
penfold42
8fe97363e7 Moved Number key checking code to inputmapping 2018-07-31 18:38:24 +10:00
penfold42
b809e3e70b ROM and deviceID cleanups
start implementing a-z
2018-07-31 09:41:50 +10:00
penfold42
62216afe2a In browser on oled, add '<' for readonly files
Also:
- fix potential out by error/buffer overflow
- code formatting cleanup
- remove superfluous *.d64 filename check
2018-07-30 22:41:05 +10:00
penfold42
5f723f4139 Merge branch 'romname' into cleanup 2018-07-30 22:30:43 +10:00
penfold42
2f5914ec54 Merge branch 'master' into cleanup 2018-07-30 22:28:37 +10:00
penfold42
2afc426a7e Merge branch 'master' into cleanup 2018-07-30 22:25:40 +10:00
penfold42
0ddf2a6e0a In browser on oled, add '<' for readonly files
fix potential out by error/buffer overflow
2018-07-30 22:24:07 +10:00
penfold42
4469165e8a Add ' R' to readonly file in filebrowser oled display 2018-07-30 20:04:54 +10:00
penfold42
d5ad31b37b Merge branch 'showWP' into romname 2018-07-30 17:43:02 +10:00
penfold42
0cba9ca8f7 Display 'R' on oled for readonly write protected images 2018-07-30 17:41:52 +10:00
penfold42
ba66f2f929 overwrite longer rom names on screen 2018-07-30 10:20:52 +10:00
Stephen White
d26147d93c Incremented version number. 2018-07-29 17:29:29 +10:00
penfold42
209d73469c Merge branch 'master' into cleanup 2018-07-29 17:26:08 +10:00
Stephen White
dc1b700c8e Fixed myth_s1[system_3_1989](radwar)(pal) loading issue. 2018-07-29 17:15:29 +10:00
Stephen White
ef7dfb1907 The AutoMountImage can now handle .LST files. 2018-07-29 16:47:32 +10:00
Stephen White
09cfc4ec86 Whilst in browse mode pressing Alt-W toggles write protection on a disk image. 2018-07-29 15:55:46 +10:00
Stephen White
5491711446
Merge pull request #53 from penfold42/alt-a
Alt-a to re load AutoMountImage
2018-07-29 15:00:06 +10:00
Stephen White
2b142c3e85
Merge pull request #50 from penfold42/128x32fix
Fix for 128x32 displays during emulation
2018-07-29 14:58:40 +10:00
Stephen White
5ac2fe8c45 Buttons in browse mode can change the selected ROM
Holding down the first button and pressing one of the other buttons will select different ROMs (if they have been specified in the options.txt file)
2018-07-29 14:22:14 +10:00
penfold42
f807a9cdc0 Alt-a will autoload image during emulation 2018-07-29 00:35:17 +10:00
penfold42
94f579fc08 Alt-A now works from any folder 2018-07-27 23:56:42 +10:00
penfold42
d15641e57f Alt-A from browser load the automountimage 2018-07-27 23:43:49 +10:00
penfold42
980712cfda Fix for 128x32 displays during emulation
Clean up redundant if (screenLCD)
clean up to support variable LCD font height in future
2018-07-27 12:08:16 +10:00
penfold42
ddfcdbe50b Merge branch 'master' into cleanup 2018-07-26 22:54:05 +10:00
penfold42
2f023ab756 Compiler warnings
width and height to PlotRawImage
2018-07-26 14:57:57 +10:00
penfold42
f0ee85d022 implement height and width 2018-07-26 13:28:37 +10:00
penfold42
78e20ae4bb swap pages for SSD1306 128x32 displays 2018-07-26 12:19:35 +10:00
penfold42
ee175ec1fd LCD_1306_128x32 now sets com pins correctly
clean up stb compiler warning
2018-07-26 11:34:59 +10:00
penfold42
5f8b173155 LCD type is now an enum 2018-07-26 11:06:21 +10:00
penfold42
ea071f0b46 code cleanup 2018-07-23 09:06:11 +10:00
Stephen White
5fda5024f7 Incremented build version. 2018-07-22 18:52:35 +10:00
Stephen White
9cdc0da63b Button 5 can be used to change device ID. 2018-07-22 18:47:03 +10:00
Stephen White
70fddc97c5 Button 5 can be used to change device ID.
Whilst in browse mode, holding button 5 (ie Insert) and pressing one of the other buttons will change the device ID. Button 1 = 8, 2 = 9, 3 = 10 and 4 = 11.
2018-07-22 18:43:08 +10:00
Stephen White
86131addf0 Merge branch 'master' of https://github.com/pi1541/Pi1541 2018-07-22 15:21:26 +10:00
Stephen White
77dec20347 Fixed compatability problem with CaliforniaGames
CaliforniaGames does not like being started with the heads directly over track 18.0.
2018-07-22 15:19:58 +10:00
penfold42
1039cca757 Merge branch 'deviceID' into autonewdisk
Conflicts:
	src/main.cpp
2018-07-21 13:23:37 +10:00
penfold42
709809281f Can now change device ID in browse mode with keyboard 8,9,0,- and F8..F11
Maximum rom images is now 7 (down from 8)
2018-07-21 13:07:14 +10:00
penfold42
b041e61c26 Alt N to create new D64 image 2018-07-20 14:24:54 +10:00
penfold42
d8135fbf1e now automounts the newly created image 2018-07-20 14:10:38 +10:00
penfold42
876f417edd auto generated filename can be specified in options.txt with:
AutoBaseName = autoname
2018-07-20 12:30:20 +10:00
penfold42
1142e7ff45 filenames now get autogenerated 2018-07-20 10:13:32 +10:00
penfold42
53de164fbe Press N to crete a new .d64 image
Still need to implement finding the highest existing numbered filename
2018-07-19 23:49:08 +10:00
penfold42
9d10bcb3ef Scratch and New now refresh the browser view
Using the keyboard to exit emulation no longer CD /
2018-07-19 18:28:56 +10:00
penfold42
23a2acf510 separate CreateD64 into separate function 2018-07-19 12:48:22 +10:00
penfold42
8c76614858 Fix compiler warning 2018-07-17 20:04:09 +10:00
penfold42
efe0f0bd6d fix contrast setting for sh1106 2018-07-17 19:56:01 +10:00
penfold42
97eb27bf7a Merge branch 'master' of https://github.com/pi1541/Pi1541 into i2cdetect 2018-07-17 19:53:19 +10:00
penfold42
c223b7aa57 i2c scanning is now optional: i2cScan = 1
prints the 7 bit addresses in decimal
2018-07-17 18:25:15 +10:00
penfold42
1ed6fd45cd Inital support for I2C bus scanning
- needs to be configurable
- needs to NOT trash the i2c bus when finished
2018-07-17 14:58:26 +10:00
penfold42
ca2aa5e09f Code cleanups 2018-07-17 09:37:53 +10:00
penfold42
4a1c56df41 s/Plottext/PlotText/g 2018-07-16 23:15:46 +10:00
penfold42
91ead26b2b SH1106 support now works 2018-07-16 22:46:53 +10:00
penfold42
e34274c01e Move to page mode to support sh1106 2018-07-16 21:11:55 +10:00
Stephen White
30f1d4747e Fixed crash bug when using without an OLED LCD 2018-07-16 19:40:42 +10:00
Stephen White
9f0e610663 Incremented version number. 2018-07-15 19:18:58 +10:00
Stephen White
3346ef6cf5 Added horizontal scrolling of long filenames. 2018-07-15 18:46:49 +10:00
penfold42
c6c79d9c81 Escape will now exit an automounted image without re-autoloading it 2018-07-13 18:04:37 +10:00
Stephen White
2bc501dd85 Added low level perfromance metrics.
To see the output.
Add  -DDEBUG to CFLAGS in Makefile.rules
Hook up a terminal to the PI's serial port (pins 8 and 10)
115200 Baud
8 Data bits
1 Stop bit
No Parity
2018-07-11 21:09:21 +10:00
penfold42
12eeeea575 Separate oled hardware init routine from open
add LCD ClearInit which also re-inits the hardware

workaround for display corruption on startup
2018-07-06 23:35:17 +10:00
penfold42
0bcd9de494 ssd1306 code cleanup
Added U(202) HARD reset - reboots pi
2018-07-04 16:39:59 +10:00
penfold42
02f19df0cf moved ssd1306 logic to options.cpp 2018-07-04 12:25:47 +10:00
penfold42
b101e8f635 if LcdLogoName != 1541ii nor 1541classic, try to load file from SD card 2018-07-04 11:48:55 +10:00
penfold42
34c75658eb LcdLogoName = 1541ii (or 1541classic) 2018-07-03 21:26:01 +10:00
penfold42
418f8707e9 Added 1541 classic LCD logo 2018-07-03 15:19:56 +10:00
Stephen White
d2b87e609a Fixed Issue #32: Confusing similar name files. 2018-07-02 18:55:54 +10:00
Stephen White
e4dc6e54ec Fixed bug with https://csdb.dk/release/?id=11627 directory display.
grue on Lemon found this image that caused an infinite loop when attempting to display the directory.
2018-07-02 18:30:30 +10:00
Stephen White
c961e2b5b0
Merge pull request #36 from penfold42/hideDEL
Hide deleted files from BAM view
2018-07-02 18:24:44 +10:00
penfold42
791d1ea0a8 Hide deleted files from BAM view 2018-07-01 20:46:07 +10:00
penfold42
5a3ee09c56 Updated options.txt
Added ChargenFont options (same as "Font" just clearer name)
2018-07-01 10:16:47 +10:00
Stephen White
04640e11e6 Fixed minor problem where track display initially displays track 00 and not track 18 2018-07-01 04:35:40 +10:00
Stephen White
8e9e0a5b28
Merge pull request #34 from penfold42/statusoverlap
Fix status bar overlap on small screens
2018-07-01 04:03:52 +10:00
Stephen White
f484dea75f Debounce reset 2018-07-01 04:00:47 +10:00
penfold42
e053a2bb5b Fix status bar overlap on small screens 2018-06-30 19:20:05 +10:00
Stephen White
ef975f0721 Incremented build version. 2018-06-24 14:41:28 +10:00
Stephen White
c41ea162a2 Added the option to auto mount a disk image (when resetting)
This will enable poeple to use AR6, EFL or FC3 to load fb64. To do so create a disk image with FB64 on it. copy it to the SD card's 1541 folder. add the line "autoMountImage = fb.d64" to options.txt. Now whenever the drive is reset it will automatically mount the disk image. As it is emulating people can use their cart of choice to load it. Once loaded they can simply back out of the image and browse the SD card as usual.
2018-06-24 14:37:11 +10:00
Stephen White
99ddf7c31f Merge branch 'early_oled' of https://github.com/penfold42/Pi1541 into penfold42-early_oled 2018-06-24 13:39:49 +10:00
Stephen White
270650751c Resolved merge confilicts for push "Ssd1306 OLED startup logo #26" 2018-06-24 13:24:26 +10:00
penfold42
8f67aef459 Add LCD contrast control
i2cLcdOnContrast = 127 // (0..255)
UNTESTED sh1106 support
	LCDName = sh1106_128x64
2018-06-23 13:58:05 +10:00
penfold42
f0e90cf385 Also change VCOMDeselect when changing contrast 2018-06-23 12:52:54 +10:00
penfold42
bd8a31604c Added SetContrast functions 2018-06-22 22:32:54 +10:00
penfold42
3242a517b3 Ground work for sh1106 and brightness controls
- just options parsing
2018-06-22 09:31:13 +10:00
Stephen White
cf64cf1c2e Fixed bug - when backing out of a disk image the disk would not be written back. 2018-06-19 19:11:26 +10:00
Stephen White
34e53d7ea7 Incremented build number. 2018-06-17 19:05:14 +10:00
Stephen White
c0f17a5f92
Merge pull request #25 from penfold42/ssdflip
Added i2cLcdFlip = 0/1 to flip display 180 deg
2018-06-17 17:45:39 +10:00
penfold42
0f536925bc Added i2cLcdFlip = 0/1 to flip display 180 deg 2018-06-16 00:01:02 +10:00
penfold42
777ab80d99 Moved status bar to avoid overlap with 40 track BAM 2018-06-15 18:33:41 +10:00
penfold42
6ce74cf9c8 GCC 7 support and cleanup compiler warnings 2018-06-15 13:31:01 +10:00
Stephen White
1342ce812b Fixed the emulation button debouncing issue. 2018-06-14 20:39:34 +10:00
Stephen White
63ee223088 Fixed bug with previous disk button now working as expected when you have a large amount of disks in the set. 2018-06-14 20:39:07 +10:00
Stephen White
8a25afaeb0
Merge pull request #21 from penfold42/gpiosound
Gpio sound duration and frequency
2018-06-12 22:42:33 +10:00
penfold42
e05d6b0f28 Updated gpio sound options
soundOnGPIODuration = 1000 // in mSecs (1000 = 1 second)
soundOnGPIOFreq = 1200	// in Hz as it should be
2018-06-12 21:39:08 +10:00
Stephen White
99f385ecf3 "Saving Complete" message is now displayed only if disk images were written back 2018-06-12 19:17:00 +10:00
Stephen White
697b986649 "Saving Complete" message is now displayed only if disk images were written back. 2018-06-12 19:07:05 +10:00
Stephen White
ee289159b6 Added the ability to have floating point values in the options.txt file. 2018-06-12 19:03:29 +10:00
penfold42
cd7f8e3fef added soundOnGPIOCounter soundOnGPIOFreq to options.txt 2018-06-12 11:17:52 +10:00
Stephen White
e0cc14afeb Invremented build version. 2018-06-11 19:36:05 +10:00
Stephen White
3e83a57349 Each disk write back is now displayed on screen(s) when modified images are unmounted. 2018-06-11 19:31:24 +10:00
Stephen White
a838a57a5f
Merge pull request #16 from penfold42/LcdAddress
Add i2cLcdAddress option
2018-06-09 19:02:16 +10:00
Stephen White
c605ff6b0d Fixed the auto reset bugs introduced in v1.03 2018-06-07 20:20:57 +10:00
penfold42
f270abde43 Add i2cLcdAddress = 60 option
Note, this is in decimal and is "pre" shifting to the left.
60 decimal = 0x3c will drive an oled module set to "0x78"
61 decimal = 0x3d will drive an oled module set to "0x7a"
2018-06-07 19:00:39 +10:00
Stephen White
1c4e73d927 Added track # display to the LCD screen. 2018-06-06 19:13:35 +10:00
Stephen White
b3088df3d2 Added track # display to the LCD screen. 2018-06-06 19:09:13 +10:00
Stephen White
091c785875 Added option for to select what I2C bus to use.
Also enabled the options file to be larger.
2018-06-04 19:11:15 +10:00
Stephen White
823ced5be9
Removed debug code causing compile error. 2018-06-04 09:39:07 +10:00
Stephen White
e292de1179 Added support for ssd1306 128x64
Options.txt needs the line;-
LCDName = ssd1306_128x64
and depending upon how you want the keyboard's pgup and pgdown keys to work;-
keyboardBrowseLCDScreen = 1

Splits lines connect
SDA to GPIO 2 pin 3
SCL to GPIO 3 pin 5

Non-split lines
SDA to GPIO 0 pin 27
SCL to GPIO 1 pin 28
2018-06-03 18:11:58 +10:00
Stephen White
fdac3079dd Cleaned up the double handling of the options variables. 2018-06-03 17:54:36 +10:00
Stephen White
457cbafade Inlined some of the drive functions. 2018-06-03 17:45:17 +10:00
Stephen White
f1623f64c6 Optimised and improved compatability for inverted split lines hardware configuration. 2018-06-03 17:43:36 +10:00
Stephen White
746c9efb1d Added option to specify which file LOAD"*" will actually load. 2018-05-30 20:38:14 +10:00
Stephen White
d970e0ec73
Merge pull request #12 from penfold42/switchdecode
RAMBOard support - 8k ram @ $8000
2018-05-30 20:29:14 +10:00
Stephen White
59057a8d44 Directory entries are now sorted before being sent. 2018-05-30 20:09:15 +10:00
Stephen White
c2300db00a Fixed bug where modified images were being written back to the wrong foler. 2018-05-30 19:52:38 +10:00
penfold42
c7c3b0901c disable debug display options to screen 2018-05-29 18:24:56 +10:00
penfold42
05c9cae9cf now actually obeys RAMBOard setting 2018-05-29 18:21:49 +10:00
penfold42
89ff0d4771 Added config option for RAMBOard = 0/1
Displays parsed options on startup
2018-05-28 23:17:22 +10:00
penfold42
e81960a295 Added RAMBoard support = RAM at 0x8000
Changed Address decoding code to be clearer
2018-05-28 14:46:57 +10:00
Stephen White
d0d497d2ce Incremented the version number. 2018-05-27 20:22:21 +10:00
Stephen White
43022d2de8 Added better support for composite video.
The Pi's video resolution can now be specified in the options file.
The screen layout will scale.
The smallest resolution is 320x240.
2018-05-27 19:56:53 +10:00
Alexander Kovalenko
78fa906846 Add invertIECOutputs and ignoreReset options 2018-05-27 01:55:17 +03:00
Alexander Kovalenko
c0f06e33e2 Remove inline vars 2018-05-27 01:49:23 +03:00
Stephen White
d31ee50118
Need to delete the CBM font. 2018-05-24 19:57:37 +10:00
Stephen White
11a2b5fa46 Merge branch 'master' of https://github.com/pi1541/Pi1541 2018-05-23 19:45:25 +10:00
Jakub Czekański
ebc9d6359b moved sources to src/ dir, clean with explicit defined files 2018-05-22 19:04:38 +02:00