Commit graph

284 commits

Author SHA1 Message Date
Stephen White
14452da320 Added support for loading T64 files.
All the PRG files contained inside a T64 image are transfered over to a in memory D64 image. This in turn is converted to the low level G64 like image that the emulator uses.
2019-11-16 17:00:04 +11:00
Stephen White
9c75e0bb97 Removed the 64K limitation on the icon file size. 2019-11-16 16:49:28 +11:00
Stephen White
a22005971a Merge branch 'master' of https://github.com/pi1541/Pi1541 2019-11-05 12:31:26 +11:00
Stephen White
a0d3ca30e8 Added P00 (PXX) and T64 loading from browse mode.
Only the first file inside the T64 is loaded.
Even though T64 is a tape file you load it using “NAME.T64”,8,1
Regular wild cards should also work.

NOTE: T64 containing multiple files will probably not work.
2019-11-05 12:31:00 +11:00
Paul Kania
60241440a8 Fix typo inside saving routine for Raspberry Pi Zero 2019-10-25 19:49:53 +02:00
Stephen White
82b494a5e2 Added option to display the Pi's CPU temperature. 2019-10-20 13:45:47 +11:00
Stephen White
a382c75376
Merge pull request #148 from Remboooo/remboooo/fix-exiting-emulation-mode-with-gpio-button
Fix exiting emulation mode with ENTER (GPIO) button
2019-09-22 11:16:36 +10:00
Stephen White
7c5c812f61
Merge pull request #146 from Remboooo/remboooo/fix-oled-caddy
Fix OLED screen showing content from previous screen on empty lines in caddy view
2019-09-22 11:15:41 +10:00
Stephen White
563777a2a8
Merge branch 'master' into gbelmont/add_rotary_encoder 2019-09-22 11:09:58 +10:00
Alexander Martinelle
58be6a8079 OLED support added
OLED support added back in with extra update call to refresh the display on single core devices.
New macro added to allow 1581 tests in the Pi Zero experimental build.
2019-09-21 17:24:09 +02:00
Alexander Martinelle
9b38fc6d32 Early bail-out of DriveLoopReadNoFlux
A couple of small optimizations that shouldn't make a difference but do such as: Addressing tracks as a single array.  Caching a single byte instead of re-reading the array. (Note that caching 32bits did not improve but actually worsen things). Harsher interrupt disabling. Whitespace changes in main...

