mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 17:52:45 +00:00 
			
		
		
		
	 3cba2a8a78
			
		
	
	
		3cba2a8a78
		
	
	
	
	
		
			
			Hook this up in Terminal so that the '\a' character generates a beep. Finally emit an '\a' character in the shell line editing code when backspacing at the start of the line.
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			654 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			654 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| #pragma once
 | |
| 
 | |
| #include <AK/Types.h>
 | |
| 
 | |
| #define TICKS_PER_SECOND          1000
 | |
| /* Timer related ports */
 | |
| #define TIMER0_CTL         0x40
 | |
| #define TIMER1_CTL         0x41
 | |
| #define TIMER2_CTL         0x42
 | |
| #define PIT_CTL            0x43
 | |
| 
 | |
| /* Building blocks for PIT_CTL */
 | |
| #define TIMER0_SELECT      0x00
 | |
| #define TIMER1_SELECT      0x40
 | |
| #define TIMER2_SELECT      0x80
 | |
| 
 | |
| #define MODE_COUNTDOWN     0x00
 | |
| #define MODE_ONESHOT       0x02
 | |
| #define MODE_RATE          0x04
 | |
| #define MODE_SQUARE_WAVE   0x06
 | |
| 
 | |
| #define WRITE_WORD         0x30
 | |
| 
 | |
| #define BASE_FREQUENCY     1193182
 | |
| 
 | |
| namespace PIT {
 | |
| 
 | |
| void initialize();
 | |
| dword ticks_this_second();
 | |
| dword seconds_since_boot();
 | |
| 
 | |
| }
 |