55extern crate alloc;
66
77use alloc:: { collections:: VecDeque , string:: String , vec:: Vec } ;
8- use esp32c3_hal:: { clock:: { ClockControl , CpuClock } , peripherals :: UART0 } ;
8+ use esp32c3_hal:: clock:: { ClockControl , CpuClock } ;
99use esp32c3_hal:: prelude:: * ;
1010use esp32c3_hal:: timer:: TimerGroup ;
1111use esp32c3_hal:: { gpio:: IO , peripherals:: Peripherals , Rtc } ;
12+ use esp_backtrace as _;
1213use esp_println:: println;
13- use vgaterm:: { Delay , usb_keyboard:: US_ENGLISH , Work , interrupt:: Priority } ;
1414use vgaterm:: perf:: configure_counter_for_cpu_cycles;
1515use vgaterm:: { self , video} ;
16- use esp_backtrace as _ ;
16+ use vgaterm :: { interrupt :: Priority , usb_keyboard :: US_ENGLISH , Work } ;
1717
18- use core:: { arch :: asm , fmt:: Write } ;
18+ use core:: fmt:: Write ;
1919
20- core:: arch:: global_asm!( ".global _heap_size; _heap_size = 0xC000 " ) ;
20+ core:: arch:: global_asm!( ".global _heap_size; _heap_size = 0xB000 " ) ;
2121
2222#[ global_allocator]
2323static ALLOCATOR : esp_alloc:: EspHeap = esp_alloc:: EspHeap :: empty ( ) ;
@@ -79,15 +79,17 @@ fn main() -> ! {
7979 vgaterm:: uart:: interrupt_enable0 ( Priority :: Priority6 ) ;
8080 vgaterm:: gpio:: interrupt_enable ( Priority :: max ( ) ) ;
8181
82-
8382 unsafe {
8483 riscv:: interrupt:: enable ( ) ;
8584 }
8685
8786 vgaterm:: timer:: start_repeat_timer0_callback ( 1_000_000 , || unsafe {
8887 if NUM_BYTES > 0 {
89- println ! ( "{} bytes" , NUM_BYTES ) ;
90- println ! ( "{} draw cycles per byte" , vgaterm:: CHARACTER_DRAW_CYCLES as f32 / NUM_BYTES as f32 ) ;
88+ println ! ( "{} bytes" , NUM_BYTES ) ;
89+ println ! (
90+ "{} draw cycles per byte" ,
91+ vgaterm:: CHARACTER_DRAW_CYCLES as f32 / NUM_BYTES as f32
92+ ) ;
9193 NUM_BYTES = 0 ;
9294 }
9395 vgaterm:: CHARACTER_DRAW_CYCLES = 0 ;
@@ -176,7 +178,9 @@ fn main() -> ! {
176178 while let Ok ( r) = serial0. read ( ) {
177179 b. push ( r) ;
178180 }
179- unsafe { NUM_BYTES += b. len ( ) ; }
181+ unsafe {
182+ NUM_BYTES += b. len ( ) ;
183+ }
180184 String :: from_utf8 ( b) . unwrap ( )
181185 } ;
182186
@@ -188,23 +192,23 @@ fn main() -> ! {
188192 match mode {
189193 ConnectMode :: ConnectHost => {
190194 let _ = serial0. write_str ( c) ;
191- } ,
195+ }
192196 ConnectMode :: LocalEcho => {
193197 terminal. type_str ( c) ;
194- } ,
195- ConnectMode :: None => { }
198+ }
199+ ConnectMode :: None => { }
196200 } ;
197-
198- } ,
199- Work :: WouldBlock => { } ,
201+ }
202+ Work :: WouldBlock => { }
200203 Work :: WouldBlockUntil ( _) => { }
201204 }
202205
203206 // Draw the characters on the frame
204207 // Flush the Display to the BUFFER
205- // display.flush();
206-
207- if !keyvents. is_empty ( ) || unsafe { ( * UART0 :: PTR ) . status . read ( ) . rxfifo_cnt ( ) . bits ( ) } > 0 {
208+ display. flush ( ) ;
209+
210+ if !keyvents. is_empty ( ) {
211+ println ! ( "{:?}" , keyvents) ;
208212 continue ;
209213 }
210214
0 commit comments