4" LCD TFT display 320x480 with ST7796S driver does not display properly

I bought first a 2.8" display ILI9341 240x320 from Banggood (2.8 inch ili9341 240x320 spi tft lcd display touch panel spi serial port module Sale - Banggood.com). I connected it to an ESP32 DEV Module in the following way:
#include "SPI.h"
#include "Adafruit_GFX.h" //GitHub - adafruit/Adafruit-GFX-Library: Adafruit GFX graphics core Arduino library, this is the 'core' class that all our other graphics libraries derive from
#include "Adafruit_ILI9341.h"
#define TFT_DC 4
#define TFT_CS 15
#define TFT_RST 2
#define TFT_MISO 19
#define TFT_MOSI 23
#define TFT_CLK 18
Using sketches found in internet I could set up a graphic program which immediately worked wonderfully. But, as we say in Italy "Appetite increases while eating" I tried to jump to the bigger display described in the topic subject, of the same make as the smaller one, and used the same connection scheme with no hardware changes. Since this was for me the first eperience with displays, I expected also a successful result. Much to my surprise it was not so.
Some graphic image was visible, but mainly only a part of the screen (one third) showed some graphics, while the rest was half gray and half white. So I started navigating in internet and tried to modify the ILI9341 library, then using the TFT_eSPI library, the ST7796S library and others. Only with the ILI9341 library something was visible on the screen, while in all other attempts the screen was blank.
What could I do now?
I already spent a lot of time, but with the advantage of keeping my mind away from the covid related segregation.
A help would be very much appreciated.

I had a similar problem years ago with a 240x400. Not only was the cursor wrong but the colour seemed to be CMY. The image was off to one side. Everything was fine when I added 80 to each x-coordinate. The y-coords were OK. I never knew what the controller chip was, and I never really fixed the colour, but the display was servicable.

@ nodar10,
@ Nick_Pyner,

Please post a link to the actual screens that you bought.
Then you can get accurate answers.

Most SPI displays are readable. Even the single bidirectional SDA pin screens like ST7735, ILI9163, GC9101, GC9102, ...
So we can generally get them working.

Mcufriend Uno Shields are read-write. We can read the ID and get most working.

Ok, Shields and parallel Adapters for MEGA2560 tend to be write-only. However the Vendors are often honest about the controller.

David.

Hi Nick
The big display I bought from Aliexpress is to be found at the address:
https://it.aliexpress.com/item/4001122632293.html?spm=a2g0s.9042311.0.0.43634c4dxl9z6F
At this address, displays of several sizes are on sale. I chose the biggest one, the 4-inch one.
In my last tests using the ILI9341 library I think I can identify the grafic drawing, but it occupies only a part of the screen width, that I can estimate to be about 320 pixel instead of 480. The rest of the screen is blank.
On the back side of the physical object in my hands the following writing is printed: 4.0" TFT SPI 480x320 V1.0.
Thanks for the attention.

david_prentice:
@ Nick_Pyner,
Please post a link to the actual screens that you bought.
Then you can get accurate answers.

As I said, it was years ago. I got no joy from Cold Tears then, and I don't expect to now. It so happens that the display is indeed parallel for Mega. I merely raised this because the display area problem was easy to fix, although I am no wiser as to how it arose. Reply#3 suggests the problem might be the same. It is easy to check.

The only library I used is UTFT by Henning Karlsen.

After reading posts by Lost73 and Bodmer I could manage to find the right path to the solution that was just a few steps ahead.
To edit the sketch I have just used the two libraries <TFT_eSPI.h> and <SPI.h>. The right TFTeSPI.h library was available at :

as indicated by Lost73.

In the file User_Setup.h of this library I have specified on my own initiative the physical connections from the display to ESP32 as follows:

192 #define TFT_MISO 19
193 #define TFT_MOSI 23
194 #define TFT_SCLK 18
195 #define TFT_CS 15 // Chip select control pin
196 #define TFT_DC 4 // Data Command control pin
197 #define TFT_RST 2 // Reset pin (could connect to RST pin)
Furthermore I have activated at line n.52 the ST7796S driver used by my 4-inch 480x320 display :

52 #define ST7796_DRIVER

Everithing finally runs beautifully this has been for me a good Christmas present.
Thanks to David Bodmer and Lost73