Releases: leomil72/LM80C
Releases · leomil72/LM80C
LM80C firmware R3.13.2
Revised code of GPRINT command to avoid an error that emerged when the statement was called with an arguments line too long.
LM80C firmware R3.13.1
This minor release foxes a race condition that could lead the interrupt service routine access the PSG reg #7 (mixer) together with some BASIC statements (i.e., SOUND), resulting in wrong values being stored into the mixer.
LM80C firmware R3.13
- New style for "£" char;
- fixed a bug into the automatic shutting down manager of SOUND that didn't de-activate the audio channel into the PSG mixer after a tone had finished its period of reproduction;
- new INSTR statement, returning the position of the first occurrence of one string within another;
- changed the behavior of INKEY statement: now the minimum delay interval is set to 10 hundredths of a second. If a shorter interval is being passed, it will be automatically set to 10 (this is because values under 10 could lead to faulty readings).
LM80C firmware R3.12
- Fixed a severe bug originated by a wrong design error of the final PCB: ports A & B of the PSG were inverted into the schematic, same for the definition of the ports into the code;
- Fixed a bug into the SOUND statement that accepted the third argument when generating a noise, even the syntax shouldn't accept it.
LM80C firmware R3.11
- Changed the way TMR() reads the real time counter so that now continue readings won't slow down the clock itself anymore;
- Changed the frequency of the keyboard reading. This task is now done every 1/50th of a second instead of each time the CTC channel 3 interrupt is raised: this lightens the "weight" of the interrupt service routine.
LM80C firmware R3.10
- Added GPRINT command to print text and ASCII chars in screen 2 as they would in text modes;
- fixed a bug that lead to unpredictable behaviors when a line longer than 88 chars was received from the serial port: now the interpeter simply drops exceeding chars.
LM80C firmware R3.9
- Added POINT function to get the status of a pixel in G2 mode (set or reset)
- Relocated CTC interrupt vectors to a jump table into RAM so that now the user can configure the CTC channel interrupts to jump to custom routines (included the routine attached to channel 3 that supervises several critical system routines);
- now SERIAL has default arguments for data, parity, and stop bits if not passed;
- changed FN key 5 function;
LM80C firmware R3.8
Bug fixes and minor improvements:
- Fixed a bug in FN key codes that lead to the activation of the wrong FN keys;
- introduced support for NMI custom routines (suggested by nippur72) with NMI statement;
- fixed a bug that lead to un-wanted behaviors when graphic chars were parsed in direct mode;
LM80C firmware R3.7
Lot of improvements:
- Added HELP command to automatically list the line where a program error has occurred;
- added modulo operator '%' to make modulus operations between integers (returns the remainder of an integer division);
- added integer division operator '#' (return the integer part of a division);
- added support for function keys into firmware;
- added KEY command to manage function keys: it is now possible to print the current functions and assign new functions to the keys;
- revised PAUSE code: it is now possible to break the delay with the "RUN STOP" key;
- better error management when in graphic modes: now if an error occurs in G2 and G3 modes, the BASIC interpreter returns into G1 mode; same behavior if an error occurs in direct mode while in graphics modes;
- pressing the "RUN STOP" key while in direct mode and in graphics modes leads the interpreter to return to G1 mode.
LM80C firmware R3.6
- Minor improvement in LIST code
- Fixed a bug in sound management (automatic cutting down of a sound wrongly altered the whole sound mixer)
- Added management of noise from PSG
- Fixed some timing issues in VDP access that lead to graphic glitches in graphic mode 2
- Code improvements