About me






















Geocities does not allow uploading files with .asm, .dat, .hex and .lst extensions. So, I saved asm files as html documents and code listings as text files.

Examples presented here require a 2*16 LCD connected to an 8255 with base address of 00h.
Routines sendcomA & sendcom & sendcharA & sendchar have been tested on
>> 2*16 Hitachi LCD with HD44780 chip
>> Samsung 1*16 LCD with a KS0062F00 chip
>> 2*16 Epson LCD marked P300020400 SANTIS 1 ,and
>> noname 1*16 HD44780 based LCD.
The Z80 was clocked at 2 MHz and 4,9152 MHz for each display. This was done
because the routines mentioned above take many t states, and in most cases
that will be longer that the time a HD44780 will need to execute a command.

LCD data bus(pins #14-#7) connected to Port A of an 8255 with 00h base address
LCD Enable pin(#6) connected to Port C bit #7 of the 8255
LCD R/W pin(#5) connected to Port C bit #6 of the 8255
LCD RS pin(#4) connected to Port C bit #5 of the 8255

Example #1: Print "Hello World !!!!" on LCD screen

Example #2: Define 8 custom characters and print them

Example #3: Simple animation in multiple locations
Example #4: The verticall scroll effect you can see at the entrance of my LCD pages
  • Source : v_scroll.asm
  • Both of the files above + the hex file: v_scroll.zip
    The syntax used for this example is tasm spesific and will assemble with no errors.

If you like this LCD code , and want to use it, here is a code template complete with the necessary LCD routines:

Follow these links to navigate through my LCD related pages:

Character Type LCD:

Graphics LCD: (Based on: KS0108, HD61202 and similars...)