5 Минут в виндовом блокноте
module ROM(ADR,Q);
input [4:0]ADR,
output [7:0]Q;
reg [7:0]Q;
always @ *
case (ADR)
5'b00000 : Q=B4; //10110100| ZX Экран
5'b00001 : Q=B5; //10110101| (4000h)
5'b00010 : Q=B6; //10110110|
5'b00011 : Q=FF; //11111111|___________
5'b00100 : Q=F4; //11110100| Экран
5'b00101 : Q=F5; //11110101| CP/M
5'b00110 : Q=F6; //11110110|
5'b00111 : Q=FF; //11111111|___________
5'b01000 : Q=34; //00110100| Экран
5'b01001 : Q=35; //00110101|DiskMonitor
5'b01010 : Q=36; //00110110| (2000h)?
5'b01011 : Q=FF; //11111111|___________
5'b01100 : Q=74; //01110100|
5'b01101 : Q=75; //01110101|Не используется
5'b01110 : Q=76; //01110110|
5'b01111 : Q=FF; //11111111|
//-----------+-----------+-----------
5'b10000 : Q=8B; //10001011| ZX Экран
5'b10001 : Q=9B; //10011011| (4000h)
5'b10010 : Q=AB; //10101011|
5'b10011 : Q=FF; //11111111|___________
5'b10100 : Q=CB; //11001011| Экран
5'b10101 : Q=DB; //11011011| CP/M
5'b10110 : Q=EB; //11101011|
5'b10111 : Q=FF; //11111111|___________
5'b11000 : Q=0B; //00001011| Экран
5'b11001 : Q=1B; //00011011|DiskMonitor
5'b11010 : Q=2B; //00101011| (2000h)?
5'b11011 : Q=FF; //11111111|___________
5'b11100 : Q=4B; //01001011|
5'b11101 : Q=5B; //01011011|Не используется
5'b11110 : Q=6B; //01101011|
5'b11111 : Q=FF; //11111111|
//===========+===========+-----------
endcase
endmodule




Ответить с цитированием