Were do you define the Guns and torpedo tubes' orientation and movements in java? (which java class?) The submarine classes I've seen look rather empty.
The 600t (series I to V also called classes Argonauta (1929), Sirene (1931), Adua (1935), Perla (1936), Platino (1940)) and 800t (Serie I Tritone (1941) the best of all Italian submarines, the production of a second serie was stopped by the armistice of September 1943) were the mainstay of the Italian sub fleet in the Mediterranea.
They, among others made the raids with the SLC Human Torpedoes on Alexandria, Gibraltar, Malta and Haifa Harbours.
The 1000t (I made till now only the Marcello Classe, the most numerous in this category) and 1200t (the main "oceanic submarines" Classes Marconi (1938) and Liuzzi (1038)) was the mainstay of the Italian sub fleet in the Atlantic.
The De Vinci with its midget sub CA1 was intended for raiding New York's harbour in Dec 1943 but the events of September 1943 changed this planning.
Active in the Red sea were 2 600t subs (1 of serie III the Macalle and 1 of serie IV the Perla) and 6 of 1000t : the 2 submarines of the Archimede classe (Torricelli and Ferraris, the 2 others, Archimede I and Torricelli Im having been transferred to the Spanish nationalists) and 4 from the 5 of the Brin class (Archimede II, Torricelli II, Galvani, Gugliemotti) - I'll add these subs to the 1000t class.