Faits:
Faits:
A. Par arrêt du 21 avril 2004, la Cour d'assises du canton de Genève a condamné B._, pour infraction grave à la loi fédérale sur les stupéfiants (LStup), à sept ans de réclusion, sous déduction de la détention préventive subie, à dix ans d'expulsion du territoire suisse et à une créance compensatrice de 30'000 francs. Par cet arrêt, la Cour d'assises a aussi condamné pour la même infraction les dénommés Q._ et Z._ (à sept ans de réclusion). Il ressort en substance ce qui suit de cet arrêt:
B._ s'est associé avec Q._ et Z._ pour mettre en place un trafic d'héroïne blanche entre la Thaïlande et Genève. Z._ et Q._ se concertaient pour convenir des modalités de livraison de la drogue. Z._ finançait les achats et B._ assurait le conditionnement et le transport de la drogue de Thaïlande à Genève, puis sa remise à Q._. Le prix de la drogue était versé à B._, qui soit déposait tout ou partie de l'argent sur le compte bancaire de Z._ auprès de l'UBS à Genève, soit ramenait tout ou partie de l'argent en Thaïlande, sous déduction de la part revenant à Q._, qui était chargé de la revente de la drogue à des clients connus de lui seul. A l'occasion de six voyages échelonnés entre octobre 2000 et avril 2002, 700 grammes de drogue ont à chaque fois été remis à Q._. Lors d'un dernier voyage du 2 au 4 juillet 2002, Q._ s'est vu remettre 968,4 grammes transportés par B._ et 172,9 grammes transportés par Z._. Par ailleurs, 400 grammes de drogue ont été retrouvés au domicile de B._ à Bangkok, lesquels étaient destinés à être remis ultérieurement à Q._. La Cour d'assises a ainsi retenu que la quantité d'héroïne blanche trafiquée par les coaccusés était de 5'741,3 grammes (6 x 700 + 968,4 + 172,9 + 400). En revanche, elle a écarté les autres remises de drogue mentionnées dans l'ordonnance de renvoi, faute de pouvoir être établies de manière suffisante, même si des déplacements de Thaïlande à Genève avaient eu lieu. Elle a retenu que les coaccusés réalisaient les trois cas graves prévus aux lettres a, b et c de l'art. 19 ch. 2 LStup.
B._ s'est associé avec Q._ et Z._ pour mettre en place un trafic d'héroïne blanche entre la Thaïlande et Genève. Z._ et Q._ se concertaient pour convenir des modalités de livraison de la drogue. Z._ finançait les achats et B._ assurait le conditionnement et le transport de la drogue de Thaïlande à Genève, puis sa remise à Q._. Le prix de la drogue était versé à B._, qui soit déposait tout ou partie de l'argent sur le compte bancaire de Z._ auprès de l'UBS à Genève, soit ramenait tout ou partie de l'argent en Thaïlande, sous déduction de la part revenant à Q._, qui était chargé de la revente de la drogue à des clients connus de lui seul. A l'occasion de six voyages échelonnés entre octobre 2000 et avril 2002, 700 grammes de drogue ont à chaque fois été remis à Q._. Lors d'un dernier voyage du 2 au 4 juillet 2002, Q._ s'est vu remettre 968,4 grammes transportés par B._ et 172,9 grammes transportés par Z._. Par ailleurs, 400 grammes de drogue ont été retrouvés au domicile de B._ à Bangkok, lesquels étaient destinés à être remis ultérieurement à Q._. La Cour d'assises a ainsi retenu que la quantité d'héroïne blanche trafiquée par les coaccusés était de 5'741,3 grammes (6 x 700 + 968,4 + 172,9 + 400). En revanche, elle a écarté les autres remises de drogue mentionnées dans l'ordonnance de renvoi, faute de pouvoir être établies de manière suffisante, même si des déplacements de Thaïlande à Genève avaient eu lieu. Elle a retenu que les coaccusés réalisaient les trois cas graves prévus aux lettres a, b et c de l'art. 19 ch. 2 LStup.
B. Par arrêt du 3 septembre 2004, la Cour de cassation genevoise a rejeté le recours de B._.
B. Par arrêt du 3 septembre 2004, la Cour de cassation genevoise a rejeté le recours de B._.
C. Celui-ci forme un recours de droit public au Tribunal fédéral contre cet arrêt. Il conclut à son annulation et sollicite par ailleurs l'assistance judiciaire.
Le Tribunal fédéral considère en droit:
Le Tribunal fédéral considère en droit:
1. 1.1 Le recours de droit public au Tribunal fédéral est ouvert contre une décision cantonale pour violation des droits constitutionnels des citoyens (art. 84 al. 1 let. a OJ). Il n'est en revanche pas ouvert pour se plaindre d'une violation du droit fédéral, qui peut donner lieu à un pourvoi en nullité (art. 269 al. 1 PPF); un tel grief ne peut donc pas être invoqué dans le cadre d'un recours de droit public, qui est subsidiaire (art. 84 al. 2 OJ; art. 269 al. 2 PPF).
1.2 En vertu de l'art. 90 al. 1 let. b OJ, l'acte de recours doit, à peine d'irrecevabilité, contenir un exposé succinct des droits constitutionnels ou des principes juridiques violés et préciser en quoi consiste la violation. Saisi d'un recours de droit public, le Tribunal fédéral n'a donc pas à vérifier de lui-même si la décision attaquée est en tous points conforme au droit ou à l'équité. Il n'examine que les griefs d'ordre constitutionnel invoqués et suffisamment motivés dans l'acte de recours. Le recourant ne saurait se contenter de soulever de vagues griefs ou de renvoyer aux actes cantonaux (ATF 129 I 185 consid. 1.6 p. 189, 113 consid. 2.1 p. 120; 125 I 71 consid. 1c p. 76). Le Tribunal fédéral n'entre pas non plus en matière sur les critiques de nature appellatoire (ATF 125 I 492 consid. 1b p. 495).
1.2 En vertu de l'art. 90 al. 1 let. b OJ, l'acte de recours doit, à peine d'irrecevabilité, contenir un exposé succinct des droits constitutionnels ou des principes juridiques violés et préciser en quoi consiste la violation. Saisi d'un recours de droit public, le Tribunal fédéral n'a donc pas à vérifier de lui-même si la décision attaquée est en tous points conforme au droit ou à l'équité. Il n'examine que les griefs d'ordre constitutionnel invoqués et suffisamment motivés dans l'acte de recours. Le recourant ne saurait se contenter de soulever de vagues griefs ou de renvoyer aux actes cantonaux (ATF 129 I 185 consid. 1.6 p. 189, 113 consid. 2.1 p. 120; 125 I 71 consid. 1c p. 76). Le Tribunal fédéral n'entre pas non plus en matière sur les critiques de nature appellatoire (ATF 125 I 492 consid. 1b p. 495).
2. Invoquant une violation de l'art. 6 par. 1 CEDH, le recourant prétend n'avoir pas eu droit à un procès équitable. Selon lui, la fatigue et la nervosité ont pu influer sur les jurés, les délibérations sur la peine s'étant tenue entre 1 et 4 heures du matin, dans le prolongement d'une journée déjà chargée.
2.1 Aux termes de l'art. 6 par. 1 CEDH, toute personne a droit à ce que sa cause soit entendue équitablement, publiquement et dans un délai raisonnable, par un tribunal indépendant et impartial, établi par la loi, qui décidera, soit des contestations sur ses droits et obligations de caractère civil, soit du bien-fondé de toute accusation en matière pénale dirigée contre elle.
L'art. 6 par. 1 CEDH garantit en particulier le droit à un procès équitable. De ce point de vue, il importe que les juges et jurés bénéficient de leurs pleines capacités de concentration et d'attention pour suivre les débats et rendre un jugement éclairé (cf. arrêt de la Cour européenne des droits de l'homme, Makhfi c/ France du 19 octobre 2004, ch. 40). Dans cette dernière affaire, la Cour européenne a examiné le grief tiré d'une violation des droits de la défense par un avocat contraint par le tribunal de plaider vers 5 heures du matin, après une durée cumulée des débats de 15 heures 45. Le tribunal n'avait pas admis l'opposition de l'avocat qui, ne se sentant plus capable d'accomplir sa mission, avait invoqué vers 1 heure du matin une violation des droits de la défense et sollicité la suspension de l'audience et sa reprise à 9 heures. La Cour a admis que la procédure suivie par le tribunal était incompatible avec les exigences d'un procès équitable et notamment le respect des droits de la défense.
2.2 En l'espèce, il ressort du dossier que le procès a débuté le 19 avril 2004. Cette première journée d'audience s'est terminée vers 23 heures 30. Dans la matinée du 20 avril 2004, se sont tenus les réquisitoires et les plaidoiries de la défense sur la culpabilité. Les délibérations du jury ont débuté en début d'après-midi et se sont achevées vers 21 heures, à la suite de quoi la présidente de la Cour d'assises a lu le verdict du jury sur la culpabilité. Une suspension a eu lieu de 21 heures 30 à 23 heures. Le réquisitoire et les plaidoiries sur la peine ont débuté à 23 heures pour se poursuivre jusqu'à 0 heure 30. La cour (soit le magistrat professionnel qui préside la Cour d'assises, cf. art. 36 de la loi sur l'organisation judiciaire genevoise) et le jury sont entrés en délibération sur la peine immédiatement après et ont rendu le prononcé vers 4 heures du matin.
Il est fréquent qu'une procédure judiciaire exige des membres de l'autorité chargée de statuer une attention soutenue sur un laps de temps qui peut être étendu. Même s'il est composé de laïcs, un jury n'ignore pas cette situation. A Genève, le serment que prêtent les jurés mentionne expressément qu'ils promettent l'attention la plus consciencieuse aux débats qui vont s'ouvrir devant eux (cf. art. 274 al. 1 du Code de procédure pénale genevois).
Le jury a délibéré sur la culpabilité depuis le début de l'après-midi jusqu'à 21 heures. Il a ensuite bénéficié d'une pause d'une heure et demie. A ce stade de la procédure, le jury s'était donc déterminé sur la culpabilité du recourant. Le recourant n'invoque aucune violation du droit à un procès équitable à cet égard.
De 23 heures à 0 heure 30, la cour et le jury ont écouté le réquisitoire et les plaidoiries des avocats de la défense, dont celui du recourant, sur la peine. Il ne ressort pas de l'arrêt de la Cour d'assises ni de la motivation du recours qu'un des avocats aurait signalé qu'il ne se sentait pas en mesure de plaider et d'assurer efficacement la défense des intérêts de son client ou qu'il se serait opposé à l'entrée en délibération de la cour et du jury en requérant une suspension de l'audience et sa reprise le lendemain. Cette situation se distingue ainsi clairement de celle prise en compte dans l'arrêt précité du 19 octobre 2004 rendu par la Cour européenne des droits de l'homme. A 0 heure 30, la cour et le jury se sont retirés pour délibérer sur la peine. Le recourant n'avance aucun indice d'une quelconque incapacité des membres de la juridiction à remplir leur fonction à ce moment. Son absence d'opposition à l'entrée en délibération atteste du contraire. Il ne pouvait ignorer que la délibération risquait de durer, celle-ci concernant trois coaccusés. Dès lors que la cour et le jury venaient de prendre connaissance des réquisitions et plaidoiries sur la peine, la poursuite immédiate de la procédure leur permettait d'avoir à l'esprit tous les arguments pertinents. L'heure du début de la délibération, soit après minuit, n'a pas à être appréciée schématiquement et ne peut pas en tant que telle constituer un élément décisif du point de vue de la conformité avec l'art. 6 par. 1 CEDH. La cour et le jury ont consacré plus de trois heures à débattre de la peine. Cette durée suppose qu'ils ont pris le temps nécessaire pour trancher et qu'ils disposaient par conséquent encore de suffisamment d'énergie et de concentration. En définitive, rien ne permet concrètement de dire que la délibération sur la peine n'a pas répondu aux exigences d'un procès équitable. L'attitude du recourant, qui, quoiqu'assisté d'un avocat, n'a jamais protesté contre le déroulement de la procédure devant la Cour d'assises, mais qui a attendu de connaître sa condamnation pour former sa critique, apparaît plutôt comme contraire à la bonne foi. Le grief est infondé.
De 23 heures à 0 heure 30, la cour et le jury ont écouté le réquisitoire et les plaidoiries des avocats de la défense, dont celui du recourant, sur la peine. Il ne ressort pas de l'arrêt de la Cour d'assises ni de la motivation du recours qu'un des avocats aurait signalé qu'il ne se sentait pas en mesure de plaider et d'assurer efficacement la défense des intérêts de son client ou qu'il se serait opposé à l'entrée en délibération de la cour et du jury en requérant une suspension de l'audience et sa reprise le lendemain. Cette situation se distingue ainsi clairement de celle prise en compte dans l'arrêt précité du 19 octobre 2004 rendu par la Cour européenne des droits de l'homme. A 0 heure 30, la cour et le jury se sont retirés pour délibérer sur la peine. Le recourant n'avance aucun indice d'une quelconque incapacité des membres de la juridiction à remplir leur fonction à ce moment. Son absence d'opposition à l'entrée en délibération atteste du contraire. Il ne pouvait ignorer que la délibération risquait de durer, celle-ci concernant trois coaccusés. Dès lors que la cour et le jury venaient de prendre connaissance des réquisitions et plaidoiries sur la peine, la poursuite immédiate de la procédure leur permettait d'avoir à l'esprit tous les arguments pertinents. L'heure du début de la délibération, soit après minuit, n'a pas à être appréciée schématiquement et ne peut pas en tant que telle constituer un élément décisif du point de vue de la conformité avec l'art. 6 par. 1 CEDH. La cour et le jury ont consacré plus de trois heures à débattre de la peine. Cette durée suppose qu'ils ont pris le temps nécessaire pour trancher et qu'ils disposaient par conséquent encore de suffisamment d'énergie et de concentration. En définitive, rien ne permet concrètement de dire que la délibération sur la peine n'a pas répondu aux exigences d'un procès équitable. L'attitude du recourant, qui, quoiqu'assisté d'un avocat, n'a jamais protesté contre le déroulement de la procédure devant la Cour d'assises, mais qui a attendu de connaître sa condamnation pour former sa critique, apparaît plutôt comme contraire à la bonne foi. Le grief est infondé.
3. Le recourant se plaint d'une violation du prononcé public du jugement garanti par les art. 30 al. 3 Cst., 6 par. 1 CEDH et 14 al. 1 Pacte ONU II. Il relève que le prononcé de l'arrêt de la Cour d'assises ne saurait être considéré comme public car il a eu lieu après 4 heures du matin, soit à une heure où plus personne ne se trouvait dans la salle d'audience.
La publicité des débats judiciaires et le prononcé public des jugements constituent des principes fondamentaux pour la garantie du procès équitable. Il n'est pas nécessaire que le texte soit lu publiquement, s'il existe d'autres possibilités pour le public de prendre connaissance du jugement (ATF 124 IV 234 consid. 3 p. 237 ss; Andreas Auer/Giorgio Malinverni/Michel Hottelier, Droit constitutionnel suisse, vol. II, Berne 2000, n. 1266 ss; Paul Tschümperlin, Publicité des décisions, ch. I.1, article accessible sur le site Internet du Tribunal fédéral, rubrique publications > contributions scientifiques).
En l'espèce, la Cour de cassation genevoise a noté que, malgré l'heure tardive, la salle d'audience était accessible au public. L'entier de la procédure s'est déroulée publiquement. En particulier, la présidente de la Cour d'assises a lu le verdict du jury sur la culpabilité vers 21 heures, a fixé la reprise de l'audience à 23 heures pour le réquisitoire et les plaidoiries sur la peine. Il apparaît donc que quiconque était intéressé par l'affaire pouvait en suivre le déroulement et avait la faculté d'y assister jusqu'au prononcé de l'arrêt, à l'instar des parties. La lecture du prononcé après 4 heures du matin présente certes un caractère exceptionnel, mais qui ne saurait être apprécié comme une entrave rédhibitoire du point de vue du prononcé public. Il importe surtout sous l'angle des garanties constitutionnelles et conventionnelles invoquées que tout tiers intéressé ait pu assister à la lecture du prononcé s'il le souhaitait. Par conséquent, le grief est infondé.
En l'espèce, la Cour de cassation genevoise a noté que, malgré l'heure tardive, la salle d'audience était accessible au public. L'entier de la procédure s'est déroulée publiquement. En particulier, la présidente de la Cour d'assises a lu le verdict du jury sur la culpabilité vers 21 heures, a fixé la reprise de l'audience à 23 heures pour le réquisitoire et les plaidoiries sur la peine. Il apparaît donc que quiconque était intéressé par l'affaire pouvait en suivre le déroulement et avait la faculté d'y assister jusqu'au prononcé de l'arrêt, à l'instar des parties. La lecture du prononcé après 4 heures du matin présente certes un caractère exceptionnel, mais qui ne saurait être apprécié comme une entrave rédhibitoire du point de vue du prononcé public. Il importe surtout sous l'angle des garanties constitutionnelles et conventionnelles invoquées que tout tiers intéressé ait pu assister à la lecture du prononcé s'il le souhaitait. Par conséquent, le grief est infondé.
4. Le recourant se plaint de ce que le repentir sincère a été nié arbitrairement.
Pour l'essentiel, les critiques du recourant reviennent à mettre en cause l'application de l'art. 64 al. 7 CP relatif à la circonstance atténuante du repentir sincère. Or, il ne suffit pas de parler d'application arbitraire d'une disposition du Code pénal pour transformer une question de droit fédéral en un problème de rang constitutionnel. La norme pénale mentionnée ressortit au droit fédéral et ne peut faire l'objet d'un recours de droit public (supra, consid. 1.1). Au surplus, le recourant n'établit pas qu'un fait pertinent pour l'art. 64 al. 7 CP aurait arbitrairement été constaté, écarté ou omis. Il se borne à émettre des remarques au caractère purement appellatoire, lesquelles sont irrecevables (supra, consid. 1.2).
Pour l'essentiel, les critiques du recourant reviennent à mettre en cause l'application de l'art. 64 al. 7 CP relatif à la circonstance atténuante du repentir sincère. Or, il ne suffit pas de parler d'application arbitraire d'une disposition du Code pénal pour transformer une question de droit fédéral en un problème de rang constitutionnel. La norme pénale mentionnée ressortit au droit fédéral et ne peut faire l'objet d'un recours de droit public (supra, consid. 1.1). Au surplus, le recourant n'établit pas qu'un fait pertinent pour l'art. 64 al. 7 CP aurait arbitrairement été constaté, écarté ou omis. Il se borne à émettre des remarques au caractère purement appellatoire, lesquelles sont irrecevables (supra, consid. 1.2).
5. Le recourant considère qu'il est arbitraire de l'avoir condamné à une créance compensatrice, d'un montant qui ne correspond selon lui à rien.
Dans la mesure où la critique du recourant revient à contester l'application de l'art. 59 ch. 2 al. 1 CP, elle est irrecevable pour concerner une question de droit fédéral et non de droit constitutionnel (supra, consid. 1.1). Pour le reste, le recourant procède à une discussion appellatoire, dans laquelle il expose librement une version des faits qui ne correspond pas à celle retenue. Son argumentation est irrecevable (supra, consid. 1.2). Il ne démontre en particulier pas en quoi il était arbitraire de considérer comme cachée une bonne partie de ses bénéfices, son coaccusé Z._ ayant expliqué aux débats qu'il lui versait en Thaïlande la part du bénéfice lui revenant (cf. arrêt attaqué, p. 7).
Dans la mesure où la critique du recourant revient à contester l'application de l'art. 59 ch. 2 al. 1 CP, elle est irrecevable pour concerner une question de droit fédéral et non de droit constitutionnel (supra, consid. 1.1). Pour le reste, le recourant procède à une discussion appellatoire, dans laquelle il expose librement une version des faits qui ne correspond pas à celle retenue. Son argumentation est irrecevable (supra, consid. 1.2). Il ne démontre en particulier pas en quoi il était arbitraire de considérer comme cachée une bonne partie de ses bénéfices, son coaccusé Z._ ayant expliqué aux débats qu'il lui versait en Thaïlande la part du bénéfice lui revenant (cf. arrêt attaqué, p. 7).
6. Le recourant, qui a sollicité l'assistance judiciaire (art. 152 OJ), a suffisamment montré être dans le besoin et a soulevé une question digne d'intérêt à propos du déroulement horaire de la procédure devant la Cour d'assises. L'assistance judiciaire est donc accordée, de sorte qu'il n'est pas perçu de frais et qu'une indemnité réduite est allouée à son défenseur.
Par ces motifs, le Tribunal fédéral prononce:
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours de droit public est rejeté dans la mesure où il est recevable.
1. Le recours de droit public est rejeté dans la mesure où il est recevable.
2. La requête d'assistance judiciaire est admise.
2. La requête d'assistance judiciaire est admise.
3. Il n'est pas perçu de frais.
3. Il n'est pas perçu de frais.
4. La Caisse du Tribunal fédéral versera à Me Yves Nidegger, mandataire du recourant, une indemnité de 1'500 francs.
4. La Caisse du Tribunal fédéral versera à Me Yves Nidegger, mandataire du recourant, une indemnité de 1'500 francs.
5. Le présent arrêt est communiqué en copie au mandataire du recourant, au Procureur général du canton de Genève et à la Cour de cassation genevoise.
Lausanne, le 25 novembre 2004
Au nom de la Cour de cassation pénale
du Tribunal fédéral suisse
Le président: Le greffier: