Faits: Faits: A. R._ est architecte indépendant. Le 16 juillet 1986, il a constitué la Société X._ SA (ci-après: la Société X._) dont il était l'unique actionnaire. La Banque Y._ (ci-après: la Banque) a alors accordé à la Société X._ une ligne de crédit de 12'500'000 fr. Celle-ci a acquis, le 13 août 1986, une parcelle à Z._ pour un montant de 11'500'000 fr. Le 15 août 1986, R._ a signé un acte de cautionnement solidaire pour le remboursement de toutes les créances de la Banque à l'encontre de la Société X._ à concurrence de 12'500'000 fr. La promotion n'ayant pas pu démarrer, la Banque a requis, en novembre 1994, la faillite de la Société X._ qui a été prononcée le 6 septembre 1995. Parallèlement, la Banque a engagé des poursuites à l'encontre de R._, sur la base du cautionnement, pour un montant de 12'500'000 fr. plus intérêts. Pour mettre fin aux différents litiges qui les opposaient, R._ et la Banque ont signé une convention en date du 17 juillet 1997. Aux termes des articles 1 et 2, R._ reconnaissait que l'acte de cautionnement solidaire du 15 août 1986 était valable et qu'en vertu de ce cautionnement il était débiteur de la Banque d'un montant de 12'500'000 fr. L'article 4 prévoyait que R._ s'engageait à verser à la Banque, au plus tard le 15 août 1997, 1'000'000 fr. faute de quoi la totalité de la dette deviendrait exigible. Selon l'article 5, R._ devait céder à la Banque, au moment de la signature de la convention, une créance de 3'081'214.43 FF plus intérêts admise dans le cadre de la liquidation judiciaire de la Société C._. Les articles 7 et 9 disposaient que R._ s'engageait à transférer la propriété de terrains sis en France à la Banque pour un montant fixé forfaitairement à la différence entre la somme de 1'000'000 fr. et la valeur de sa créance dans la liquidation judiciaire de la Société C._. Lorsque les opérations prévues aux articles 4, 5 et 7 auraient été effectuées, l'article 10 prévoyait que la dette de R._ à l'égard de la Banque serait ramenée à 10'000'000 fr. B. Dans sa déclaration pour l'impôt cantonal et communal 1998, R._ a déclaré un revenu imposable nul. Il a fait valoir, dans son compte d'exploitation, au titre de "pénalité Banque Y._ pour société X._", une charge de 1'000'000 fr. Sur réquisition de l'autorité de taxation, il lui a remis une copie de la convention du 17 juillet 1997 et de l'avis de crédit de 1'000'000 fr. attestant du versement du 15 août 1997. Le 7 décembre 1999, l'Administration fiscale cantonale du canton de Genève (ci-après: l'Administration fiscale cantonale) a fait parvenir un bordereau à R._. Le revenu imposable se montait à 876'108 fr. et la fortune était nulle. Le montant d'impôt était de 285'787.65 fr. Ladite Administration n'a notamment pas admis le poste relatif à la "pénalité" de 1'000'000 fr. versée à la Banque et a, en outre, repris un montant de 500'000 fr. à titre d'abandon de créance de la part de la Banque. Elle a confirmé cette taxation dans une décision sur réclamation du 6 juin 2001 estimant que les 1'000'000 fr. constituaient un remboursement de dette qui n'était pas déductible et que la reprise de 500'000 fr. au titre d'abandon de créance était justifiée sur le fond, bien qu'inférieure à ce qu'elle aurait dû être à cause d'une erreur de transcription. La Commission cantonale de recours en matière d'impôts du canton de Genève (ci-après: la Commission de recours) a admis le recours de R._, portant sur les impôts cantonal et communal de la période fiscale 1998, le 15 mai 2003 - elle l'a rejeté relativement à un grief portant sur la période fiscale 1999; ce grief n'a pas été soulevé devant le Tribunal administratif -. Elle a estimé que la dette issue du cautionnement solidaire ne figurait pas dans le bilan de promotion, ni dans l'état des dettes de la déclaration d'impôt. Si l'Administration fiscale cantonale voulait se prévaloir d'une dette de R._ à l'égard de la Banque, elle aurait dû prendre en considération celle-ci et l'appauvrissement en résultant, dans le compte de pertes et profits, soit 12'500'000 fr. La Commission de recours a également considéré que le versement de 1'000'000 fr. devait être accepté en déduction au titre de frais généraux liés à l'exploitation de l'activité commerciale du contribuable. La Commission cantonale de recours en matière d'impôts du canton de Genève (ci-après: la Commission de recours) a admis le recours de R._, portant sur les impôts cantonal et communal de la période fiscale 1998, le 15 mai 2003 - elle l'a rejeté relativement à un grief portant sur la période fiscale 1999; ce grief n'a pas été soulevé devant le Tribunal administratif -. Elle a estimé que la dette issue du cautionnement solidaire ne figurait pas dans le bilan de promotion, ni dans l'état des dettes de la déclaration d'impôt. Si l'Administration fiscale cantonale voulait se prévaloir d'une dette de R._ à l'égard de la Banque, elle aurait dû prendre en considération celle-ci et l'appauvrissement en résultant, dans le compte de pertes et profits, soit 12'500'000 fr. La Commission de recours a également considéré que le versement de 1'000'000 fr. devait être accepté en déduction au titre de frais généraux liés à l'exploitation de l'activité commerciale du contribuable. C. Par arrêt du 9 mars 2004, le Tribunal administratif a admis le recours de l'Administration fiscale cantonale, annulé la décision de la Commission de recours du 15 mai 2003 et rétabli celle de ladite Administration du 6 juin 2001. Il a estimé que la convention contenait une reconnaissance de dette puis une remise de dette. En 1997, R._ s'était acquitté auprès de la Banque d'un paiement de 2'000'000 fr. (1'000'000 fr. + le transfert de propriété des terrains + la cession de créance dans la liquidation judiciaire) dans les délais prévus. La dette de 12'500'000 fr. a alors été ramenée à 10'000'000 fr. La Banque aurait ainsi abandonné une créance de 500'000 fr. qui constituerait un revenu imposable pour le débiteur. Ledit Tribunal a, en outre, jugé que le cautionnement était en lien direct avec l'activité commerciale de R._. Il fallait ainsi considérer que la perte résultant de ce cautionnement, soit le montant de 1'000'000 fr., faisait partie des frais généraux justifiés par l'usage commercial et qu'elle était donc déductible du revenu au titre de charge commerciale. Toutefois, ce paiement avait déjà été pris en compte dans le calcul permettant de déterminer le montant de l'abandon de créance consenti par la Banque. Il ne pouvait être admis une seconde fois en déduction du revenu. C. Par arrêt du 9 mars 2004, le Tribunal administratif a admis le recours de l'Administration fiscale cantonale, annulé la décision de la Commission de recours du 15 mai 2003 et rétabli celle de ladite Administration du 6 juin 2001. Il a estimé que la convention contenait une reconnaissance de dette puis une remise de dette. En 1997, R._ s'était acquitté auprès de la Banque d'un paiement de 2'000'000 fr. (1'000'000 fr. + le transfert de propriété des terrains + la cession de créance dans la liquidation judiciaire) dans les délais prévus. La dette de 12'500'000 fr. a alors été ramenée à 10'000'000 fr. La Banque aurait ainsi abandonné une créance de 500'000 fr. qui constituerait un revenu imposable pour le débiteur. Ledit Tribunal a, en outre, jugé que le cautionnement était en lien direct avec l'activité commerciale de R._. Il fallait ainsi considérer que la perte résultant de ce cautionnement, soit le montant de 1'000'000 fr., faisait partie des frais généraux justifiés par l'usage commercial et qu'elle était donc déductible du revenu au titre de charge commerciale. Toutefois, ce paiement avait déjà été pris en compte dans le calcul permettant de déterminer le montant de l'abandon de créance consenti par la Banque. Il ne pouvait être admis une seconde fois en déduction du revenu. D. Agissant par la voie du recours de droit public, R._ demande au Tribunal fédéral, sous suite de frais et dépens, d'annuler l'arrêt du Tribunal administratif du 9 mars 2004. Selon le recourant, en jugeant qu'il avait bénéficié d'une remise de dette et que cette remise constituait un revenu imposable, le Tribunal administratif n'a pas tenu compte du fait qu'il s'agissait d'une dette de cautionnement et a fait abstraction de sa comptabilité. En outre, le montant de 1'000'000 fr. versé à la Banque ferait partie des frais généraux justifiés par l'usage commercial et, dès lors, ne pourrait pas être ajouté au bénéfice imposable. Il invoque la violation des principes de l'interdiction de l'arbitraire (art. 9 Cst.), de la capacité contributive (art. 127 al. 2 Cst.) et de la garantie de la propriété (art. 26 Cst.). Sans présenter d'observations, le Tribunal administratif déclare persister dans les termes et conclusions de son arrêt. L'Administration fiscale cantonale conclut au rejet du recours avec suite de frais.