Plus, early bail out from DriveLoopReadNoFlux.
2019-09-10 23:14:34 +02:00
Rembrand van Lakwijk
4a8ba25d8c Fix exiting emulation mode with ENTER (GPIO) button;
pressing the button would exit emulation mode, but then releasing the button would immediately enter it again.
Logic copied from CheckButtonsBrowseMode().
2019-09-10 17:54:37 +02:00
Rembrand van Lakwijk
878f09bbdf Fix OLED screen showing content from previous screen on empty lines in caddy view 2019-09-10 17:23:44 +02:00
Alexander Martinelle
8875c55c25 Fixed incorrect cycle calculation and removed floats entirely in drive loop
Replace incorrect cyclesLeft calculation with faster non-floating point error calculator. Replaced modulo calculation with faster size comparison.
2019-09-07 14:27:32 +02:00
George Belmont
b409732ddd Added support for KY-040 rotary encoder to replace browse up/down/select buttons; all code
changes were annotated with //ROTARY: for easy review;
2019-09-06 07:13:58 -04:00
Alexander Martinelle
2d538e4975 Some code restructing and removed writeshiftregister use.
Moved the branching to Update.
writeShiftRegister renamed.
Fixed typo in main drive read.
Reorganised SetInput call try to trigger conditionals.
2019-09-04 22:06:21 +02:00
Alexander Martinelle
3978ef2165 1541 Drive speed improvements
Specialized drive read loops for the most common cases, triggers a vast speed improvement in some scenarios. Improved saving speed. Removed some more code that's not really required right now.
2019-09-03 23:31:46 +02:00
Alexander Martinelle
bddc9a7d29 Save support added
Optimized the DriveLoopWrite code.
2019-09-01 17:38:27 +02:00
Alexander Martinelle
1880a2c710 Fixed a couple of incorrcet ifdefs..
Wrappped the experimental code correctly in main and fixed a comment typo in the inputmappings.
2019-09-01 13:46:29 +02:00
Alexander Martinelle
d39c734151 Experimental Pi Zero 1541 loading support.
Experimental Pi Zero 1541 loading support. Disables screens, keyboard, uart, interrupts. Restructured 1541 emulation loop to avoid button polling. Drive reading code optimized.
2019-08-31 13:26:23 +02:00
Uffe Jakobsen
4b0823fda0 Cosmetic: fix spelling DECIVE_SWITCHED => DEVICE_SWITCHED 2019-08-02 12:05:35 +02:00
Stephen White
124628012f VICE flip lists (ie.VFL files) work like .LST files. 2019-07-01 21:16:08 +10:00
Stephen White
50a590ee84 Fixed issue #133 2019-05-20 20:00:38 +10:00
Stephen White
1921f5755d Fixed bug with the LCD corrupting/flipping
Also zak_mckracken_boot[activision_1988] now works.
Added option to specify the default type of new disk image ad D64 or G64.
2019-05-05 17:59:58 +10:00
Stephen White
79c4d83bdb maniac_mansion_s1[lucasfilm_1989](ntsc).g64 now works. 2019-04-28 18:02:01 +10:00
Stephen White
cf0d4e11dd CD<- now works as well as CD:<- 2019-04-28 16:36:55 +10:00
Stephen White
520d6e6540 6522 timer IRQs were triggering one cycle too late. 2019-04-28 15:50:57 +10:00
Stephen White
47355edeff Mac OS .* files are filtered out 2019-04-28 15:41:24 +10:00
Stephen White
f28e371763 Added the ability to use a real XOR chip
I could not get it to work.
Just checking it in incase anyone wants to experiment.
2019-04-28 15:37:46 +10:00
Stephen White
809722750a Improved compatability for the Neon loader. 2019-04-28 15:27:15 +10:00
Stephen White
65893c857c Fixed typos in the comments 2019-04-28 15:04:32 +10:00
Stephen White
a0e88c5e79 D64 images with extra error information now has that data applied. 2019-04-28 14:54:26 +10:00
Stephen White
64291c0dfd New disks can now be a G64 or a D64 2019-04-28 14:48:16 +10:00
Stephen White
bf6d61d27b Fixed bug with HDMI display and the font being half height.
I have a better fix for this coming when I commit support for other LCDs and screens (each screen can use its own character set/font)
2019-04-28 14:29:43 +10:00
Stephen White
fb295a7184 Incremented version number to 1.20 2019-04-28 14:09:34 +10:00
Stephen White
dfaa09d2f8 X? command now returns the dos version 2019-04-28 14:05:04 +10:00
Stephen White
dba374593e
Merge pull request #120 from gbouille/SSD1306_improvment
A little improvment on SSD refresh
2019-01-02 11:54:47 +11:00
gbouille
800972fa3e A little improvment on SSD refresh by using the ability to send up to
15 bytes in one single data command.
Should increase the speed to refresh the screen.
2018-12-31 18:02:14 +01:00
gbouille
e8e0b8428b Correct a bug on displaying caddy content when using 8bit height font
(like CBM font)
This time, with the correct y coordinate usage.
2018-12-31 11:05:17 +01:00
gbouille
39e737e935 Correct a bug on displaying caddy content when using 8bit height font
(like CBM font)
2018-12-30 17:43:14 +01:00
Stephen White
2979c69791 Fixed compile errors for other Pi builds. 2018-12-30 14:15:10 +11:00
Stephen White
4dc0fd4b4f 1541 heads now start ofer track 19 fixes Maniac Mansion "File not found error" 2018-12-30 14:04:33 +11:00
Stephen White
123612a473 Reduced the time between reading and writing the IEC bus in 1541 mode.
Doing this increases compatability for some people using regular Pi3 models.
2018-12-29 17:51:55 +11:00
Stephen White
a25f1963c0 Added a feature where the firmware can be auto updated from a USB drive. 2018-12-29 17:48:18 +11:00
Stephen White
6db79af58a Deleted commented out unused code 2018-12-29 17:44:48 +11:00
Stephen White
9de1789c4e Fixed bug with FB loading a disk image with an underscore in the name. 2018-12-29 17:42:06 +11:00
Stephen White
05dbbe1c67 Possible fixed for issue #22 One line more then expected
Stopped both cores sending I2C data at the same time.
2018-12-29 17:38:57 +11:00
Stephen White
770854975c Merge branch 'master' of https://github.com/pi1541/Pi1541 2018-12-27 16:21:18 +11:00
Stephen White
bc030fe699 Update FileBrowser.cpp
Fixed issue #115 Alt-L writes all files in directory to autoswap.lst, not selected files
2018-12-27 16:21:12 +11:00
gbouille
8b3dc69bac CBM font usable on LCD display
Put "i2cLcdUseCBMChar = 1" to the option.txt file.
You have to use the Chargen rom too
2018-12-18 08:23:53 +01:00
Stephen White
cb04179fc9 Added option to lowercase all filenames passed back to FB* 2018-12-15 15:44:37 +11:00
Stephen White
7eccc56eda Fixed bug with opening PRG filenames longer than 13 characters eg portal_v1_pa.prg 2018-12-03 19:38:09 +11:00
Stephen White
db643e8d0e Improved compatibility with 1581 (especially when using 1581 JiffyDOS) 2018-11-25 21:47:24 +11:00
Stephen White
0bbe4544f9 Head stepping sounds now work for 1581 mode. 2018-11-25 15:44:44 +11:00
Stephen White
e3e25b8b5a Fixed bug with PRG files not loading from USB drives. 2018-11-25 15:40:45 +11:00
Sven Oliver Moll
f34bb442b0 Update src/iec_commands.cpp
Trying to make emulation mode error messages look a bit more like 1541 ones.
2018-11-11 21:29:34 +01:00
Stephen White
504596b013 Update src/iec_commands.cpp 2018-11-06 19:31:38 +11:00
Stephen White
498b153847 Update src/iec_commands.h 2018-11-06 19:28:18 +11:00
Stephen White
9051abec6d FB and @CP can now be used to switch between SD and USB devices. 2018-11-06 19:23:48 +11:00
Stephen White
d9528f0f26 SRQ needed to be inverted. 2018-11-04 17:52:00 +11:00
Stephen White
a26a4275b2 Added USB drive support. 2018-11-04 17:14:28 +11:00
Stephen White
2a8dad9f16 Removed debug code. 2018-11-04 17:14:18 +11:00
Stephen White
db692407c3 Fixed bug with SRQ line preventing the cassette from working. 2018-10-21 22:01:59 +11:00
Stephen White
8b8097525b Fixed issue #95 The DisableSD2IECCommands option makes the Pi1541 hang 2018-10-17 15:39:55 +11:00
Stephen White
7535e98434 Alt-Enter will now insert a disk also.
Some people are informing me they are using keyboards without an insert key.
2018-10-17 15:32:23 +11:00
Stephen White
7752ef3df7 Fixed issue with SIDPlay and loading file names that start with a number. 2018-10-11 19:08:44 +11:00
Stephen White
824e5da2ac Fixed bug with filenames and SIDPlay64.
Capital letters coming from sidplay64-sd2iec have the high bit set. Was confusing isdigit and isspace.
2018-10-10 20:04:43 +11:00
Stephen White
a249bf295f Fixed the button mapping issue so that they can be 1 indexed when specifying in options.txt 2018-09-30 22:42:56 +10:00
Stephen White
1a3941913e Incremented version number. 2018-09-30 21:43:55 +10:00
Stephen White
db32edfb28 Fixed bug with buttons not mapped correctly. 2018-09-30 21:43:03 +10:00
Stephen White
481a887e7c Added 1581 mode.
I tried to get burst mode working but couldn't.
2018-09-23 17:22:01 +10:00
Stephen White
6912ae1e80
Merge pull request #77 from penfold42/configbuttons
Configurable PCB button mapping
2018-09-09 18:57:18 +10:00
penfold42
d06b361f80 Alt-L to create autoswap.lst now includes selected drive rom 2018-08-26 22:19:50 +10:00
penfold42
5b091e9b8c options.txt numbers can now be decimal, hex (and probably octal)
reboot clears LCD on the way down
2018-08-25 11:43:23 +10:00
penfold42
eac4475c4f Button remapping uses number 1..5
moved mapping code to CheckOptions()
2018-08-19 22:25:47 +10:00
penfold42
a54f1804ba Added options to remap the input push buttons 2018-08-19 22:11:36 +10:00
penfold42
71e1267b4b Updated options.txt 2018-08-12 21:50:29 +10:00
penfold42
a695cfbd89 128BootSectorName = bootsect.128 2018-08-12 21:15:17 +10:00
Stephen White
be5b1a0312 Fixed bug with a 128 (in 128 mode) not booting.
Also added the option for a 128 to auto load FB128.
2018-08-12 14:40:06 +10:00
penfold42
0115e66f09 use bitmap view of the BAM (rather than characters)
scale bitmap view to PNG size

guess 40 track format for BAM display

rename ClearArea to DrawRectangle
2018-08-11 17:14:17 +10:00
penfold42
36eb8efd7b And search for chargen in /roms/ too 2018-08-08 23:11:58 +10:00
penfold42
aed4baee1c Look in /roms/ for roms (in addition to /) 2018-08-08 23:00:37 +10:00
Stephen White
07143696fe User can now type more than one letter to narrow down the search. 2018-08-08 20:31:26 +10:00
penfold42
05d89d2505 Browser: Alt-L to create LST file in current dir with all images included
Also small optimise number scanner in inputmapping
2018-08-08 00:38:08 +10:00
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