| Commit message (Collapse) | Author | Files | Lines | ||
|---|---|---|---|---|---|
| 2021-10-24 | fix(eeprom): EEPROM interrupt not firing #110 | Uri Shaked | 3 | -5/+35 | |
| fix #110 | |||||
| 2021-10-22 | fix(spi): setting SPIE doesn't fire pending interrupt | Uri Shaked | 2 | -0/+25 | |
| 2021-10-07 | feat(timer): Force Output Compare (FOC) bits | Uri Shaked | 2 | -5/+98 | |
| 2021-09-14 | feat(timer): 3rd output compare (OCRnC) #96 | Uri Shaked | 2 | -13/+170 | |
| 2021-09-10 | refactor: remove the ICPU interface | Uri Shaked | 4 | -34/+19 | |
| Removing the interface simplifies the code | |||||
| 2021-09-10 | feat(adc): ADC peripheral #13 | Uri Shaked | 3 | -0/+405 | |
| 2021-09-10 | feat(watchdog): implement watchdog timer #106 | Uri Shaked | 5 | -1/+357 | |
| 2021-09-07 | fix(gpio): CBI/SBI handling in writes to PIN register #103 | Uri Shaked | 4 | -8/+50 | |
| fix #103 | |||||
| 2021-08-15 | feat(timer): external timer support #97 | Uri Shaked | 5 | -95/+171 | |
| also refactor timer/GPIO interaction to be more generic. close #97 | |||||
| 2021-08-15 | chore(deps): prettier 2.3.2 | Uri Shaked | 1 | -16/+2 | |
| also reformat all the code with the new version | |||||
| 2021-08-13 | fix(gpio): timer outputs not reflected in PIN register #102 | Uri Shaked | 2 | -8/+22 | |
| fix #102 | |||||
| 2021-08-09 | fix(gpio): PWM may leaves pins in high state | Uri Shaked | 1 | -0/+1 | |
| Disabling PWM when a GPIO pin is high will cause the pin to get stuck in high state. | |||||
| 2021-08-07 | style(spi): remove redundant whitespace from comments | Uri Shaked | 1 | -2/+2 | |
| 2021-07-17 | feat(usart): add `immediate` parameter to writeByte() | Uri Shaked | 1 | -8/+12 | |
| The value will be available immediately to the user program instead of waiting one symbol time before making it available. | |||||
| 2021-07-16 | fix(usart): tx / rx complete timing | Uri Shaked | 1 | -1/+1 | |
| fix the calculation of cyclesPerChar, which is used to determine when a USART RX/TX operation is marked complete. | |||||
| 2021-07-15 | feat(usart): add configuration change event | Uri Shaked | 2 | -3/+95 | |
| also add `txEnable` and `rxEnable` properties | |||||
| 2021-07-07 | fix(timer): only set ICR hook for 16-bit timers | Uri Shaked | 1 | -3/+3 | |
| The ICR (Input Capture Register) only exists for 16-bit timers. | |||||
| 2021-07-07 | feat(gpio): external interrupt/PCINT support (#82) | Uri Shaked | 4 | -18/+459 | |
| close #70, #84 | |||||
| 2021-06-20 | perf(cpu): speed up event system | Uri Shaked | 1 | -25/+47 | |
| Use a linked list instead of array. This makes the simulator runs almost twice as fast in case of timers with prescaler of 1, e.g. when using the TVout library. In addition, we use a pool of clock event objects to avoid expensive GCs. | |||||
| 2021-06-19 | fix(timer): Timer1 PWM issues #94 | Uri Shaked | 2 | -2/+24 | |
| close #94 | |||||
| 2021-04-15 | fix(twi): broken repeated start #91 | Uri Shaked | 2 | -1/+26 | |
| fix #91 | |||||
| 2021-02-19 | feat(usart): implement RX #11 | Uri Shaked | 4 | -7/+99 | |
| close #11 | |||||
| 2021-01-02 | fix: typo in parameter name | Uri Shaked | 3 | -6/+6 | |
| freqMHz → freqHz in SPI, TWI, and USART: they all expect the frequency in hertz, not mega-hertz. | |||||
| 2020-12-29 | fix(timer): delay() is inaccurate #81 | Uri Shaked | 2 | -21/+26 | |
| fix #81 | |||||
| 2020-12-27 | fix(timer): Output Compare in PWM modes #78 | Uri Shaked | 6 | -67/+353 | |
| close #78 | |||||
| 2020-12-26 | fix(timer): Overflow interrupt fires twice #80 | Uri Shaked | 2 | -7/+45 | |
| fix #80 | |||||
| 2020-12-25 | fix(timer): Output Compare sometimes misses Compare Match #79 | Uri Shaked | 2 | -6/+45 | |
| fix #79 | |||||
| 2020-12-21 | fix(timer): Output Compare issue #74 | Uri Shaked | 2 | -10/+28 | |
| output compare doesn't work when the OCR register (OCRnA/OCRnB) equals to 0 fix #74 | |||||
| 2020-12-20 | fix(timer): TOV flag does not update correctly #75 | Uri Shaked | 2 | -20/+56 | |
| fix #75 | |||||
| 2020-12-20 | fix(timer): OCR values should be buffered #76 | Uri Shaked | 2 | -11/+125 | |
| fix #76 | |||||
| 2020-12-12 | perf(cpu): speed up event system | Uri Shaked | 2 | -18/+59 | |
| ditch `array.sort()` and instead manually keep the array sorted when we insert a new item. | |||||
| 2020-12-12 | test(cpu): fix implicit any error | Uri Shaked | 1 | -3/+5 | |
| 2020-12-12 | fix(cpu): event system issue | Uri Shaked | 2 | -2/+63 | |
| `updateClockEvent()` and `clearClockEvent()` would sometimes mess up the list of events. This could cause unexpected behavior when you have multiple timers running. Also added regression tests for these methods. | |||||
| 2020-12-12 | fix(timer): Incorrect count when stopping a timer | Uri Shaked | 2 | -18/+41 | |
| fix #72 | |||||
| 2020-12-09 | perf!: centeral timekeeping | Uri Shaked | 12 | -221/+222 | |
| This should improve performance, especially when running simulations with multiple peripherals. For instance, the demo project now runs at ~322%, up from ~185% in AVR8js 0.13.1. BREAKING CHANGE: `tick()` methods were removed from individual peripherals. You now need to call `cpu.tick()` instead. | |||||
| 2020-12-09 | refactor: central interrupt handling #38 | Uri Shaked | 12 | -92/+285 | |
| 2020-12-09 | test(cpu): improve test name | Uri Shaked | 1 | -1/+1 | |
| 2020-11-27 | fix(usart): respect the given baud rate #16 | Uri Shaked | 2 | -54/+150 | |
| close #16 | |||||
| 2020-11-25 | feat(clock): Clock Prescale (CLKPR) support #68 | Uri Shaked | 3 | -0/+185 | |
| close #68 | |||||
| 2020-11-14 | feat: Support for simulating ATtinyx5 (e.g. ATtiny85) timers #64 | Uri Shaked | 2 | -12/+60 | |
| close #64 | |||||
| 2020-11-14 | fix: AVRTimerConfig interface not exported #65 | Uri Shaked | 2 | -2/+8 | |
| close #65 | |||||
| 2020-10-07 | test(gpio): extract constants | Uri Shaked | 1 | -26/+30 | |
| 2020-10-07 | fix(gpio): Changing pinMode from `INPUT` to `INPUT_PULLUP` doesn't trigger ↵ | Uri Shaked | 2 | -4/+13 | |
| listeners close #62 | |||||
| 2020-09-30 | fix(cpu): incorrect address for RAMPZ / EIND | Uri Shaked | 2 | -8/+8 | |
| We used their I/O space address intead of their data space address. close #61 | |||||
| 2020-09-02 | perf(timer): speed up interrupt handling | Uri Shaked | 1 | -1/+4 | |
| 2020-09-02 | perf(timer): improve timer speed | Uri Shaked | 2 | -11/+17 | |
| cache the value of the clock divider | |||||
| 2020-09-02 | fix(interrupt): broken on ATmega2560 | Uri Shaked | 2 | -1/+23 | |
| close #58 | |||||
| 2020-09-02 | fix(instruction): EICALL is broken | Uri Shaked | 2 | -1/+3 | |
| close #59 | |||||
| 2020-08-22 | style(spi): remove redundant eslint comments | Uri Shaked | 1 | -2/+0 | |
| 2020-08-22 | feat(spi): implement SPI master #33 | Uri Shaked | 4 | -1/+368 | |
| close #33 | |||||
